I'm running OctoPrint on a Ubuntu LXC via Proxmox.
My lsusb on the Ubuntu LXC:
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 005: ID 04f2:b2eb Chicony Electronics Co., Ltd Integrated Camera
Bus 001 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
Bus 001 Device 003: ID 147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode)
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 003: ID 12d1:4321 Huawei Technologies Co., Ltd. UVC Camera
Bus 002 Device 002: ID 1a86:7523 QinHeng Electronics CH340 serial converter
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
I have both the laptops embedded webcam and another USB webcam (which I know works) connected via USB.
When loading the webcam plugin and selecting either webcam from the list, I got an error about v4l2-ctl missing. So I installed that, via:
sudo apt-get install v4l-utils
But now, no cameras are available to select in this list:
This is not a standard setup - how did you do it? OctoPrint doesn't do the webcam streaming itself and so you need to also setup some kind of streaming software. If you used a script like octoprint_deploy it has an option to install the webcam streaming as well for example.
When I was trying to fix this issue I came across octoprint_deploy, so I might give that a go in lieu of getting it sorted as is.
I'll look into the scripts within octoprint_deploy and see if it can give me the details I need.
Yeah, the second guide you linked has no mention of installing the webcam streaming, just OctoPrint and nothing more. That's why it won't work, you need to also install some kind of streaming software. All the options on OctoPrint.org - Download & Setup OctoPrint should have that included.
You just need to set up lxc pass through properly to get it working. You need to pass through ports and permissions. Can you share your current lxc configuration using βlxc config show β
You need to add the video port using something similar to this: