I'm feeling utterly hopeless with this one, but my USB spherical camera, Insta360 Air, no longer works with Raspberry Pi. It used to work in a previous OS (forgot the kernel version but before the OS was rebranded as "Raspberry Pi OS", so it was likely 4.15 or 4.19, approximately). Here are the observations I have made so far.
First, lsusb and dmesg results suggest that the camera in itself is detected:
lsusb:
Bus 001 Device 006: ID 2e1a:1000
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
2e1a:1000 is the camera in question; it shows up when I plug the camera into a USB port on the pi.
dmesg:
[28795.273493] usb 1-1.3: New USB device found, idVendor=2e1a, idProduct=1000, bcdDevice= 1.00
[28795.273511] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[28795.273527] usb 1-1.3: Product: Insta360 Air
[28795.273541] usb 1-1.3: Manufacturer: Arashi Vision
In the previous working version of the OS (Raspbian a year or two ago), files are created in these directories when the camera is plugged in, but either of these files is no longer created.
- /dev/video*
- /dev/v4l/by-id/*
When I connect another, old Logitech webcam, the pi running the new Raspberry Pi OS detects it and I can stream the video over the web. I tried mjpeg or webrtc; both of them work. With this spherical camera, however, neither mjpeg nor webrtc works. I've tried it with Pi 3 and Pi 4, and the results are basically the same.
One relevant post suggested installing cheese because required modules might be installed with it, so I did
sudo apt install cheese
But it did not change the situation. Meanwhile, the camera displays the video on cheese (in 2 hemispheres, side-by-side) on my Ubuntu 16.04 LTS laptop just fine.