Date: Tue, 22 Mar 2011 19:03:45 -0400 From: Jimmie James <jimmiejaz@gmail.com> To: freebsd-questions@freebsd.org, freebsd-multimedia@FreeBSD.org Subject: Fwd: Re: vlc, webcam streaming Message-ID: <4D892AD1.8060005@gmail.com>
next in thread | raw e-mail | index | archive | help
(sorry, dropped the list off this) On 03/22/11 10:55, Hans Petter Selasky wrote: > On Tuesday 22 March 2011 15:16:56 Jimmie James wrote: >> Camera works fine with skype, emesene work wonderfully, mplayer gives me >> an image, but it flashes between green screen and the actual images. >> >> Full vlc -vv output is here, http://pastebin.com/MaEP6f6R (highlights >> below) Anyone have a suggestion/hint/tip? >> >> VLC is unable to open the MRL 'v4l://'. Check the log for details. > > Hi, > > I think VLC removed support for Webcams. Only video streaming devices and DVB- > X devices are supported. > > Flickering pictures might be due to lack of buffering in webcamd. > > Could you dump the config descriptor with usbconfig for your device? > > Which version of webcamd are you using? > > --HPS > That's interesting with VLC, googling around seems to suggest it works with V4L2 usbconfig -u 2 -a 2 dump_curr_config_desc is at the end of this message. webcamd-0.1.20_1 gstreamer-plugins-v4l2-0.10.27,3 Gstreamer Video 4 Linux 2 source plugin libv4l-0.8.1 Video4Linux library v4l_compat-1.0.20101027_1 Video4Linux IOCTL header files As for mplayer, I'm going to "assuME" it's more user error/command line options after playing a bit more with it. Mplayer called like mplayer tv:// -tv driver=v4l:device=/dev/video0 is clear. Playing tv://. TV file format detected. Selected driver: v4l name: Video 4 Linux input author: Alex Beregszaszi comment: under development ================================================================= WARNING: YOU ARE USING V4L DEMUXER WITH V4L2 DRIVERS!!! As the V4L1 compatibility layer is broken, this may not work. If you encounter any problems, use driver=v4l2 instead. Bugreports on driver=v4l with v4l2 drivers will be ignored. ================================================================= Selected device: Logitech QuickCam Pro 4000 Capabilities: capture teletext overlay clipping frameram mjpeg-encoder Device type: 1917853805 Supported sizes: 160x120 => 640x480 Inputs: 1 0: usb: (tuner:0, norm:pal) Called like tv:// -tv driver=v4l2:device=/dev/video0 is all flickery. MPlayer SVN-r32577-snapshot-4.2.1 (C) 2000-2010 MPlayer Team Playing tv://. TV file format detected. Selected driver: v4l2 name: Video 4 Linux 2 input author: Martin Olschewski <olschewski@zpr.uni-koeln.de> comment: first try, more to come ;-) Selected device: Logitech QuickCam Pro 4000 Capabilities: video capture read/write streaming supported norms: 0 = webcam; inputs: 0 = usb; Current input: 0 Current format: YUV420 tv.c: norm_from_string(pal): Bogus norm parameter, setting default. Selected input hasn't got a tuner! v4l2: Cannot get fps v4l2: ioctl set mute failed: Invalid argument v4l2: ioctl query control failed: Invalid argument ========================================================================== Opening video decoder: [raw] RAW Uncompressed Video Movie-Aspect is undefined - no prescaling applied. VO: [x11] 640x480 => 640x480 Planar YV12 [swscaler @ 0x2aa3f010] using unscaled yuv420p -> bgra special converter Selected video codec: [rawyv12] vfm: raw (RAW YV12) ugen2.2: <product 0x08b2 vendor 0x046d> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x01fd bNumInterfaces = 0x0003 bConfigurationValue = 0x0001 iConfiguration = 0x0000 <no string> bmAttributes = 0x00a0 bMaxPower = 0x00fa Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0000 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0001 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x00c4 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 2 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0002 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0124 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 3 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0003 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x01c0 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 4 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0004 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0250 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 5 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0005 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x02c0 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 6 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0006 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0308 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 7 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0007 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0348 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 8 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0008 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0380 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 9 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0009 bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x03c0 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 0 Alt 10 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x000a bNumEndpoints = 0x0002 bInterfaceClass = 0x000a bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0082 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0001 bInterval = 0x0064 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0085 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x03c0 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 1 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0001 bAlternateSetting = 0x0000 bNumEndpoints = 0x0000 bInterfaceClass = 0x0001 bInterfaceSubClass = 0x0001 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x09 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x09, 0x24, 0x01, 0x00, 0x01, 0x26, 0x00, 0x01, 0x08 | 0x02 Additional Descriptor bLength = 0x0c bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x0c, 0x24, 0x02, 0x01, 0x01, 0x02, 0x00, 0x01, 0x08 | 0x00, 0x00, 0x00, 0x00 Additional Descriptor bLength = 0x08 bDescriptorType = 0x24 bDescriptorSubType = 0x06 RAW dump: 0x00 | 0x08, 0x24, 0x06, 0x02, 0x01, 0x01, 0x03, 0x00 Additional Descriptor bLength = 0x09 bDescriptorType = 0x24 bDescriptorSubType = 0x03 RAW dump: 0x00 | 0x09, 0x24, 0x03, 0x03, 0x01, 0x01, 0x00, 0x02, 0x08 | 0x00 Interface 2 bLength = 0x000b bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0000 bNumEndpoints = 0x0001 bInterfaceClass = 0x0001 bInterfaceSubClass = 0x0002 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Endpoint 0 bLength = 0x0009 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0000 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Interface 2 Alt 1 bLength = 0x000b bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0001 bNumEndpoints = 0x0001 bInterfaceClass = 0x0001 bInterfaceSubClass = 0x0002 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x07 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x24, 0x01, 0x03, 0x01, 0x01, 0x00 Additional Descriptor bLength = 0x0b bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x0b, 0x24, 0x02, 0x01, 0x01, 0x02, 0x10, 0x01, 0x08 | 0x44, 0xac, 0x00 Endpoint 0 bLength = 0x0009 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x005a bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Additional Descriptor bLength = 0x07 bDescriptorType = 0x25 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00 Interface 2 Alt 2 bLength = 0x000b bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0002 bNumEndpoints = 0x0001 bInterfaceClass = 0x0001 bInterfaceSubClass = 0x0002 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x07 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x24, 0x01, 0x03, 0x01, 0x01, 0x00 Additional Descriptor bLength = 0x0b bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x0b, 0x24, 0x02, 0x01, 0x01, 0x02, 0x10, 0x01, 0x08 | 0x22, 0x56, 0x00 Endpoint 0 bLength = 0x0009 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x002e bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Additional Descriptor bLength = 0x07 bDescriptorType = 0x25 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00 Interface 2 Alt 3 bLength = 0x000b bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0003 bNumEndpoints = 0x0001 bInterfaceClass = 0x0001 bInterfaceSubClass = 0x0002 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x07 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x24, 0x01, 0x03, 0x01, 0x01, 0x00 Additional Descriptor bLength = 0x0b bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x0b, 0x24, 0x02, 0x01, 0x01, 0x02, 0x10, 0x01, 0x08 | 0x11, 0x2b, 0x00 Endpoint 0 bLength = 0x0009 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0019 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Additional Descriptor bLength = 0x07 bDescriptorType = 0x25 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00 Interface 2 Alt 4 bLength = 0x000b bDescriptorType = 0x0004 bInterfaceNumber = 0x0002 bAlternateSetting = 0x0004 bNumEndpoints = 0x0001 bInterfaceClass = 0x0001 bInterfaceSubClass = 0x0002 bInterfaceProtocol = 0x0000 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x07 bDescriptorType = 0x24 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x24, 0x01, 0x03, 0x01, 0x01, 0x00 Additional Descriptor bLength = 0x0b bDescriptorType = 0x24 bDescriptorSubType = 0x02 RAW dump: 0x00 | 0x0b, 0x24, 0x02, 0x01, 0x01, 0x02, 0x10, 0x01, 0x08 | 0x40, 0x1f, 0x00 Endpoint 0 bLength = 0x0009 bDescriptorType = 0x0005 bEndpointAddress = 0x0084 <IN> bmAttributes = 0x0001 <ISOCHRONOUS> wMaxPacketSize = 0x0010 bInterval = 0x0001 bRefresh = 0x0000 bSynchAddress = 0x0000 Additional Descriptor bLength = 0x07 bDescriptorType = 0x25 bDescriptorSubType = 0x01 RAW dump: 0x00 | 0x07, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00 -- I am currently away on leave, traveling through time and will be returning last week. Life is tough, but it's tougher when you're stupid.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D892AD1.8060005>