[alsa-devel] rawmidi virtual and long sysexes
Ryan C. Underwood
nemesis at icequake.net
Tue Dec 22 19:11:47 CET 2015
On Tue, Dec 22, 2015 at 06:51:47AM +0100, Clemens Ladisch wrote:
> Ryan C. Underwood wrote:
> >Basically, the rawmidi virtual plugin enforces a 256-byte limit on
> >events, and emits multiple events if e.g. a >256 byte sysex is
> >encountered.
>
> All sequencer clients have such a limit.
I was not objecting to a limit. I was questioning the utility of a
_hard-coded_ limit.
> >This does not seem to be documented behavior for
> >snd_seq_event_input(), nor is the fixed limit described anywhere.
>
> Yes, the documentation is lacking.
What's the best way to submit a documentation change, patch the docs
embedded in the code and mail that here?
> >Would it be better if the maximum event size could be configured
> >through params? That would avoid needing this clumsy workaround by
> >sequencer clients.
>
> Handling split messages cannot be avoided; the API is not
> capable of sending arbitrarily large messages.
So, the client writing to rawmidi has local knowledge about the
largest sysex he will generate. I only propose that alsa-lib be
willing to accept this local knowledge over its own hard-coded default
when sizing the event buffer. (For example, the device buffer size is
configurable by the sequencer client.)
Of course, I won't bother if such a patch would be rejected, and will
instead change the documentation.
--
Ryan C. Underwood, <nemesis at icequake.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 173 bytes
Desc: Digital signature
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20151222/739e66d3/attachment.sig>
More information about the Alsa-devel
mailing list