Driver recovers from underrun in plain ALSA mode, but not in OSS emulation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm stress-testing my sound driver using mplayer to see how it handles underrun
during jumps in CPU loads.  That is, I start playing a movie, and then I cause
the CPU to jump to 100%, and then I drop the CPU back to normal.  During the
times when the CPU is at 100%, I get underruns and other problems.  That's normal.

When I tell mplayer to use the ALSA API, my driver recovers nicely from an
underrun situation when the CPU load drops back to normal.  However, if I tell
mplayer to use the OSS API (i.e. ALSA's OSS emulation), it does not recover from
an underrun situation.  The audio and video playback remains distorted.  I need
to tell mplayer to pause and resume to get it to recover.

Is this normal for ALSA drivers?  Before I try to debug this problem the hard
way, I want to know if this could be the result of a common programming mistake
in my driver or something like similar.

(FYI, the source code for my driver is in sound/soc/fsl/)

-- 
Timur Tabi
Linux kernel developer at Freescale
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux