Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Using two webcam for uvc_camera stereo_node

Hi,

In all I have three camera. two external webcam and 1 integrated webcam on laptop.

When I run the command $rosrun uvc_camera stereo_node

using the integrated webcam and either of the external webcam everything works fine and I get required topics published.

I am facing difficulty get the two external webcam running together. The node would crash. I get the following error at the end

unable to set control: Invalid argument ERROR: could not set some settings.
unable to set control terminate called after throwing an instance of 'std::runtime_error' what(): unable to start capture /opt/ros/cturtle/ros/bin/rosrun: line 35: 5770 Aborted $exepath "$@"

The complete message

root@robot-laptop:/opt/ros/cturtle/ros# rosrun uvc_camera stereo_node _left/device:="/dev/video0" _right/device:="/dev/video1" _width=320 _height=240 opening /dev/video0 pixfmt 0 = 'YUYV' desc = 'YUV 4:2:2 (YUYV)' discrete: 640x480: 1/30 1/15 1/10 1/5 discrete: 352x288: 1/30 1/15 1/10 1/5 discrete: 320x240: 1/30 1/15 1/10 1/5 discrete: 176x144: 1/30 1/15 1/10 1/5 discrete: 160x120: 1/30 1/15 1/10 1/5 int (Brightness, 0, id = 980900): 0 to 255 (1) int (Contrast, 0, id = 980901): 0 to 255 (1) int (Saturation, 0, id = 980902): 0 to 255 (1) int (Hue, 0, id = 980903): -128 to 127 (1) int (Gamma, 0, id = 980910): 1 to 16 (1) int (Gain, 0, id = 980913): 0 to 65535 (1) menu (Power Line Frequency, 0, id = 980918): 0 to 2 (1) 0: Disabled 1: 50 Hz 2: 60 Hz int (Sharpness, 0, id = 98091b): 1 to 64 (1) int (Backlight Compensation, 0, id = 98091c): 1 to 16 (1) menu (Exposure, Auto, 0, id = 9a0901): 0 to 3 (1) 0: Auto Mode 1: Manual Mode 2: Shutter Priority Mode 3: Aperture Priority Mode int (Exposure (Absolute), 0, id = 9a0902): 1 to 1001 (1) unable to set control: Invalid argument ERROR: could not set some settings.
unable to set control opening /dev/video1 pixfmt 0 = 'YUYV' desc = 'YUV 4:2:2 (YUYV)' discrete: 640x480: 1/30 1/15 1/10 1/5 discrete: 352x288: 1/30 1/15 1/10 1/5 discrete: 320x240: 1/30 1/15 1/10 1/5 discrete: 176x144: 1/30 1/15 1/10 1/5 discrete: 160x120: 1/30 1/15 1/10 1/5 int (Brightness, 0, id = 980900): 0 to 255 (1) int (Contrast, 0, id = 980901): 0 to 255 (1) int (Saturation, 0, id = 980902): 0 to 255 (1) int (Hue, 0, id = 980903): -128 to 127 (1) int (Gamma, 0, id = 980910): 1 to 16 (1) int (Gain, 0, id = 980913): 0 to 65535 (1) menu (Power Line Frequency, 0, id = 980918): 0 to 2 (1) 0: Disabled 1: 50 Hz 2: 60 Hz int (Sharpness, 0, id = 98091b): 1 to 64 (1) int (Backlight Compensation, 0, id = 98091c): 1 to 16 (1) menu (Exposure, Auto, 0, id = 9a0901): 0 to 3 (1) 0: Auto Mode 1: Manual Mode 2: Shutter Priority Mode 3: Aperture Priority Mode int (Exposure (Absolute), 0, id = 9a0902): 1 to 1001 (1) unable to set control: Invalid argument ERROR: could not set some settings.
unable to set control terminate called after throwing an instance of 'std::runtime_error' what(): unable to start capture /opt/ros/cturtle/ros/bin/rosrun: line 35: 5770 Aborted $exepath "$@"

root@robot-laptop:/opt/ros/cturtle/ros#

every time I try to run the above command. and do dmesg I found the following related error [ 2892.239017] uvcvideo: Failed to submit URB 0 (-28).

I tried searching general solution for this dmesh problem. But did not find any solution.

I am using a low cost camera. So I am not aware what specification I can provide about it.

Has any one come across similar problem?

Waiting for a reply.

-Suraj.

Using two webcam for uvc_camera stereo_node

Hi,

In all I have three camera. two external webcam and 1 integrated webcam on laptop.

