[alsa-devel] Buffer size for ALSA USB PCM audio
    Alan Stern 
    stern at rowland.harvard.edu
       
    Wed Jul 24 16:41:43 CEST 2013
    
    
  
I have been studying the data_ep_set_params() function in
sound/usb/endpoint.c.  This is the routine that calculates the number
of samples and I/O requests to keep on the USB hardware queue for PCM
audio, based on the ALSA parameters.
It uses the PERIOD_BYTES parameter but not BUFFER_BYTES.  In simplified
terms (ignoring rounding, boundary cases, and other things), the number
of periods per buffer is fixed at 24 for recording and 1 for playback,
completely ignoring the user's setting.  If you look at the parameters
copied in snd_usb_hw_params() in sound/usb/pcm.c, you'll see what I
mean.
Is this really the intended behavior?  It doesn't seem right at all.
Alan Stern
    
    
More information about the Alsa-devel
mailing list