[alsa-devel] regarding setting of fragment size in usbaudio driver

Clemens Ladisch clemens at ladisch.de
Mon Dec 13 14:38:24 CET 2010


(please don't top-post)

Amit Nagal wrote:
> 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 (
> 16k)
>  or app_request_size(4k) ?

If, when read() is called, there is enough data in the buffer, it will
return that data and return immediately.  Otherwise, it will wait for
the hardware to reach the next period boundary (in OSS: fragment
boundary) and try again.

If you want to have shorter waits, use lower fragment sizes.


Regards,
Clemens


More information about the Alsa-devel mailing list