2

Roughly the opposite of a USB hub, made possible by the application-specific details.

I have a digital audio mixer that, in addition to the analog I/O, also offers 18 channels each direction on USB 2.0 as a "digital patchbay" of sorts.

I want to connect several different computers to it without using the analog inputs, and give each computer its own unique stereo pair in each direction. Is there a device that can go between and make that happen?

Requirements are:

  • 1 USB 2.0 host, to talk to the 18-channel sound card.
  • 2 to 9 USB devices, as copies of the sound card that the host sees, but with 2 channels each instead of 18, and whatever other changes that that requires to the descriptors.
  • Map/patch each USB device's channels to its own set of USB host channels with no overlap.

schematic

I didn't draw all 18 channels, but I think you get the idea. As drawn, there are 4 USB hosts, each controlling its own separate bus, none of which interact directly with each other. Just moving data from one bus to another.

Perhaps better from a functional standpoint than modifying a given set of descriptors, I could go into the mixer's settings and set the sound card to 2-channel mode which is known to work, and then clone it, so that each computer thinks it's connecting to the 2-channel mode of that card. Then set the mixer back to 18 channels on USB, while the go-between routes each odd-even pair to a different computer's 1-2.

If it makes a difference, this 18-channel sound card only supports 32-bit integer, little-endian (as if endian-ness matters for a direct passthrough), at either 48kHz or 44.1kHz to match the entire mixer's sample rate. The USB host doesn't get to choose; it just is what it is, based on the mixer's setting.

Does such a device exist?

  • Please link the mixer you are using. – Alphy13 Jun 30 at 18:16
  • @Alphy13 I don't know why it's needed. As far as this application is concerned, it's just an 18-channel USB sound card that I want to split into nine 2-channel sound cards. But here it is anyway: behringer.com/behringer/product?modelCode=P0BI8 – AaronD Jun 30 at 18:21
  • "Opposite of a USB hub" Audio drivers just dont work that way. The best a USB device can do is switch between computers. One computer can host a USB device over a network and your mixer may have this functionality already built in, but this is a software solution and not relevant to this site. – Alphy13 Jun 30 at 18:30
  • 1
    @Alphy13 This is Hardware Recs. I'm looking for a piece of hardware to be 9 independent 2-channel sound cards simultaneously, each with its own physical USB plug, and relay that information to/from an 18-channel sound card that is hosted by the thing that I'm looking for. Each device - the physical 18-channel card, and each of the logical 2-channel cards - is hosted by exactly one thing ever. No switching. – AaronD Jun 30 at 18:41
  • I dont think such a thing exits because of the limitations of USB. Look into PulseAudio or Virtual Audio Cable. They may make what you want possible. – Alphy13 Jul 1 at 16:39
0

Well the device is up to you, but something like this. Although your diagram implies USB interconnects, I don't think this is possible and it certainly won't be as easy.

You could use a full fledged computer, but maybe you could get away with a Raspberry Pi 4.

Plug USB sound card into computer/Pi4

Setup streaming over the network. FYI: The Pi4 has real gigabit ethernet should be plenty fast.

You could setup different channels on different TCP/IP ports and each computer just connects to the correct port and your done.

In windows you could try OBS studio, but I have never done this before my self so I don't have exact answers.

I know its done in linux all the time with PulseAudio and other standard linux components, but again I have never done this so I can't give you exact directions.

| improve this answer | |
  • I thought about doing that or something similar, even went so far as to find a lightweight-enough DAW-like environment that a Pi could plausibly keep up with it, but I'd really like a "pure" hardware solution if at all possible. (not really pure hardware as it will obviously have some kind of firmware on it, but you get the idea) – AaronD Oct 17 at 3:38
  • @AaronD All the USB sharing devices that I found were manual switch boxes and only shared between 2 PC. This is clearly not want you want. Even if there was a 2 for 1 you would have to have 19 of them adding crazy amounts of lag,headache and cost. My guess is the sound card is going to get confused by which host to listen to as far a command and control. If a Pi 4 4gb isn't enough then you will need a PC of some kind. – cybernard Oct 17 at 15:38
  • From a technical standpoint, I think the Pi can work. The amount of data really isn't all that much. I'd just rather have a standards-based plug-and-play thing that requires no software setup at all. Just plug in one of the 9 USB-device cords, and the new computer sees a standard 2-ch USB sound card. On the other end, that computer's audio stream appears on a unique odd/even pair in the DSP's 18-ch USB interface. – AaronD Oct 17 at 16:03
  • You also mentioned lag/latency, and while I don't expect very much of it from a second trip through the complete USB stack (PC host -> [embedded device -> embedded host] -> DSP device), there will be some. I wouldn't be surprised to see a latency compensation scheme in the PC host, so that it comes out of some USB speakers at the right time, but I doubt that it would account for the second trip through the stack. Maybe that's a problem, maybe not. – AaronD Oct 17 at 16:04
  • @AaronD My question is do you want a solution you can implement or keep searching forever. Network based audio servers exist and you can setup one up, probably in less than a week. I don't see any advantage at all to trying to do this via USB vs networking. Why is doing this over the network not a good solution for you? 24 port gigabit switch super easy to find and connect and should be plenty of bandwidth. – cybernard Oct 17 at 16:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.