uvc_get_stream_ctrl_format_size failed
-
@Kris You're on a pretty old platform release, I would start by updating to 0.9: https://developer.modalai.com/asset/view/115
@tom
I've updated my platform to 0.9 and I am still unable to successfully open the uvc camera.voxl:~$ lsusb Bus 001 Device 008: ID 2560:c184 Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubvoxl:~$ voxl-uvc-server -p c184 uvc_open failed voxl:~$ voxl-uvc-server -v 2560 uvc_open failed voxl:~$ voxl-uvc-server -d Enabling debug messages voxl-uvc-server starting Image resolution 640x480, 30 fps chosen UVC initialized Device found uvc_open failed UVC exited voxl-uvc-server ending -
@Kris Yeah that's just the default that
voxl-uvc-serveruses if not explicitly specified otherwise with the-rflag.You can use
show-video-device-info.shand that may provide some clues.What is the part number or make and model of the UVC camera you're using? It's possible it's supported image formats don't match up with those supported by
voxl-uvc-server -
@Kris Yeah that's just the default that
voxl-uvc-serveruses if not explicitly specified otherwise with the-rflag.You can use
show-video-device-info.shand that may provide some clues.What is the part number or make and model of the UVC camera you're using? It's possible it's supported image formats don't match up with those supported by
voxl-uvc-server -
@Kris Yeah that's just the default that
voxl-uvc-serveruses if not explicitly specified otherwise with the-rflag.You can use
show-video-device-info.shand that may provide some clues.What is the part number or make and model of the UVC camera you're using? It's possible it's supported image formats don't match up with those supported by
voxl-uvc-server -
@Kris Yeah that's just the default that
voxl-uvc-serveruses if not explicitly specified otherwise with the-rflag.You can use
show-video-device-info.shand that may provide some clues.What is the part number or make and model of the UVC camera you're using? It's possible it's supported image formats don't match up with those supported by
voxl-uvc-server@tom
I gave this a try, but no luck.voxl:~$ voxl-uvc-server -d -r 1920x1080 -f 30 Enabling debug messages voxl-uvc-server starting Image resolution 1920x1080, 30 fps chosen UVC initialized Device found uvc_open failed UVC exited voxl-uvc-server ending -
voxl:~$ voxl-uvc-server -l *** START DEVICE LIST *** Found device 0 Got device descriptor for 2560:c184 (null) Found device 2560:c184 uvc_open failed, Return code: I/O error (-1) Found device 0 Got device descriptor for 2560:c184 (null) Found device 2560:c184 uvc_open failed, Return code: No such device (-4) Found device 0 Got device descriptor for 2560:c184 (null) uvc_find_device failed, Return code: No such device (-4) Got device descriptor for 2560:c184 (null) Found device 2560:c184 DEVICE CONFIGURATION (2560:c184/00.00.01) --- Status: idle VideoControl: bcdUVC: 0x0100 VideoStreaming(1): bEndpointAddress: 129 Formats: FrameFormat(1) bits per pixel: 16 GUID: 4832363400001000800000aa00389b71 (H264) default frame: 1 aspect ratio: 0x0 interlace flags: 00 copy protect: 00 FrameDescriptor(1) capabilities: 00 size: 3840x2160 bit rate: 165888000-995328000 max frame size: 0 default interval: 1/15 interval[0]: 1/30 interval[1]: 1/15 FrameDescriptor(2) capabilities: 00 size: 1920x1080 bit rate: 165888000-995328000 max frame size: 0 default interval: 1/30 interval[0]: 1/30 VideoStreaming(2): bEndpointAddress: 136 Formats: UncompressedFormat(1) bits per pixel: 16 GUID: 5955593200001000800000aa00389b71 (YUY2) default frame: 1 aspect ratio: 0x0 interlace flags: 00 copy protect: 00 FrameDescriptor(1) capabilities: 00 size: 640x480 bit rate: 24576000-147456000 max frame size: 614400 default interval: 1/15 interval[0]: 1/15 MJPEGFormat(2) bits per pixel: 0 GUID: 4d4a5047000000000000000000000000 (MJPG) default frame: 1 aspect ratio: 0x0 interlace flags: 00 copy protect: 00 FrameDescriptor(1) capabilities: 00 size: 1920x1080 bit rate: 24576000-147456000 max frame size: 614400 default interval: 1/30 interval[0]: 1/30 END DEVICE CONFIGURATION *** END DEVICE LIST *** -
@Kris Yeah that's just the default that
voxl-uvc-serveruses if not explicitly specified otherwise with the-rflag.You can use
show-video-device-info.shand that may provide some clues.What is the part number or make and model of the UVC camera you're using? It's possible it's supported image formats don't match up with those supported by
voxl-uvc-server -
I have a feeling that maybe the problem is deriving from my camera’s GUID Format.
Does the voxl-uvc-server acceptGUID: 4832363400001000800000aa00389b71
for h264 format?
How would I go about correcting the guidFormat to match up with the voxl-uvc-server? -
@Kris You can see supported format info here: https://gitlab.com/voxl-public/voxl-sdk/services/voxl-uvc-server/-/blob/master/src/main.c#L64
Another thing to try out is using gstreamer instead of voxl-uvc-server + voxl-streamer with a pipeline similar to the following:
gst-launch-1.0 v4l2src device=/dev/video2 ! video/x-raw,format=YUY2 ! videoconvert ! x264enc speed-preset=ultrafast tune=zerolatency ! rtph264pay name=pay0 ! udpsink host=192.168.1.97 port=8554The pipeline may need to be tweaked slightly but it's one I've used before for other UVC cameras that voxl-uvc-server was unhappy with
-
@Kris You can see supported format info here: https://gitlab.com/voxl-public/voxl-sdk/services/voxl-uvc-server/-/blob/master/src/main.c#L64
Another thing to try out is using gstreamer instead of voxl-uvc-server + voxl-streamer with a pipeline similar to the following:
gst-launch-1.0 v4l2src device=/dev/video2 ! video/x-raw,format=YUY2 ! videoconvert ! x264enc speed-preset=ultrafast tune=zerolatency ! rtph264pay name=pay0 ! udpsink host=192.168.1.97 port=8554The pipeline may need to be tweaked slightly but it's one I've used before for other UVC cameras that voxl-uvc-server was unhappy with
@tom
Thank you, I will give this a try.
I am trying to use H.264 on this camera.
This is the second UVC camera that I’ve purchased because I am trying to log the frames from voxl-logger. From what I understand, H.264 output is the format that can do this.
Is there a way to call for only the /dev/video2 to start with the voxl-uvc-server or gstreamer?
Does the voxl-uvc-server accept h264 1920x1080 @30fps? -
@Kris You can see supported format info here: https://gitlab.com/voxl-public/voxl-sdk/services/voxl-uvc-server/-/blob/master/src/main.c#L64
Another thing to try out is using gstreamer instead of voxl-uvc-server + voxl-streamer with a pipeline similar to the following:
gst-launch-1.0 v4l2src device=/dev/video2 ! video/x-raw,format=YUY2 ! videoconvert ! x264enc speed-preset=ultrafast tune=zerolatency ! rtph264pay name=pay0 ! udpsink host=192.168.1.97 port=8554The pipeline may need to be tweaked slightly but it's one I've used before for other UVC cameras that voxl-uvc-server was unhappy with
@tom
Do I paste this in the voxl terminal?gst-launch-1.0 v4l2src device=/dev/video2 ! video/x-raw,format=YUY2 ! videoconvert ! x264enc speed-preset=ultrafast tune=zerolatency ! rtph264pay name=pay0 ! udpsink host=192.168.1.97 port=8554Does this have uvc frame or video capture capabilities?
-
@Kris You can see supported format info here: https://gitlab.com/voxl-public/voxl-sdk/services/voxl-uvc-server/-/blob/master/src/main.c#L64
Another thing to try out is using gstreamer instead of voxl-uvc-server + voxl-streamer with a pipeline similar to the following:
gst-launch-1.0 v4l2src device=/dev/video2 ! video/x-raw,format=YUY2 ! videoconvert ! x264enc speed-preset=ultrafast tune=zerolatency ! rtph264pay name=pay0 ! udpsink host=192.168.1.97 port=8554The pipeline may need to be tweaked slightly but it's one I've used before for other UVC cameras that voxl-uvc-server was unhappy with
-
@Kris You can read more about how gstreamer and the
gst-launch-1.0command works here: https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html?gi-language=cYes, you would run that command on VOXL2. That specific command pulls frames from
/dev/video22(the UVC camera), it tells it to expect YUY2 formatted frames (you can change this to your liking) and then it converts it to an RTSP video stream. You could modify the pipeline to instead write to a file instead of streaming.There is a ton of documentation on gstreamer out there that can help you out with tailoring the pipeline.
-
@Kris You can read more about how gstreamer and the
gst-launch-1.0command works here: https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html?gi-language=cYes, you would run that command on VOXL2. That specific command pulls frames from
/dev/video22(the UVC camera), it tells it to expect YUY2 formatted frames (you can change this to your liking) and then it converts it to an RTSP video stream. You could modify the pipeline to instead write to a file instead of streaming.There is a ton of documentation on gstreamer out there that can help you out with tailoring the pipeline.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login


