• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Register
  • Login
ModalAI Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
    • Register
    • Login

    uvc_get_stream_ctrl_format_size failed

    Ask your questions right here!
    3
    39
    3.8k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      Kris @tom
      last edited by 1 Mar 2023, 00:57

      @tom
      Ok, thank you. I will try that first.

      1 Reply Last reply Reply Quote 0
      • K
        Kris @tom
        last edited by 7 Mar 2023, 00:49

        @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 hub
        
        voxl:~$ 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
        
        1 Reply Last reply Reply Quote 0
        • T
          tom admin
          last edited by 7 Mar 2023, 00:55

          @Kris Are you sure that your UVC camera is 640x480 resolution?

          K 2 Replies Last reply 7 Mar 2023, 01:03 Reply Quote 0
          • K
            Kris @tom
            last edited by 7 Mar 2023, 01:03

            @tom
            Yes, in the debug messages, it says that it is 640x480.
            Is there another way to check the resolution?

            1 Reply Last reply Reply Quote 0
            • T
              tom admin
              last edited by 7 Mar 2023, 01:10

              @Kris Yeah that's just the default that voxl-uvc-server uses if not explicitly specified otherwise with the -r flag.

              You can use show-video-device-info.sh and 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

              K 4 Replies Last reply 7 Mar 2023, 01:18 Reply Quote 0
              • K
                Kris @tom
                last edited by 7 Mar 2023, 01:18

                @tom Ok, Thank you I will try that now.
                Here are some details of my UVC 2.0 camera.
                e-CAM83.png

                1 Reply Last reply Reply Quote 0
                • K
                  Kris @tom
                  last edited by 7 Mar 2023, 01:21

                  @tom
                  This is all the information I get from show-video-device-info.sh

                  voxl:~$ show-video-device-info.sh
                  /dev/video2: e-CAM83_USB 2560:c184
                  /dev/video3: e-CAM83_USB 2560:c184
                  
                  1 Reply Last reply Reply Quote 0
                  • K
                    Kris
                    last edited by Kris 7 Mar 2023, 01:27 7 Mar 2023, 01:23

                    Is there any chance I can get 1920 x 1080 @30 fps using h264 in the voxl-uvc-server?
                    Or is 640 x 480 the only option in the voxl-uvc-server?

                    1 Reply Last reply Reply Quote 0
                    • K
                      Kris
                      last edited by 7 Mar 2023, 01:27

                      The rest of the information about my current uvc camera is here.

                      1 Reply Last reply Reply Quote 0
                      • K
                        Kris
                        last edited by 7 Mar 2023, 01:41

                        Additional information;
                        e-CAM83-1.png
                        e-CAM83-2.png

                        1 Reply Last reply Reply Quote 0
                        • K
                          Kris @tom
                          last edited by 7 Mar 2023, 01:49

                          @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
                          
                          1 Reply Last reply Reply Quote 0
                          • K
                            Kris @tom
                            last edited by 7 Mar 2023, 03:29

                            @tom

                            voxl:~$ show-video-device-info.sh
                            /dev/video2: e-CAM83_USB 2560:c184
                            /dev/video3: e-CAM83_USB 2560:c184
                            

                            /dev/video2: is h264
                            /dev/video3: is MJPG & YUY2

                            1 Reply Last reply Reply Quote 0
                            • K
                              Kris
                              last edited by 7 Mar 2023, 03:35

                              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 ***
                              
                              1 Reply Last reply Reply Quote 0
                              • K
                                Kris @tom
                                last edited by 7 Mar 2023, 07:22

                                @tom
                                May I ask what image formats the voxl-uvc-serversupports?

                                1 Reply Last reply Reply Quote 0
                                • K
                                  Kris
                                  last edited by 7 Mar 2023, 10:25

                                  I have a feeling that maybe the problem is deriving from my camera’s GUID Format.
                                  Does the voxl-uvc-server accept GUID: 4832363400001000800000aa00389b71
                                  for h264 format?
                                  How would I go about correcting the guidFormat to match up with the voxl-uvc-server?

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    tom admin
                                    last edited by 7 Mar 2023, 18:39

                                    @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=8554

                                    The 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

                                    K 4 Replies Last reply 7 Mar 2023, 23:08 Reply Quote 0
                                    • K
                                      Kris @tom
                                      last edited by 7 Mar 2023, 23:08

                                      @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?

                                      1 Reply Last reply Reply Quote 0
                                      • K
                                        Kris @tom
                                        last edited by 8 Mar 2023, 01:09

                                        @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=8554
                                        

                                        Does this have uvc frame or video capture capabilities?

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          Kris @tom
                                          last edited by 8 Mar 2023, 01:22

                                          @tom
                                          Sorry to bother you again, but I am not seeing the h264 format supported in the main.c script you provided for the voxl-uvc-server. Is it possible to edit the voxl-uvc-server main.c script to accept h264 format at 1920x1080 @30fps?

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            tom admin
                                            last edited by 8 Mar 2023, 01:33

                                            @Kris You can read more about how gstreamer and the gst-launch-1.0 command works here: https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html?gi-language=c

                                            Yes, 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.

                                            K 1 Reply Last reply 8 Mar 2023, 01:35 Reply Quote 0
                                            6 out of 39
                                            • First post
                                              6/39
                                              Last post
                                            Powered by NodeBB | Contributors