3

I have four USB HDMI capture cards plugged into four different laptops which have their video stream sent to them from a desktop running OBS. There are several HDMI cables running from the desktop into each HDMI port of each capture card, which is then plugged into each laptop via USB.

enter image description here

The problem is that they all show up as the same name (I only had 3 plugged in at the time of the screenshots below). The dell is just a peripheral monitor I use to control the desktop.

enter image description here

Unfortunately, because each laptop restarts or powers off occasionally, Windows 10 on the Desktop detects that as a monitor disconnecting and then being reconnected. This leads to big problems for me because I'm trying to use OBS to project different video streams to each laptop, but every time a laptop restarts, Windows seems to do some internal reordering of the display indexes. They stay in the same spatial position once the capture card reconnects, in other words they don't move from this picture other than for the brief time the laptop is off:

enter image description here

But some kind of internal monitor numbering or ordering changes somehow when this happens, because the indexes OBS was using to determine which monitor is which get switched around.

This may be an OBS problem rather than a Windows problem, but I may be able to solve it if I can somehow write an OBS script to distinguish the displays, assuming I can find anything unique to distinguish them.

Considering I can't rely on the display index, since that changes when a laptop restarts, and I can't rely on the name (they are all named "HDMI TO USB"), I'm wondering if there is any other information I can obtain to somehow distinguish each display. If I could find something, literally anything, that uniquely identifies them and pull that into an OBS script, and then match that up with how OBS indexes the monitors, I could solve this problem.

I need a way to reliably distinguish these displays, which persists even after they are unplugged and plugged back in (the equivalent of the laptop restarting). Is this possible?

joejoejoejoe4
  • 1,438
  • 9
  • 25
  • 48
  • Why do you have that setup? – Gantendo Apr 27 '23 at 23:27
  • 1
    @Gantendo a very specific dedicated purpose that is difficult to explain. – joejoejoejoe4 Apr 27 '23 at 23:30
  • I think an EDID Manager might stop it from detecting that the monitor is turned off https://www.datapro.net/techinfo/hot_plug_detection.html – Gantendo Apr 27 '23 at 23:46
  • You can change the device names but I doubt that'll work in this case https://www.eightforums.com/threads/tutorial-how-to-change-device-names-in-device-manager.15321/ – Gantendo Apr 27 '23 at 23:51
  • @Gantendo, I like your EDID manager idea, but I assume it would need a separate power source since the USB to HDMI adapter wouldn't receive power while the laptop is turned off, correct? – joejoejoejoe4 Apr 28 '23 at 00:07
  • Have you opened **Device Manager** and switch the view to `Devices by connection `, and see if the leaf nodes provide any distinguishing information. Or the ports themselves could probably be distinguished from one another. That might be an avenue to explore... – Keith Miller Apr 28 '23 at 01:19
  • Also maybe try https://learn.microsoft.com/en-us/answers/questions/216983/how-to-get-the-serial-number-of-the-monitors-using – Gantendo Apr 28 '23 at 01:31
  • Hiya! I know EDID Emulators are used in cases like this but that is basically all I know about them ;-) Have you tried the PowerShell script? I tried it and all my monitors are the same make and model but I can still distinguish between them with that script. – Gantendo Apr 28 '23 at 05:18
  • @Gantendo, I haven't tried the script yet. I would have to figure out how to align the unique ID I can get through the script with OBS's internal indexing, which may not be possible if OBS doesn't expose the same information about the monitor. – joejoejoejoe4 Apr 28 '23 at 11:57

0 Answers0