On Thu, 18.06.09 20:12, Jussi Laako (ju...@sonarnerd.net) wrote: > > Lennart Poettering wrote: > > PA does not use fixed block sizes. We always use the largest chunk > > sizes the applications pass to us and break them up into smaller > > pieces only when really necessary. We really try our best not having > > to touch/convert/split/copy user supplied PCM data if we don't have > > to. > > This is quite different from the goals of JACK, where the purpose is to > minimize input -> output latency and thus use as small as possible blocks.
Uh. No. That's bogus. If an application can send PA data in larger blocks then we are happy about it and take it. Of course, if the application needs low latencies then it shouldn't pass huge blocks to us, but instead many smaller ones. The block size the app chooses is entirely up to it, and it may actually set the size of every block differently at free will. The general rule for block sizes is to choose them as large as possible however, as small as necessary and. For example, When you play data from a file source the block size can safely be chosen very large, while at the same time DSP data that is passed through needs much smaller block sizes. In PA I generally try to cater both for lower latencies and for minimal CPU usage/wakeups. How to choose buffer sizes highly depends on the application accessing PA so we do our best to dynamically adjust to it and try to accept whatever the apps give us. Even when that means that one app passes us huge blocks while another one passes us small ones at the same time. The big difference between JACK and PA here is that in JACK the transfer of data is mostly done synchronously while in PA we do that asynchronously. Which is the case because we need to make sure that no misbheaving client can easily trigger dropouts or even make audio stop entirely -- which is something much less important for JACK. Lennart -- Lennart Poettering Red Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4 _______________________________________________ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev