Re: [LAD] Allocating 96 but reading 16 (multple times)

From: David Olofson <david@email-addr-hidden>
Date: Wed Feb 16 2011 - 02:11:18 EET

On Wednesday 16 February 2011, at 00.33.49, Jens M Andreasen
<jens.andreasen@email-addr-hidden> wrote:
[...]
> The same effect can be observed with 64 frames and 16 appears to be the
> optimal value in the loop.
[...]

To quick to post there!

This could mean that you simply have too little buffering between input and
output. Does your application actually define that? (With read()/write() APIs,
you usually have to do this by "pre-buffering" on the output before entering
the actual processing loop.)

The reason why it works better with 16 frames is probably that the driver
starts by waiting for your write()s to fill upp the output buffer, thus adding
one DMA buffer's worth of extra buffering between the input and output.

-- 
//David Olofson - Consultant, Developer, Artist, Open Source Advocate
.--- Games, examples, libraries, scripting, sound, music, graphics ---.
|   http://consulting.olofson.net          http://olofsonarcade.com   |
'---------------------------------------------------------------------'
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Wed Feb 16 04:15:03 2011

This archive was generated by hypermail 2.1.8 : Wed Feb 16 2011 - 04:15:03 EET