voxl-streamer client repetitive connect/disconnect
-
-
@wilkinsaf The current voxl-uvc-server capabilities only cover uncompressed frames, not mjpeg. The two cameras that you are looking at both have uncompressed formats but the guidFormat is slightly different than the cameras I have tested with. Let me look into this a little deeper.
-
@wilkinsaf The formats should be compatible. I'll have to dig into the libuvc code to see why they are not accepted.
-
@wilkinsaf Are either of these cameras cheap and easy to purchase?
-
I believe so. Let me find them online really quick. I was able to get the video's from the cameras streaming using the directions here: https://docs.modalai.com/uvc-streaming/
I moved over the ffmpeg ipk and executed
ffmpeg -i /dev/video2 -f mpegts udp://QCS_IP:4242So I know that they are working.
-
@wilkinsaf There are some clues here: https://github.com/gregkh/usbutils/issues/42. It seems like there are some endian issues with interpretation of the guidFormat field. For example, for my Logitech C270 test camera, lsusb reports the guidFormat as
32595559-0000-0010-8000-00aa00389b71
but libuvc (which voxl-uvc-server uses) reports the guidFormat as59555932-0000-1000-8000-00aa00389b71
. So, my guess is that since lsusb reports the guidFormat of your camera as59555932-0000-1000-8000-00aa00389b71
, libuvc (and hence voxl-uvc-server) will see it as32595559-0000-0010-8000-00aa00389b71
which doesn't match any valid formats. I think I can hack libuvc to add the extra guidFormat and then your cameras will work but I won't be able to test it without one of your cameras. But I will post it and you can try it. For reference this is where libuvc needs to be modified to add the extra guidFormat: https://github.com/libuvc/libuvc/blob/37f00abd32b083a3d748f2a25c1c794578b51c16/src/stream.c#L109 -
@wilkinsaf There is a new version of libuvc available at http://voxl-packages.modalai.com/dev/libuvc_1.0.2_202112182223.ipk with the changes. If you rebuild the dev branch of voxl-uvc-server and install build deps from dev you should pick up the new libuvc. Then you can rebuild and test with your camera.
-
@Eric-Katzfey roger that. thank you for your support here Eric
-
@Eric-Katzfey will post results after run
-
@Eric-Katzfey Sorry for being such a pain, but it seems like this repo keeps moving.
I went to https://gitlab.com/voxl-public/modal-pipe-architecture/voxl-uvc-server
but got this
I keep searching around for the repo, but can not find it
-
@wilkinsaf Sorry, it was setup as private. I changed it to public. Can you try again?
-
@Eric-Katzfey Got it, thank you!
Will download and play with
-
@Eric-Katzfey Will it remain public?
-
@wilkinsaf Yes, it will remain public. Did you get a chance to see if the changes worked?
-
@Eric-Katzfey Testing out today
-
We seem to be having trouble finding the camera now which is weird. I wonder if we need to specifically download and install the drivers?
-
@wilkinsaf No, you shouldn't need any drivers. Any USB device should be listed with
lsusb
, even without any specific drivers. Does it show up when plugged into a regular Linux computer? -
@Eric-Katzfey Yes, we have hardwired it into a computer before. We have seen the stream using ffmpeg on VOXL as well. We just can not seem to get voxl-streamer to work with it
-
@wilkinsaf If you unplug the camera from Voxl does anything disappear from the
lsusb
list? -
Yes, the top 3 entries in
lsusb
screenshots above are all cameras. I can unplug those one by one and see them disappear.
Would it matter if we have 2 UVC cameras?