[LAD] Jack ring buffer (again)
len at ovenwerks.net
Sat May 14 13:26:38 UTC 2016
On Sat, 14 May 2016, Will Godfrey wrote:
> While I understand that generally you can't be certain of writing or reading
> all bytes in a block of data in one call, what about the specific case where
> you *always* read and write the same number of bytes and the buffer is an exact
> multiple of this size.
> e.g data block is 5 bytes & buffer size is 75 bytes.
I don't think it matters... That is, I think the buffer could be 16bytes
and you only use 3 bytes at a time (ie. MIDI) In general you can know how
many bytes are available on the read end, and choose not to read untill
there are at least three bytes. Then only read three bytes at a time...
checking for at least three each time. (or whatever other size read you
wish, audio is two bytes for 16bit, 3 for 24bit and 4 for 32bit Float, if
you really want to do non-RT audio)
Checking for wrap around is the libs chore. I have not had any missing
info in my projects and never worried about buffer size (besides too
small) or size of read/data chunk in relation to size.
More information about the Linux-audio-dev