HDMI USB Capture device freezes during stream, help needed

T-Halen

New Member
Several times now, I've had my USB HDMI capture device "freeze" while streaming our church service. I've got a main PTZ camera, a portable (Mevo) camera, and the HDMI input coming via USB from the output of the presentation PC.

I would like to find a way to un-freeze this device while streaming via OBS. So far, the only way I know to fix it is to reboot the whole computer. Obviously that is not ideal.

My un-educated look at the log file from today show this line :
09:18:51.598: error: overread 8

Can anyone see any setting(s) that need to be changed to prevent this issue?
or
Can anyone suggest something to try while streaming that will reset this device?

Thanks!
 

Attachments

  • 2023-04-23 08-55-59.txt
    83 KB · Views: 46

AaronD

Active Member
Since it's USB, my first thought was to unplug it and plug it back in. That should get you a similar amount of time again, before it freezes again. But it also risks reordering the entire list of capture devices, so that all of them are messed up. So you'll want to try that when you don't need it to work RIGHT NOW, and you have time to troubleshoot and get it back to working again before you need it.

That's not a real solution, but if it can be made to not mess up everything else, it might get you going until you can replace that capture card.



I'd seriously look at an internal capture card to replace it, because USB has several problems. They're cheap, and they get you going quickly, but cheap also means cut corners, as you're finding out, and counterfeit or at least deceptive presentation.

I have 5 of them with USB 3 connectors, and they're sold as such, but it's actually a USB 2 chip inside, that must compress the video to squeeze it through USB 2 before it even gets to the computer. (MJPEG compression is simply a JPG of each frame as a still image, with no knowledge of the other frames; if you've seen the "fuzzies" in a JPG image, that's what it's doing to your video before it even leaves the capture card) One of those cards is in my home rig, with an HDMI camcorder, and the other 4 were at church and recently replaced with a 4-input internal card.

Those 4 USB captures were never in sync with each other, and always off by different amounts, so it was impossible to line them up once and leave it. And they needed to be rebooted with the computer to avoid freezing after several weeks, which itself turned out to be a challenge because this computer is stuck with its USB ports powered 24/7, even when it's otherwise shut down. (no jumper and no BIOS setting) An automotive relay for the internal power harness and a button box fixed that:
  • When the computer is running, the 12V rail (yellow wire) keeps the relay on.
  • When the computer turns itself off, the 12V rail naturally goes away, which causes the relay to drop out and kill the 5V standby power (purple wire), using it instead to light an LED in the button box.
  • The button bypasses the relay to force the 5V standby power on, and the BIOS is set to always turn on after a power failure, which is exactly what happened from its perspective. The 12V rail comes back, the relay pulls in, the LED goes out, and you can let go of the button.
The relay and button box are probably not needed anymore, with the internal capture card, but I still like how it works, so I'll leave it there.



I also noticed that you have the Soundboard Audio in *every* scene. I might suggest you use a global audio source for that (Settings -> Audio), and reduce the number of things in each scene. It might be okay as it is, but the global source would guarantee that the scene transition is silent, because there is no transition for that source.

Taking the concept even further, you might make *all* of your audio sources global, and use the Advanced Scene Switcher plugin to automate fading them up and down according to the current scene. The reason for that is because the scene transition always does a hard cut for the included audio, whereas a global is not cut off and can therefore do whatever you want.
 

T-Halen

New Member
Thank you for your reply AaronD, there is some good stuff in there. I know nothing about global audio sources, and will check that out.

The HDMI-USB adapter I am using is this one: https://www.amazon.com/dp/B08Z3XDYQ7/?th=1

For the most part it works well, the number of times it has "froze" on me is low, but when it happens it's frustrating. Since it's plugged into the rear of the PC, it's difficult to get to while streaming. An internal HDMI capture card will be looked into. The "video" that it's capturing mostly consists of slides with intro text and song lyrics. We don't run much true video thru it, but I've never really noticed a quality issue. We currently stream at 720p.
 

AaronD

Active Member
The HDMI-USB adapter I am using is this one: https://www.amazon.com/dp/B08Z3XDYQ7/?th=1
Yep, that's cheap enough that I would expect the same problems from it as I had with mine.

What I've found is that to make a USB capture work - true USB 3, uncompressed - you need to use the name brands and spend about $100 per channel.

My 4-input internal card is one of these:
Specifically, the Quad SDI for $260 and free shipping, because 3 of my inputs were already SDI and converted to a 3-inch HDMI jumper to feed the USB cards. The 4th input, from the projection computer, was easy enough to convert from HDMI to a 3-foot SDI jumper to feed the new card.
Drivers are here, for both Windows and Linux:

Interestingly enough, their Linux driver comes as source code, and instructions to build it on your machine. The instructions "just work", so that's not a problem, and then the card "just works" too, with no configuration at all. I guess that's one way to guarantee compatibility with the zoo of Linux systems!
It also means that you have to re-build the driver after each kernel update, but they also have a quick-and-easy way to do that. When you don't get a picture, and you just updated, just run that, reboot, and it works again. Fairly soon, I'm going to have that as part of my automated update script, so that it always "just works".

The ACASIS card was my second attempt, after BlackMagic fell completely flat on their face for about twice the price. Their quad SDI card (at the time at least) was an attempt to expand on a previous version while keeping backwards compatibility, and so the configuration was an absolute mess and never worked. Support couldn't make it work either. I sent it back to Amazon for a refund.

The "video" that it's capturing mostly consists of slides with intro text and song lyrics. We don't run much true video thru it, but I've never really noticed a quality issue. We currently stream at 720p.
1080 here.

What I really noticed more than the "fuzzies" was the color accuracy. I don't know how a pure-digital thing can get the color so wrong, but it did. Especially with our computer source, which is a copy of the audience display. There's a part of the JPG spec that allows for much lower resolution in color than in brightness, because that's how our sensitivity works, so maybe that was taken to an extreme with these cheap cards?

But the "fuzzies" were also there if you were to look. Computer-generated graphics are excellent to show them, as they have large blocks of the exact same color with hard edges in between, and the JPG compression algorithm is just not designed for that at all. It does much better with an actual photograph, full of real-world noise, which is what a frame from a camera is. (the "fuzzies" are technically still there, but they blend into the noise, so you can't tell the difference)
 
Top