When I run the command $rosrun uvc_camera stereo_node

using the integrated webcam and either of the external webcam everything works fine and I get required topics published.

I am facing difficulty get the two external webcam running together. The node would crash. I get the following error at the end

unable to set control: Invalid argument argument

ERROR: could not set some settings. 
unable to set control terminate called after throwing an instance of 'std::runtime_error' what(): unable to start capture /opt/ros/cturtle/ros/bin/rosrun: line 35: 5770 Aborted $exepath "$@"

"$@"

The complete message

root@robot-laptop:/opt/ros/cturtle/ros# rosrun uvc_camera stereo_node  _left/device:="/dev/video0" _right/device:="/dev/video1" _width=320 _height=240
opening /dev/video0
pixfmt 0 = 'YUYV' desc = 'YUV 4:2:2 (YUYV)'
  discrete: 640x480:   1/30 1/15 1/10 1/5 
  discrete: 352x288:   1/30 1/15 1/10 1/5 
  discrete: 320x240:   1/30 1/15 1/10 1/5 
  discrete: 176x144:   1/30 1/15 1/10 1/5 
  discrete: 160x120:   1/30 1/15 1/10 1/5 
  int (Brightness, 0, id = 980900): 0 to 255 (1)
  int (Contrast, 0, id = 980901): 0 to 255 (1)
  int (Saturation, 0, id = 980902): 0 to 255 (1)
  int (Hue, 0, id = 980903): -128 to 127 (1)
  int (Gamma, 0, id = 980910): 1 to 16 (1)
  int (Gain, 0, id = 980913): 0 to 65535 (1)
  menu (Power Line Frequency, 0, id = 980918): 0 to 2 (1)
    0: Disabled
    1: 50 Hz
    2: 60 Hz
  int (Sharpness, 0, id = 98091b): 1 to 64 (1)
  int (Backlight Compensation, 0, id = 98091c): 1 to 16 (1)
  menu (Exposure, Auto, 0, id = 9a0901): 0 to 3 (1)
    0: Auto Mode
    1: Manual Mode
    2: Shutter Priority Mode
    3: Aperture Priority Mode
  int (Exposure (Absolute), 0, id = 9a0902): 1 to 1001 (1)
unable to set control: Invalid argument
ERROR: could not set some settings. 
unable to set control opening /dev/video1 pixfmt 0 = 'YUYV' desc = 'YUV 4:2:2 (YUYV)' discrete: 640x480: 1/30 1/15 1/10 1/5 discrete: 352x288: 1/30 1/15 1/10 1/5 discrete: 320x240: 1/30 1/15 1/10 1/5 discrete: 176x144: 1/30 1/15 1/10 1/5 discrete: 160x120: 1/30 1/15 1/10 1/5 int (Brightness, 0, id = 980900): 0 to 255 (1) int (Contrast, 0, id = 980901): 0 to 255 (1) int (Saturation, 0, id = 980902): 0 to 255 (1) int (Hue, 0, id = 980903): -128 to 127 (1) int (Gamma, 0, id = 980910): 1 to 16 (1) int (Gain, 0, id = 980913): 0 to 65535 (1) menu (Power Line Frequency, 0, id = 980918): 0 to 2 (1) 0: Disabled 1: 50 Hz 2: 60 Hz int (Sharpness, 0, id = 98091b): 1 to 64 (1) int (Backlight Compensation, 0, id = 98091c): 1 to 16 (1) menu (Exposure, Auto, 0, id = 9a0901): 0 to 3 (1) 0: Auto Mode 1: Manual Mode 2: Shutter Priority Mode 3: Aperture Priority Mode int (Exposure (Absolute), 0, id = 9a0902): 1 to 1001 (1) unable to set control: Invalid argument ERROR: could not set some settings.
unable to set control terminate called after throwing an instance of 'std::runtime_error' what(): unable to start capture /opt/ros/cturtle/ros/bin/rosrun: line 35: 5770 Aborted $exepath "$@"

root@robot-laptop:/opt/ros/cturtle/ros#

"$@" root@robot-laptop:/opt/ros/cturtle/ros#

every time I try to run the above command. and do dmesg I found the following related error error

[ 2892.239017] uvcvideo: Failed to submit URB 0 (-28).

(-28).

I tried searching general solution for this dmesh problem. But did not find any solution.

I am using a low cost camera. So I am not aware what specification I can provide about it.

Has any one come across similar problem?

Waiting for a reply.

-Suraj.