I see that the buffer allocated is 22050 bytes (and not 22052 bytes). Yes the hardware supports buffers which are not multiple of period size.
Can I forcefully set my buffer size to 22052 bytes and allocate using snd_pcm_lib_malloc_pages and try? Will that help?
Thanks, Harsha.
-----Original Message----- From: Clemens Ladisch [mailto:clemens@ladisch.de] Sent: Monday, August 10, 2009 5:21 PM To: Harsha, Priya Cc: alsa-devel@alsa-project.org Subject: Re: [alsa-devel] issue at 44.1 Khz capturing
Harsha, Priya wrote:
... But when I printed out the values passed from the pointer function, they are exactly at the intervals of 5513 bytes.
What is the exact buffer size? Half a second would be 22050 bytes (frames?), while four of your periods are 22052 bytes. Does your hardware support buffers whose length is not an integer multiple of the period size?
Best regards, Clemens