On Fri, 11 Jul 2003, Carlo Wood wrote: >> Total number of fragments allocated for buffering: 64 > Well, you have 64 fragments - I only 2.
Yup, that's because I'm using the snd-ens1371 driver (maximum interrupt frequency ~= period size, is driver/card dependent). >> #fragments, #bytes: 13, 13472 >> Read 1024 bytes. > You didn't really test it when you stop here. > 13472 < 64 * 1024. I increased the size of the loop and eventually managed to reproduce the same behaviour you are seeing. It happens somewhere around 100-200th iteration. Hmm, looks strange. I manage to workaround this by change the test code to: --cut-- printf("Read %d bytes.\n", rlen); } else { static struct timespec naptime = { 0, 100000000 }; nanosleep(&naptime, 0); } --cut-- ... hmm, anyways, it's 3:30am already here, so I'll have to call it a day now. Good luck in bug hunting, hopefully you can find out the cause. > You need to wait till you get an overrun (xrun?). Yups, xruns is a common (ALSA) term for underruns and overruns. -- http://www.eca.cx Audio software for Linux! ------------------------------------------------------- This SF.Net email sponsored by: Parasoft Error proof Web apps, automate testing & more. Download & eval WebKing and get a free book. www.parasoft.com/bulletproofapps1 _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel