Hi,
I can't post the source code, but I can post the algorithm: We have
input and output synched. The inputs are set to non-blocking behavior
while the outputs are not. The loop grabs input, and does any
processing it needs to. After that, it detects if any of the streams
are behind more than a period, and snd_pcm_forwards them a period
length if so. It then writes the waiting buffer to the blocking
outputs. readi/writei is the mechanism used. I have tried also
grabbing the readi input into a buffer and passing that immediately to
writei with no change in latency.
Thanks for your help,
Louis
do you have an
alternate explanation for louis' timing observations?
Apparently a different algorithm.
Louis, can we see your program?
Best regards,
Clemens