The Unexpected Problem.
It was working last week. It’s been working for months.
I have a laptop with a built-in webcam. It has Zoom videoconferencing software installed on it (I don’t really like Zoom videoconferencing that much, but currently it’s very popular). It also has VMix video streaming software installed on it.
Today, Zoom videoconference would show me the incoming video. But Zoom videoconferencing insisted it could not connect to my laptop’s built-in webcam, but only to VMix.
Vmix in turn is saying my webcam cannot provide input in any supported format.
Yes, I updated both VMix and Zoom videoconferencing. I checked the laptop webcam driver and found nothing more recent.
The Battle is Joined.
There’s a three-way battle between Windows, VMix, and Zoom videoconferencing as to who can access the webcam. All three were cooperating together last week.
Now it’s off to forums, help desk tickets, and possibly uninstalling and reinstalling multiple things.
Immediate Lessons.
What did I learn from all this? I don’t do videoconferencing or video streaming for a living, or as part of my living. If I did, I think it would become a regular practice to turn on the computer assigned to videoconferencing and video production at the start of each work day, make sure everything is working, and then turn off all software updates until the end of that work day.
The laptop I currently have is Windows 10. The problem of computer programs fighting to access hardware devices on a machine goes back to Windows 3.1 and 3.11 in the 1990s. It seems like it’s now more difficult to tell the Windows operating system which programs have access to which hardware devices than it was back then.
What I Really Want.
I wish avoidance of this type of software and hardware conflict was taught more in programming classes. I wish it was emphasized more in the companies which create and distribute software.
It matters less how much memory a piece of software takes up when installed, and matters more how much of itself it spreads throughout the operating system and how insistently selfish it is. Does it insist on installing itself to load at startup? Does it insist on running in the background even when not open, just in case something might occur which might need its attention? Are hardware resources caught in a digital deathgrip merely because a program was installed? Then that piece of technology is causing problems merely by being installed and will probably be uninstalled. Was that the goal?