voxl-streamer client repetitive connect/disconnect
-
@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? -
@wilkinsaf Just try one at a time for now. And when you plug the camera in do you see a new
/dev/videoX
entry appear? -
@wilkinsaf Also, were you able to get the ordering information for these cameras? If they aren't too expensive I would like to order at least one of them to test against.
-
Yes, let me try one at a time now.
Here are the two cameras![0_1640728100493_PXL_20211228_214717072.jpg](Uploading 100%)
-
Good news, I was able to get voxl-uvc-server to spin up with one usb camera connected.
However, I am getting this issue from voxl-streamer
Seems like I need to figure out the frame size and set the correct one. Let me play around with that now
-
@Eric-Katzfey Doesn't look to be frame size as the "sizes" seem non-deterministic
-
@wilkinsaf Great, that's some progress! What about if you try the other camera? Not sure why the frame length is different. For a given resolution and frame format that number should be a constant. (e.g. 640 x 480 x 2).
-
Good suggestion. Let me try that.
Check out the length when uvc server fires upGot frame callback! frame_format = 3, width = 640, height = 480, length = 613376, ptr = 0
interesting
-
@wilkinsaf You can try modifying this line in voxl-uvc-server: https://gitlab.com/voxl-public/modal-pipe-architecture/voxl-uvc-server/-/blob/dev/src/main.c#L83
Make it read:
.size_bytes = 614400, \
Then rebuild it and try again.
-
@Eric-Katzfey Sounds good.
The other camera is giving me this error
The one I compiled could not find the device at all
-
@wilkinsaf Perhaps you are working on
master
branch? The latest and greatest (The one you should be using) is thedev
branch. -
@wilkinsaf Thanks! I'm going to order them so that I can have them as part of our normal USB UVC camera test suite.
-
@Eric-Katzfey Thanks Eric!
I switched to dev branch (slightly embarrassing as you told me to switch to dev) and pull
voxl:~/voxl-uvc-server(dev)$ git pull origin dev From https://gitlab.com/voxl-public/modal-pipe-architecture/voxl-uvc-server * branch dev -> FETCH_HEAD Already up-to-date.
I made sure to install the correct libuvc ipk
voxl:~$ opkg install libuvc_1.0.2_202112182223.ipk Collected errors: * opkg_prepare_file_for_install: Refusing to load file 'libuvc_1.0.2_202112182223.ipk' as it matches the installed version of libuvc (1.0.2).
I then built the voxl-uvc-server, ran Makefile, and tried to run
-
@wilkinsaf Okay, interesting. Let's go back to the original camera with the incorrect size. Can you add the patch I suggested and see if you can make that camera work?