[LAU] Advice: solution to hookk up several USB-MIDI devices
David Kastrup
dak at gnu.org
Thu Jul 26 18:03:43 CEST 2018
Clemens Ladisch <clemens at ladisch.de> writes:
> David Kastrup wrote:
>> If you want to hook up several ones of those via a USB hub, make sure
>> that this hub has a separate "Transaction translator" per port so that
>> a USB1.1 transaction from one Midi interface does not keep other
>> transactions from happening: the 12Mbps limitation should only be per
>> Midi interface, not per aggregating hub which can talk at 480Mbps to
>> the computer.
>
> MIDI's speed of 0.03 Mbps is less than one percent of the USB 1.1 limit;
> the lack of a transaction translator does not matter at all (unless
> other, high-speed USB devices are connected to the hub).
If we are aggregating 4 4-port interfaces used in two directions (USB
rates are half-duplex), we need 32 times the bandwidth. So we are
already at 1Mbps of raw data rate without any packaging. 90% of the
full-speed bandwidth can be reserved for isochronous transfers which
MIDI isn't.
Queuing theory tells us that independent events close to filling up a
given bandwidth tend to stack up, so in what order is a single
transaction translator going to schedule transfers? What will be the
effect on jitter? And events created by arrangers are not actually
independent: time codes and chord notes and drums are coming out
back-to-back.
You'll be getting to "nobody will ever need more than 640kByte"
territory sooner than you'll think...
--
David Kastrup
More information about the Linux-audio-user
mailing list