HDMI feed into OBS software for livestream

Bookwurm

New Member
hello,
i have the OBS running on mint 20.4 and the question i have is how can i run an HDMI cable feed that is from a evo 2 640T drone and have it play in OBS? the smart controller (android 7 with controls for drone) hdmi output works with an external monitor, but i want to be able to run this on a laptop that has a wireless acess point and have cell phones acess the OBS through the WAP

thanks for your time and concideration,
 

AaronD

Active Member
There are HDMI capture cards, just like there are capture cards for every other video format. Since you're on a laptop, you probably want a USB one.



If you were looking for a desktop card, I'd also warn you (and I *am* warning others who read this) about the security market that has multi-input cards for cheaper than most others. They do that by having only one converter chip (the expensive part), and a quick-and-dirty switch to feed it from any one input at a time. Their official app makes it look like all are working at the same time, but it only ever shows and records one. OBS usually doesn't get that far: it often only works with the one that the official app left it on, or it might be able to change the selection...sometimes. If you're looking for a desktop card, get one that really does have a dedicated converter for each input.

USB doesn't have that problem because you get an entire separate one-input device for each signal. It does have a different problem though, related to the still-relatively-new USB standard that allows high-quality video without squashing it.
USB 3 has a high enough data rate to make that work, but it requires extra pins and wires compared to USB 2, which makes it more expensive just for the cords and connectors.
USB 2 uses hardware that has been around since the beginning of USB, but its limited data rate requires the capture device itself to compress the signal, often throwing away some detail, before sending it through USB, and then the receiving end has to reconstruct what it can from what it actually gets. I've seen some of those that manage to still be pretty good, but it'd be better still to get one that doesn't compress at all, or only uses lossless compression, both of which require USB 3.

And you still need to be careful, especially at the lower end of the price scale, because of shady manufacturers making it look like you're getting more than you really are. Blue plastic, for example, when it only has the pins for USB 2. Or using a for-real USB 3 connector, but putting a cheaper USB 2 chip behind it. Things like that.

Another way to cut corners is to set all of the serial numbers the same, because it's cheaper that way. But it also removes the one way that an operating system can tell multiple devices apart. If you only have one, then you won't see this, but if you have multiple of the same cheap chip (different things can still use the same chip):
I think Linux still enumerates them as separate devices, but it's a race every time for which one finishes first, and then that order is used for everything else. So they do all work, but your assignments in OBS are not guaranteed, because the factory was too cheap to give them different serial numbers.
Windows is stupid enough to load the driver exclusively based on the ID, and not the descriptor that tells the host what the device really is. If it sees the same ID again, it either bumps the existing one off or skips the new one. Not sure which, but either way, you only end up with one of them working, which could be random, because the factory was too cheap to give them different serial numbers.
 
Last edited:

AaronD

Active Member
That reminded me of another potential issue, because it looks similar to one that I have. Sorry to not mention it before.

I have a camcorder feeding into it, with a 1920x1080i signal on HDMI. (interlaced, not p for progressive) So it only sends half the lines at a time, which results in effectively 1920x540 on the wire. My capture card (that looks like the one that you linked, no guarantee of functional similarity) sees that and reports 960x540. So that's the highest that I can select in OBS. It's a correct-shaped frame, so I guess something else knows about interlacing, but I can't actually get a 1920x1080 frame out of my 1920x1080i camcorder.

But the same card capturing a PC output at 1920x1080p60, works just fine. Then it does report the correct size, and OBS handles it accordingly.

If your android controller outputs a progressive signal like a PC does (entire frame present at once), then you're probably fine. If it's interlaced (only half at a time), then you might have the same problem that I do.
 
Top