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.
Typically there's:
[input] --> [processing] --> [output]
[generation] --^
Where input is typically live sound or MIDI, processing can be effects
processing or similar (guitar distortion or such) while generator can be
a softsynth, beatbox or something similar. Both have to naturally run
precisely in-sync. While minimizing the latency from input to output is
crucial for playing and has to run in-sync with all the rest of the
softsynths. Playing a piano with couple of notes lag before you hear the
sound is annoying...
- Jussi