[alsa-devel] regarding setting of fragment size in usbaudio driver
helloin.amit at gmail.com
Mon Dec 13 10:56:41 CET 2010
Thanx for the reply .
Actually on my embedded target , i am not using arecord , but reading
from (/dev/dsp0) capture data .
i have 2 question :
i used SNDCTL_DSP_GETBLKSIZE ioctl to find the fragment size of driver
. i found it to be 16k .
1) now if the application reads 4k data from userspace , read call
will remain blocked for audio driver's fragment size usb data read (
or app_request_size(4k) ?
2)time taken for read(4k) = time_taken(fragment size read ) or
thanx & regards
On Mon, Dec 13, 2010 at 6:04 PM, Clemens Ladisch <clemens at ladisch.de> wrote:
> Amit Nagal wrote:
>> i am using a OSS based usbaudio application for usb audio streaming .
>> my usb audio device is capture only device .
>> i want to set the fragment size of usbaudio alsa driver to reduce
>> latency problem coming in my application .
>> currently even if my application reads 4k data from userspace , i
>> observed driver will buffer for 100 ms data ( period size data )= 16 k
>> at 44100 frquency
>> and after driver reads 16k data , read call will return with 4k data
>> . so read() call remains blocked for 100ms which is causing some
>> latency problem .
> There is no extra buffer in the driver.
> There seems to be something wrong with your algorithm.
> Does recording with the arecord tool work?
More information about the Alsa-devel