[alsa-devel] On non-rewindability of resamplers
Raymond Yau
superquad.vortex2 at gmail.com
Tue Apr 29 18:01:10 CEST 2014
>
>
> On most sound cards, PulseAudio uses timer-based scheduling and thus is
not subject to any period-size limitations. As far as I can see, snd_ymfpci
does not include SNDRV_PCM_INFO_BATCH, and thus will be used in this mode.
In addition, it has an implementation of snd_ymfpci_playback_pointer that
seems to look at the hardware, which is good. So effective period times
less than 5 ms should work on this card.
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/log/?qt=grep&q=period+wakeup
Is there any reason to use timer scheduling for the sound card which cannot
disable period wake up ?
The sound cards are still wake up by period and the timer
As the DSP of ymfpci can mix up to 32 voices of different sample rate,
mono/stereo , u8/s16 .
The driver just setup the card's timer to increase the fake hw_ptr on 5ms
interval by (48000Hz * 5ms) 240 samples
Unlike most sound cards which periods_min equal to 2, the periods_min of
snd_ymfpci is 3
As the fake hw_ptr increase by 240 samples on 5 ms interval, I think it
is a bad idea to allow any application to perform rewind
More information about the Alsa-devel
mailing list