Thoughts on the problems with my "inhertited" setup, please.

bigjimmyquango

New Member
Hi - OBS newbie here with some questions about a setup I've "inherited" that is showing a range of issues. I've worked in IT hardware maintenance, software development and application support for 20+ years, so you can bet that I have my own emerging opinions, but I'm going to try and avoid overloading this post with my opinions and set out the symptoms. Your suggestions for root causes or troubleshooting steps will be gratefully received. :-)

The use-case is at an archery club, where a former member bought a monitor, PC and 5 webcams to use as a training aid - the cameras positioned to capture the archer from each side, above, behind, and one on the distant (20yd) target to show where the arrow hits. The choice of hardware, and use of OBS, is all his - and he's no longer around to consult. I'm the latest club member to have a crack at getting the best out of what we have. I'm not sure it's ever worked the way we would like...

The ideal configuration is to have at least 4 of those cameras functioning at once, and for non-technical users to be able to start up the software and either record the video for later analysis, or have a delay in the feed for live recap of each shot.

Some info on the hardware:

PC is a "BeeLink" micro PC - core i3 (I have just realised I didn't note the exact cpu model) and 8Gb RAM - approx 3 years old. Windows 11, now fully updated (as of 31 July 2024). All hardware drivers are also up-to-date.
The PC appears to have 4 on-board USB(Type A) 3.0 ports, and a single USB (Type C) port. 2 x HDMI ports, 1xLAN.
There is on-board wireless networking too, but there's no internet service at the installation location.
Webcams are 4 x Logitech StreamCam, and 1 unbranded/unknown. The webcams are connected back to the PC over long cable runs with a combination of USB (Type A) extension cables and USB Type C to USB Type A adapters where needed.
There's a powered USB hub - unbranded - speed unknown, but by appearance would seem to claim USB 3.0.
Finally a wireless keyboard/mouse combo with a USB transceiver.

If you've stuck with me this far, you might have wondered how all those USB devices are connected:

3 of the Logitech cameras are plugged into on-board USB 3.0 Type A ports, the 4th on-board USB 3.0 Type A port has the USB hub plugged into it.
The USB hub has the remaining two cameras, plus the USB transceiver for the keyboard/mouse.
The on-board USB Type C socket is unused as there are no devices/cables with a Type C connector within pluggable distance.

The behaviour I'm seeing in OBS is:

If I start from scratch in OBS with a new profile, and a new scene, I can add all 5 webcams into the scene, however the performance of 1 or more of the webcams will be problematic - either no video, or frozen video. I think I might once have seen all 5 showing live video at the same time, but it's hard to be sure as there might have been no activity on one or more, for example. I didn't have a willing test subject at the time...

When I have multiple scenes, with 1 or 2 cameras in each scene, switching between scenes always results in one or more of the cameras showing no video feed.

After a restart of OBS (or a restart of the whole PC), 1 or more of the cameras simple won't be present in the scene they were in before the restart of OBS, and when I try to remove the missing camera and add it back into the scene, it still doesn't appear.

The windows camera management app generally, but not always, allows me to view the feed from each camera in turn, but sometimes will not show the feed from one or more camera. All the logitech cameras are named the same in Windows, which also doesn't help...

I must stress again that I didn't choose any of this gear, it's what I have to work with. A new PC is not - at this time - an option.

If anyone has any suggestions as to what the problems might be down to, how to resolve them, or whether they can be resolved, please fire away. If anyone has experience that might help to shape out what IS (or should be) achievable with the current equipment, then likewise, please let me know. If I've missed out any critical/useful info about the hardware or software please let me know and I'll update after my next visit to the clubhouse.

Thanks in advance to anyone who has read this far. I appreciate your time - oh - and I don't have a log file to post, I've only just read about the usefulness of these on one of the pinned posts, and didn't know where to look for them last time I had the PC in front of me. I'll grab a log file from the machine on my next visit.
 

koala

Active Member
Having 5 USB cameras is a massive load on the USB system of that PC. USB bandwidth might become a bottleneck. Connecting multiple of them over the same internal USB port, especially through some USB hub, might overload that port.

It's not clear if the cameras are able to work properly with the USB extension cables and the external hub.

Renaming USB devices isn't possible with any Windows setting. It's possible to change some USB device name by using regedit and edit the "FriendlyName" value of the corresponding registry configuration. There are guides you can find by googling, however I will not link such dangerous stuff. These names will only stick as long as the same camera device is plugged into the same USB plug and will vanish/mix if someone start to pull plugs and replug into different ports.

To get an idea how USB devices are connected to ports and hubs, you can use the USBTreeView app: https://www.uwe-sieber.de/usbtreeview_e.html
This might help to identify free ports where there is still space for bandwidth and also where too many cameras are running over the same hub, so bandwidth becomes an issue.

I suggest you unplug every camera except one, then check which one it is and if it works properly. Remove every single camera source in OBS in all scenes. Create a source in OBS for this camera and name it properly within OBS. This name will stick, because it's linked with the internal USB device ID. You must not change plugs, however, because this can make the device ID change.
If you need this camera in multiple scenes, add additional instances of this camera with the "add existing" option. Never add this camera again as new device, because Windows allows just one access to a given webcam device. Every additional access is black.

Then plug in the next camera and check how it works and create its OBS source. This time as new device, and additional instances of that camera again as "add existing", similar to the first camera.

And so on, until you plugged in all cameras. It can happen an existing camera stops working properly if you plug in a new camera - in this case, USB bandwidth might have become an issue. Or cabling. See if you find a different port, and don't use intermediate HUBS to connect 2 cameras. Keyboard+Mouse+camera is ok, because keyboard+mouse doesn't consume any significant USB bandwdith.
 

bigjimmyquango

New Member
Having 5 USB cameras is a massive load on the USB system of that PC. USB bandwidth might become a bottleneck. Connecting multiple of them over the same internal USB port, especially through some USB hub, might overload that port.

It's not clear if the cameras are able to work properly with the USB extension cables and the external hub.

Renaming USB devices isn't possible with any Windows setting. It's possible to change some USB device name by using regedit and edit the "FriendlyName" value of the corresponding registry configuration. There are guides you can find by googling, however I will not link such dangerous stuff. These names will only stick as long as the same camera device is plugged into the same USB plug and will vanish/mix if someone start to pull plugs and replug into different ports.

To get an idea how USB devices are connected to ports and hubs, you can use the USBTreeView app: https://www.uwe-sieber.de/usbtreeview_e.html
This might help to identify free ports where there is still space for bandwidth and also where too many cameras are running over the same hub, so bandwidth becomes an issue.

I suggest you unplug every camera except one, then check which one it is and if it works properly. Remove every single camera source in OBS in all scenes. Create a source in OBS for this camera and name it properly within OBS. This name will stick, because it's linked with the internal USB device ID. You must not change plugs, however, because this can make the device ID change.
If you need this camera in multiple scenes, add additional instances of this camera with the "add existing" option. Never add this camera again as new device, because Windows allows just one access to a given webcam device. Every additional access is black.

Then plug in the next camera and check how it works and create its OBS source. This time as new device, and additional instances of that camera again as "add existing", similar to the first camera.

And so on, until you plugged in all cameras. It can happen an existing camera stops working properly if you plug in a new camera - in this case, USB bandwidth might have become an issue. Or cabling. See if you find a different port, and don't use intermediate HUBS to connect 2 cameras. Keyboard+Mouse+camera is ok, because keyboard+mouse doesn't consume any significant USB bandwdith.
Thanks for the detail and suggestions. Much appreciated.
 

koala

Active Member
If you have difficulties configuring the OBS source, to select the 5th camera with 4 active + 1 new cameras = 5 similar entries in the OBS dropdown list, unplug every camera except the one you want to add. Choose the remaining entry in the drop down list. Then replug the other cameras and make sure you plug them into exactly the same plug as they were before.

Add physical tags to the plugs, jacks and cables, so you're able to plug every camera into its dedicated port again.
 

Lawrence_SoCal

Active Member
Koala know far more than I... but I'll add my $0.02
In addition to USB Root Hub overload already mentioned, another possibility is that the CPU is being overloaded with simultaneous processing the video from 5 cameras. Hopefully you've already checked Hardware Resource utilization and made sure you have adequate spare CPU, GPU, RAM, Disk I/O, etc.?

*IF* USB Root Hub overload is the problem
- possibly adding USB PCIe add-in card (adds USB Root Hub) might help? or may move the bottleneck to the CPU?
- Long (more than 6ft) are outside USB spec... can work, and sometimes don't ... depends on cable, and cables can go bad
Have you tested each camera on its own, and they each work perfectly by themselves? good news if that is the case

I've never been a fan of wireless mice/keyboard... what I'm not sure is if a wired keyboard and mouse would reduce USB polling / free up cycles for the cameras? Just in case, I'd be tempted (SWAG) that *If* PC has legacy PS/2 ports, and you have such older keyboards and mice around, I'd consider using those (I would not expect this to solve your issue, but *might* help??)

And with the low-end i3, and low RAM, doing OS optimization (turning off unnecessary background tasks, default OS eye-candy settings, etc) can all help
 

Lawrence_SoCal

Active Member
Oh, and a side note... if you have access to a workstation class tower you could use for a quick test (more powerful CPU than i3, better chipset, etc), I'd certainly consider that. [by workstation, I mean something like Dell Precision, HP Z, or similar]
 

khaver

Member
One possibility to remove one camera from the equation is to position a full length mirror on one side of the archer and the camera on the other side which would capture the archer and the mirror image of the opposite side of the archer. Old school but sometimes you have to think outside the box to get by the resource limitations.
 

MrGhost

Member
Get a good cheap gigabit router (10/100/1000) and10 or 15m (I run 20 at least) length of cat 6 ethernet cable. Make a network connection between your i3 and some other laptop you have lying around at home. Perhaps something you bought in 2016 but upgraded since then?

Set the beta laptop whichever it is, up near your desired farther camera distances. Use your beta laptop there, and its USB ports to get those cameras to OBS on that machine. In OBS use OBS-NDI plugin (that and NDI runtime you will need to install as the instructions on the github page for OBS NDI plugin state). You then set up an NDI connection between the 2 computer's OBSes, to send 2 or 3 cameras placed there at the 'remote' computer, back to the Alpha (recording computer, more powerful of the 2).

Mix the NDI source (you make an NDI source there on the 'local' computer) with the local cameras connected to the Alpha computer, and will try recording OBS in the alpha computer.

You can't run 5 webcams into your i3.
i3s are only good for 1 task at a time. They are simply not made to perform.
Just run one camera, and maybe you can do it.
Especially if your cameras are really high def, you are dreaming to get the kind of video you want.
Do you have proof that this worked, in the form of some video made by your predecessor that looks good and shows 5 sources? Are you sure he didn't abscond with the better computer?
i3 is not made for performance. Sorry.
 
Last edited:

bigjimmyquango

New Member
Koala know far more than I... but I'll add my $0.02
In addition to USB Root Hub overload already mentioned, another possibility is that the CPU is being overloaded with simultaneous processing the video from 5 cameras. Hopefully you've already checked Hardware Resource utilization and made sure you have adequate spare CPU, GPU, RAM, Disk I/O, etc.?

*IF* USB Root Hub overload is the problem
- possibly adding USB PCIe add-in card (adds USB Root Hub) might help? or may move the bottleneck to the CPU?
- Long (more than 6ft) are outside USB spec... can work, and sometimes don't ... depends on cable, and cables can go bad
Have you tested each camera on its own, and they each work perfectly by themselves? good news if that is the case

I've never been a fan of wireless mice/keyboard... what I'm not sure is if a wired keyboard and mouse would reduce USB polling / free up cycles for the cameras? Just in case, I'd be tempted (SWAG) that *If* PC has legacy PS/2 ports, and you have such older keyboards and mice around, I'd consider using those (I would not expect this to solve your issue, but *might* help??)

And with the low-end i3, and low RAM, doing OS optimization (turning off unnecessary background tasks, default OS eye-candy settings, etc) can all help
Thanks for the detail. Resources look OK-ish, utilisation is a little on the high side, but I've not spent much time dwelling on it as the PC format doesn't leave me anywhere to go with it - no upgrades possible.
USB Root hub overload looks to be the primary issue - the claimed USB 3 isn't delivering real-world USB 3 throughput even with only 1 device (plus mouse/kb) connected - but the rest of those items are sure to have an impact alongside it.
 

bigjimmyquango

New Member
One possibility to remove one camera from the equation is to position a full length mirror on one side of the archer and the camera on the other side which would capture the archer and the mirror image of the opposite side of the archer. Old school but sometimes you have to think outside the box to get by the resource limitations.
It's a great idea. I'm already pretty convinced I have to reduce the number of cameras - that's one sure way to help.
 

bigjimmyquango

New Member
Get a good cheap gigabit router (10/100/1000) and10 or 15m (I run 20 at least) length of cat 6 ethernet cable. Make a network connection between your i3 and some other laptop you have lying around at home. Perhaps something you bought in 2016 but upgraded since then?

Set the beta laptop whichever it is, up near your desired farther camera distances. Use your beta laptop there, and its USB ports to get those cameras to OBS on that machine. In OBS use OBS-NDI plugin (that and NDI runtime you will need to install as the instructions on the github page for OBS NDI plugin state). You then set up an NDI connection between the 2 computer's OBSes, to send 2 or 3 cameras placed there at the 'remote' computer, back to the Alpha (recording computer, more powerful of the 2).

Mix the NDI source (you make an NDI source there on the 'local' computer) with the local cameras connected to the Alpha computer, and will try recording OBS in the alpha computer.

You can't run 5 webcams into your i3.
i3s are only good for 1 task at a time. They are simply not made to perform.
Just run one camera, and maybe you can do it.
Especially if your cameras are really high def, you are dreaming to get the kind of video you want.
Do you have proof that this worked, in the form of some video made by your predecessor that looks good and shows 5 sources? Are you sure he didn't abscond with the better computer?
i3 is not made for performance. Sorry.
That 2-pc/router setup all makes sense, and might have a chance of delivering the ideal outcome, but I worry that the resulting complexity in the setup would mean that I'd be on the hook to maintain it - and I also really want to leave this in as idiot-proof a state as possible (I notice that I didn't include this desire in the original post - sorry). If that means fewer/few cameras, then that's the preferable way to go I think, but thanks for the detailed idea!
and - no - there's not much evidence that this setup ever worked the way it was supposed to... :-(
 

koala

Active Member
USB Root hub overload looks to be the primary issue - the claimed USB 3 isn't delivering real-world USB 3 throughput even with only 1 device (plus mouse/kb) connected - but the rest of those items are sure to have an impact alongside it.
USB 3 speed for a given device is only achieved, if all components between this device and the jack in the PC/Laptop are USB 3 compatible. This includes any cable. USB 2 cables have 4 internal wires, while USB 3 cables have 8 internal wires. Make sure everything has blue plugs and jacks.

If you connect the USB 3 hub with a USB 3 cable to a USB 3 jack on your laptop, USB 3 devices connected with a USB 3 cable to the USB 3 hub will get USB 3 speed. If you connect multiple USB 2 devices to that hub, they run with USB 2 speed, and they share one internal USB 2 connection to the PC, so the accumulated bandwidth of all connected USB 2 devices cannot exceed the maximum bandwidth of USB 2. It's not that every USB 2 device has full USB 2 speed to the laptop. For USB 2 devices, an USB 3 hub appears as an ordinary USB 2 hub with a single USB 2 upstream link.
 
Top