DSP problem in Fedora

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

 



Hi all,

Some background:

We have a talking head here, the audio code works well on Redhat 7.2 linux but on upgrade to Fedora Core 1, the audio no longer works well.

The symptoms:
	In the inner loop of the animate routine code a call is made to
PlaySamples. It is assumed that this returns and as the audio plays, the
graphics is synced with the remaining audio samples as they play out.

In RedHat 7.2, the underlying write to the audio device will take the samples, they get stored in the kernel device driver or the device's buffer and the write returns immediately. In Fedora (or the new kernel used in Fedora), the write will not return until the audio has finished (or the last small buffers of data have been sent to the device's buffer). Obviously, the graphics of a Talking Head cannot be synced since the write to /dev/dsp and hence the PlaySamples does not return!!!
If the device is opened in O_NDELAY or O_NONBLOCK mode (or via an ioctl it is made NON BLOCKING - SNDCTL_DSP_NONBLOCK ) then the Fedora device driver seems to return straight away (i.e it does not block) BUT seems to only play the first device buffer's worth of data regardless of how much is actually written to it. Again sync'ing is not possible when this happens....


We have tried older vanilla kernels as well as ALSA with no luck. This code was fine on RH7.2

Does anyone have an idea on what has changed from RH7.2 to FC1 that could be affecting this ? Or how to solve this problem ?


Thanks Serge



[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux