[alsa-devel] ALSA DMIX support without MMAP ?
perex at perex.cz
Thu Jan 14 11:37:10 CET 2010
On Thu, 14 Jan 2010, ANISH KUMAR wrote:
>> mmap is supported by the Samsung drivers.
> Thanks for this information which i overlooked.
>> This looks like the dmix data rates are getting out of sync with what
>> the hardware is doing. Enabling CONFIG_SND_PCM_XRUN_DEBUG will produce
>> more diagnostic information from the driver side
> I got the problem and after doing the changes DMIX plugin is working
> very fine. As you know XRUN was happening and this happening in
> snd_pcm_update_hw_ptr_post function. This happened because
> stop_threshold is increased suddenly(Is it done by dmix? If yes then why
> ?) ?????? In normal condtions this would have been fine but in my code i
> was multiplying it by some amount causing it to wrap
> around(stop_threshold=0 );Causing XRUN.So i just removed this
> multiplying factor.
For dmix, the stop_threshold should be equal to boundary value, thus XRUN
check should never be true. If you got xrun with dmix, something is wrong.
> One more Rate conversion query: ./alsa_aplay -v
> -D"plug:'dmix:RATE=44100'" bond.wav Playing WAVE 'bond.wav' : Unsigned 8
> bit, Rate 11025 Hz, Mono Plug PCM: Rate conversion PCM (44100,
> sformat=U8) As you can see bond.wav is sampled at 11025k but when i am
> playing with Plug PCM there is some noise in the song why????Is rate
> conversion algoritm not able to resample it properly?
The default linear resampler is not very good quality. You may use some
sox resamplers from the alsa-plugins package, but they're more CPU
intensive. Check google.
Jaroslav Kysela <perex at perex.cz>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.
More information about the Alsa-devel