On Sat, Apr 07, 2012 at 03:48:55PM -0400, S. Massy wrote: > On Fri, Apr 06, 2012 at 05:00:12PM -1000, Joel Roth wrote: > > Perhaps we should allow for two delays, > > before and after. Let me know what delays work for you. > > > I had the same thought. I tried $delay/2 before and after, which mostly > worked, but would still sometimes crash; so I now have 2/3 of $delay > before and 1/3 after, which seems to be a winning combination so far. I > guess I could have tried just moving the sleeper before execution of > $coderef->(), but I feared it might cause problems with seeking. So far, > though, the 2/3 1/3 compromise seems to be a win/win. I also increased > fading resolution to 50 steps/second without immediately obvious > deleterious side-effects. Time will tell... > I don't think anybody envisioned such a complex use-case at the > time the ECI was designed. The use-cases were mostly simple batch > processing or live DSP, I don't think anyone imagined a mad-scientist > would come and make a DAW out of ecasound! :) I guess I wasn't around then (mad, yes, scientist ??) > > Until we get some logging, we are stuck with this > > sort of trial-and-error testing, which is a PITA. > The more these ecasound issues come up, the more I become convinced of > that. It gets difficult to determine which IAM commands interract to > cause crashes. > > I'd be interested to know if sending commands > > via socket is an atomic action. If not, perhaps we > > need to a create a queue or use a semaphore > > to avoid conflicts. > In the end, that probably would be the easiest solution: feed ecasound > piecemeal. Thinking some more, we would certainly see errors if ECI commands got garbled somehow. I'm not sure what you mean by 'piecemeal', already only one command goes at a time, and I'm sure Ecasound buffers them. Perhaps we could experiment with some small delays after every command. We do have one other--perhaps minor--way to help troubleshoot. While I believe both Audio::Ecasound and Net-ECI both are fundamentally the same under the hood, it can be worth switching between them to see if the same error patterns appear (-l and -n flags). Best, > Cheers, > S.M. > -- Joel Roth