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>
index | next in thread | raw e-mail
(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.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D892AD1.8060005>
