Hello, I am investigating problems I'm having with recording over long periods. I'm using a Layla3G and tested various ALSA versions including 1.0.14 and 1.0.16 on different machines. I've noticed that when I open the first pair of subdevices, my request for 1000ms buffer size is handled differently to other devices: $ ./test_buffers "hw:Layla3G,0,0" 1000 buffer_size=16384 period_size=128 $ ./test_buffers "hw:Layla3G,0,2" 1000 buffer_size=32768 period_size=256 $ ./test_buffers "hw:Layla3G,0,4" 1000 buffer_size=32768 period_size=256 $ ./test_buffers "hw:Layla3G,0,6" 1000 buffer_size=32768 period_size=256 If I try other buffer sizes, I can see is a limit to buffer size of 16384 samples on the ,0 subdevice, which is also affecting the chosen period size. But only on the first subdevice. Is there a reason, or is this a bug? Also, there seem to be failures at certain buffer sizes: $ ./test_buffers "hw:Layla3G,0,2" 429 buffer_size=18912 period_size=96 $ ./test_buffers "hw:Layla3G,0,2" 430 set_buffer_time_near: Invalid argument $ ./test_buffers "hw:Layla3G,0,2" 431 buffer_size=19008 period_size=96 Can anyone explain to me what's going on here, or is this also a bug? The overall problem I'm investigating is snd_pcm_readi() returning incomplete buffers after running for long periods until another snd_pcm_prepare(). It seems possible that this is related. Any help is greatly appreciated. Thanks, Mark