Hi everyone! I'm writing a DVD player application based on the GStreamer media framework (www.gstreamer.net), and, of course, ALSA sound output should be supported. In particular I'm trying to use the iec958 plugin to output AC3 sound directly to an external receiver. In principle, this works ok, except for a little but annoying detail: when the machine is under even moderate load, I start hearing short interruptions in the sound.
Some investigation of the problem makes me thing it doesn't lie in my code, because I can trigger it as well with pure vanilla ac3dec -C. All I need is a constant moderate load, like that generated by the DVD reading process (in my pretty old AMD Athlon 700, this causes a load of about 25%) and then suddenly creating a load peak, which I achieve by quickly moving a window on my desktop. Sound output interrupts suddenly, some times even for about half a second. Of course, the first thing I thought was that it had something to do with data starvation. This doesn't seem to be the case either. Specially, it called my attention that the API isn't reporting any buffer underruns. ac3dec doesn't either show any messages when the problem shows up. Additionally, putting the corresponding thread or process in SCHED_FIFO mode doesn't either help. I could, for example, reproduce the problem while running ac3dec in SCHED_FIFO policy, priority 99 As an additional note, this only seems to happen when using plug:iec958. Software decoding the AC3 sound and plying through ALSA, works flawlessly, despite of the fact that the machine load is higher. I'm using kernel 2.6.5 with the included version of ALSA. My alsa library is 1.0.3b, from the Debian package, and I'm testing with a SBLive! card attached to the receiver with an optical link through a simple third party SBLive! add-on. I have seen the same problem with 2.4 kernels, together with self-compiled recent (post 1.0) ALSA versions. Any clue? M. S. -- Martin Soto <[EMAIL PROTECTED]> ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel