[...]
The bottom level packets are sent at fixed time
intervals (obviously,
corresponding to the frame clock of the bus), but these packets are tiny
and you get millions of them per second. A useful packet of audio data
will be made up of a bunch of these.
According to the mLAN spec you need a buffer of around ~250us (depending
on format) to collate the packets.
Still there is no guarantee that 10 packets always have exactly the same
number of samples. You say the mLAN spec says you need a buffer of
around ~250us. Note that is doesn't say a buffer of a number of frames.
The bottom line is these packets are sent at regular time intervals, not
at a fixed number of frames and thus JACK should support this by
allowing non-const (frames) callbacks IMHO.
--ms