USB Hub-A-Dub-Dub: Weird Edge Cases Are My Ruin  Lewin Day | amznusa.com

The Universal Serial Bus. The one bus to rule them all.  It brought peace and stability to the world of computer peripherals. No more would Apple and PC users have to buy their own special keyboards, mice, and printers. No more would computers sprout different ports for different types of hardware. USB was fast enough and good enough for just about everything you’d ever want to plug in to a computer.

We mostly think of USB devices as being plug-and-play; that you can just hook them up and they’ll work as intended. Fiddle around around with some edge cases, though, and you might quickly learn that’s not the case. That’s just what I found when I started running complicated livestreams from a laptop…

Fool To Try

You’d think an i7 with 16 GB of RAM would be well equipped to handle some audio software, 40 plugins, and a couple of webcams.

When I’m not writing 5,000 words a day as the most forgettable journalist online, I’m running a musical livestream on Twitch. I invented Drumbeats and Dicerollsa show in which I roll dice in order to write music in Ableton Live. The dice choose the instruments and sometimes even the notes, and then it’s up to me to turn all that into a coherent song.

The concept is simple enough, but on the technical side, it gets a little complicated. Video-wise, I use two webcams—one for me, one to film the dice as I roll them. That’s two USB devices right there. Then I have my mouse and keyboard, both running via a single Logitech wireless dongle. Finally, I have my Steinberg UR22 audio interface—basically a soundcard in an external box that has musician-friendly hookups for professional-grade mics and speakers.

It all adds up to four USB devices in total, all with USB-A ports. That doesn’t sound like much. Only, since my desktop was stolen, I only have a laptop to run the whole show. That presented an immediate hurdle, as my laptop only has two USB-A ports on board, plus a USB-C port on the rear.

I figured I’d hook up a USB-C hub with a few extra ports, and along with my monitor’s additional USB hub, I’d be all good. Trouble struck as I first attempted to stream in this way. Both webcams worked, with one of them even running through a separate NVIDIA Broadcast tool to do some background removal. However, the audio was problematic. Every ten to twenty seconds or so, the sound would drop out or stutter. It was incredibly jarring for a music stream.

Not So Simple

My Razer Kiyo webcam, complete with aftermarket privacy shield.

I was frustrated. This was a problem I’d never had before. In normal life, I’d always just plugged whatever device into whatever USB port with no problems. Even when I’d chained hubs off hubs, I’d seen little issue, even with high-bandwidth devices like HD webcams or portable hard drives. And yet, here I stood. I was plugging, but the gear wasn’t playing.

At first, I figured I just had to tweak my software setup. I was using the Steinberg UR-22 via the Windows Wave drivers in Ableton. I figured if I just used the professional-grade ASIO sound driver instead, my stuttering problem would go away. However, then I found that my streaming software couldn’t naturally capture audio from this device. This necessitated pulling in the Reastream plugin to truck audio from Ableton into Streamlabs, but that wasn’t so hard. I tried a test recording offline, and it all worked great. No stutters, no problems. Only, as soon as I tried streaming live… the stuttering was back, in a big way.

My Logitech C920E webcam. Forgive the beige walls.

For my second stream, I switched things up. I ended up using a USB headset plugged right into my laptop’s native ports for audio, back with the Windows drivers, and kept the Steinberg UR-22 just for recording vocals into the machine. This worked great, with no stuttering on playback. But I had a new problem—only one of my webcams would work at a time. Oh, and the mic feed from the Steinberg was dropping out randomly, ruining my vocal recordings.

Looking at the mess of cables and daisy-chained hubs in front of me, I realized I had to simplify. I put the Steinberg device on the most direct hookup, straight to the laptop’s USB-A port, and set it back up in ASIO mode. Then I connected both webcams to a Lenovo docking station, hooked up by USB-C. I eliminated any extra hubs, ditched the USB headset, and had the most critical device—the Steinberg—connected by a single cable. This had to solve it, right?

My Steinberg UR22 interface, which has never faltered at a gig—but flatly refuses to stop stuttering when I’m livestreaming.

Well, the webcams were now humming along nicely, probably because they now had enough power from the docking station instead of an unpowered hub. But were all the problems fixed? Alas, no. Try as I might, the Steinberg device would stutter every few seconds or so. I double-checked that I didn’t have a CPU, RAM, or hard drive issue—everything came back clear. But for some reason, two webcams and an ASIO device was making the audio choke.

Brick Walls

Hours more troubleshooting rushed by. After all this, I’ve come to findings that confound me as an engineer. I can run two HD webcams and a USB headset with no dropouts, just using basic Windows audio drivers. And yet, trying to use the Steinberg audio interface, it just falters. Even with the webcams degraded to ultra low resolution! This interface has seen me through thick and thin, but it just won’t work under these conditions. Despite the fact it’s using the same sample rate as the USB headset, and should surely be using a similar amount of bandwidth. Regardless, its driver tells me there’s a USB problem and I can’t seem to solve it.

This error plagues me.

The one thing that itches my brain is that the stuttering seems to only happen when I’m streaming live online. When I’m not streaming video, the Steinberg happily operates as rock-solid as the cheap headset. The thing is, my network connection is via a PCI-Express WiFi chip baked into the laptop, so… that’s not even a USB thing.

When I started writing this a week ago, I thought I’d have solved it by now. I’d have a nice clear answer about what went wrong and how I figured it all out. That didn’t come to pass. Part of me wants to rush out and build a desktop PC with a real amount of ports to see if eliminating hubs and nonsense solves my problems. The other part of me wants to redouble my efforts to track down the issue with every last USB inspection utility out there. I’ll probably do the latter and update this article in due course.

Instead of a neat solution, all I’m left with is confusion and a cautionary tale. Just because you can plug a bunch of USB devices together, it doesn’t mean they’ll all work properly and play nicely together. Our computers are more complicated than we expect, it’s just they’re better at hiding it from us these days.

 

This articles is written by : Fady Askharoun Samy Askharoun

All Rights Reserved to Amznusa www.amznusa.com

Why Amznusa?

AMZNUSA is a dynamic website that focuses on three primary categories: Technology, e-commerce and cryptocurrency news. It provides users with the latest updates and insights into online retail trends and the rapidly evolving world of digital currencies, helping visitors stay informed about both markets.