I bought an other webcam today this time a QuickCam Orbit/Sphere AF but it has the exact same issues and also seem to be a bcdDevice 0.08 device /me cries (continuing saga day 6 ...)
Paulo Assis schreef: > > > I did a lot more testing today (this is full day 5 already) and I found > some very disturbing discoveries! > > I can watch the webcam at width=320:height=240:fps=30 and have the > correct result. However when going over this resolution I will get only > 15 fps and i can max go to 640x480 resolution. > > Any idea why a tool as guvcviewer seems to output 800x600 and even > 1600x1200 but mplayer does not want go higher as 640x480 (it does go > lower) > > > I believe mplayer checks your hardware and sets resolution accordingly > (not sure about this though). I believe it checks the v4l fields see the (attached) v4l-info2.log could somebody run these commands on there good working >2MP webcam and sent the test to the mailinglist? > � > > > I upgraded to guvcview 1.0.2 and tested some more there is still the > issue that i get lower fps when recording. Could somebody test recording > 800x600 with 25fps and sound, if its really 25fps the sound will be > in sync. > > > In the case of guvcview you should check the resulting fps in the avi > header, use avidemux to check the avi properties. > Sound can become out of sync due to a bad microphone or if fps varies a > lot during capture, guvcview will write the average fps (total number of > frames / total time of capture) to the avi header. > The quality of video capture is very dependent on your hardware since > video processing requires a lot from ones system (processor, memory, > disk, ...), in your case and although the eeepc is a damn good machine > for it's size and price, I wouldn't consider it a prime candidate for > this type of usage. � > I did some testing with guvcview and my expectations where correct I tried to record a 800x600 stream with 25 fps. Result is complete out of sync audio and the fps was going up and down during recording (auto exposure was off) (result was a average of 13.833 fps) BTW its kind of cool to see that guvcview is using a direct interface to do the avi muxing (ID_CLIP_INFO_VALUE1) Please see the attached capture-10.log for all the info on the recording. Could somebody please do some testing with there device and see what the highest possible resolution is with 25fps on there system. I would really appreciate this. Please also test this with the mplayer command as I did. I have an atom 1,6 GHZ 1GB DDR ram eeepc that would be fast enough for there kinds of recording, and during recoding htop show the cpu load is very low around 20%. And bwm-ng also tells me the hard-disk throughput is about 14 MB/s so the hardware should not be a bottleneck here. But maybe can test this on there system and check there throughput values. Maybe an idea to also use mpeg4 for encoding, I tried to get named pipes to work with guvciewer to make ffmpeg take it as input but I could not get it to work. > > Also i tested the v4l2 fields of the webcam and there are a lot of > errors > and non working fields. Is the device really v4l2 compatible? Could > somebody check this out further? > > > Maybe you had some bad luck and bought the 2008 model, this camera has > some serious firmware issues causing all sorts of problems in linux, the > 2009 models according to logitech have these problems fixed: Yes i bought a 2008 model and today again a 2008 model from a store that usually have very very high resales and should have hat the latest version. What is the best 2MP+ webcam that works, are there any digital foto camaras or video camares that work with uvc, I don't and can't have any firewire interfaces (only usb) so IEEE 1394 is not an option. > http://forums.quickcamteam.net/showthread.php?tid=551 > > � > > > I also want to use the device on headless machines so no X. How can I > configure the device then so it does not use auto exposure...? > > > If you need a command line control application, you should consider > libwebcam: > > http://www.quickcamteam.net/software/libwebcam hmm this software is not in the debian repository (somebody feels like packaging it), but why cant i use standard v4l2 command line tools and mencoder and mplayer to get the job done in an universal way. > > � > > > I attacked all test reports I made that lead to my conclusions please > look at them. > > I can be contacted on chat.freenode.org <http://chat.freenode.org> > as /msg tuxcrafter > > Does somebody know a usb device that can be used for recording with v4l2 > capable tools at at-leased 25pfs and 800x600 some auto balancing and > focusing would be nice to. > > > If you need hardware autofocus, the best one I can remember is the > /QuickCam/ Vision Pro, but there is also the creative cam optia AF. > They are both UVC cameras so should do fine in linux. Isn't the QuickCam Vision Pro exactly the same device as the Pro 9000 except branded as special MACOS version? If i can find the creative cam optia AF i think i will buy it, any ideas for better webcams or digital camaras with usb interfaces? > � > > > Again please checkout the attachment. > > Thanks in advance for help. > > Jelle de Jong > > > Best regards, > Paulo Thanks, Best regards, Jelle de Jong
$ sudo lsusb Bus 001 Device 007: ID 046d:0994 Logitech, Inc. QuickCam Orbit/Sphere AF $ sudo lsusb -d 046d:0994 -v | grep bcdDevice bcdDevice 0.08 [ 207.178910] usb 1-4: new high speed USB device using ehci_hcd and address 7 [ 207.447000] usb 1-4: configuration #1 chosen from 1 choice [ 207.449881] usb 1-4: New USB device found, idVendor=046d, idProduct=0994 [ 207.449881] usb 1-4: New USB device strings: Mfr=0, Product=0, SerialNumber=2 [ 207.450897] usb 1-4: SerialNumber: 525D8420 [ 207.651516] uvcvideo: Found UVC 1.00 device <unnamed> (046d:0994) [ 207.666879] input: UVC Camera (046d:0994) as /class/input/input9 [ 207.670876] usbcore: registered new interface driver snd-usb-audio [ 207.670876] usbcore: registered new interface driver uvcvideo [ 207.670876] USB Video Class driver (v0.1.0) $ sudo v4lctl /class/input/input9 ioctl: VIDIOC_G_STD(std=0xb7fb9980bffc37b8 [PAL_H,PAL_I,PAL_D,PAL_K,PAL_M,PAL_N,PAL_Nc,NTSC_M,NTSC_M_JP,SECAM_G,SECAM_H,SECAM_K,SECAM_K1,SECAM_L,?ATSC_8_VSB,ATSC_16_VSB,(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)]): Invalid argument config: invalid value for input: Television valid choices for "input": "Camera 1" config: invalid value for norm: PAL-BG valid choices for "norm": no handler for /class/input/input9 $ sudo v4l-info /dev/video0 ### v4l2 device info [/dev/video0] ### general info VIDIOC_QUERYCAP driver : "uvcvideo" card : "UVC Camera (046d:0994)" bus_info : "0000:00:1d.7" version : 0.1.0 capabilities : 0x4000001 [VIDEO_CAPTURE,STREAMING] standards inputs VIDIOC_ENUMINPUT(0) index : 0 name : "Camera 1" type : CAMERA audioset : 0 tuner : 0 std : 0x0 [] status : 0x0 [] video capture VIDIOC_ENUM_FMT(0,VIDEO_CAPTURE) index : 0 type : VIDEO_CAPTURE flags : 1 description : "MJPEG" pixelformat : 0x47504a4d [MJPG] VIDIOC_ENUM_FMT(1,VIDEO_CAPTURE) index : 1 type : VIDEO_CAPTURE flags : 0 description : "YUV 4:2:2 (YUYV)" pixelformat : 0x56595559 [YUYV] VIDIOC_G_FMT(VIDEO_CAPTURE) type : VIDEO_CAPTURE fmt.pix.width : 800 fmt.pix.height : 600 fmt.pix.pixelformat : 0x56595559 [YUYV] fmt.pix.field : NONE fmt.pix.bytesperline : 1600 fmt.pix.sizeimage : 960000 fmt.pix.colorspace : SRGB fmt.pix.priv : 0 controls VIDIOC_QUERYCTRL(BASE+0) id : 9963776 type : INTEGER name : "Brightness" minimum : 0 maximum : 255 step : 1 default_value : 128 flags : 0 VIDIOC_QUERYCTRL(BASE+1) id : 9963777 type : INTEGER name : "Contrast" minimum : 0 maximum : 255 step : 1 default_value : 32 flags : 0 VIDIOC_QUERYCTRL(BASE+2) id : 9963778 type : INTEGER name : "Saturation" minimum : 0 maximum : 255 step : 1 default_value : 32 flags : 0 ### video4linux device info [/dev/video0] ### general info VIDIOCGCAP name : "UVC Camera (046d:0994)" type : 0x1 [CAPTURE] channels : 1 audios : 0 maxwidth : 960 maxheight : 720 minwidth : 48 minheight : 32 channels ioctl VIDIOCGCHAN: Invalid argument tuner ioctl VIDIOCGTUNER: Invalid argument audio ioctl VIDIOCGAUDIO: Invalid argument picture VIDIOCGPICT brightness : 32896 hue : 0 colour : 8224 contrast : 8224 whiteness : 0 depth : 16 palette : YUYV buffer ioctl VIDIOCGFBUF: Invalid argument window VIDIOCGWIN x : 0 y : 0 width : 800 height : 600 chromakey : 0 flags : 0 # unable to give higher resulolutions then 640x480, what is going on? $ mplayer -identify tv:// -tv driver=v4l2:device=/dev/video0:adevice=/dev/dsp1:immediatemode=0:forceaudio:outfmt=YUY2:width=960:height=720 # unable to render 25 fps on resultions higher then 320x $ mplayer -identify tv:// -tv driver=v4l2:device=/dev/video0:adevice=/dev/dsp1:immediatemode=0:forceaudio:outfmt=YUY2:width=800:height=600:fps=25 $ mencoder tv:// -tv driver=v4l2:device=/dev/video0:adevice=/dev/dsp1:immediatemode=0:forceaudio:outfmt=YUY2:width=800:height=600:fps=25 -oac lavc -lavcopts acodec=libmp3lame:abitrate=128 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2240:threads=2 -of lavf -lavfopts format=avi -o video1.avi $ sud
$ mplayer -v -identify -benchmark capture-10.avi MPlayer dev-SVN-r28785CPU vendor name: GenuineIntel max cpuid level: 2 CPU: Intel(R) Atom(TM) CPU N270 @ 1.60GHz (Family: 6, Model: 28, Stepping: 2) extended cpuid-level: 8 extended cache-info: 33587264 Detected cache-line size is 64 bytes Testing OS support for SSE... yes. Tests of OS support for SSE passed. CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNowExt: 0 SSE: 1 SSE2: 1 SSSE3: 1 Compiled with runtime CPU detection. get_path('codecs.conf') -> '/home/jelle/.mplayer/codecs.conf' Reading /home/jelle/.mplayer/codecs.conf: Can't open '/home/jelle/.mplayer/codecs.conf': No such file or directory Reading /etc/mplayer/codecs.conf: Can't open '/etc/mplayer/codecs.conf': No such file or directory Using built-in default codecs.conf. Configuration: --prefix=/usr --confdir=/etc/mplayer --datadir=/usr/share/mplayer --enable-xmga --enable-mga --enable-joystick --disable-tremor-internal --language=all --enable-largefiles --enable-menu --disable-libdvdcss-internal --enable-radio --enable-radio-capture --enable-xvmc --with-xvmclib=XvMCW --enable-win32dll --enable-tdfxfb --enable-s3fb --realcodecsdir=/usr/lib/codecs --xanimcodecsdir=/usr/lib/codecs --enable-gui --enable-runtime-cpudetection CommandLine: '-v' '-identify' '-benchmark' 'capture-10.avi' init_freetype Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay get_path('fonts') -> '/home/jelle/.mplayer/fonts' Using nanosleep() timing get_path('input.conf') -> '/home/jelle/.mplayer/input.conf' Can't open input config file /home/jelle/.mplayer/input.conf: No such file or directory Parsing input config file /etc/mplayer/input.conf Input config file /etc/mplayer/input.conf parsed: 89 binds Opening joystick device /dev/input/js0 Can't open joystick device /dev/input/js0: No such file or directory Can't init input joystick Setting up LIRC support... mplayer: could not connect to socket mplayer: No such file or directory Failed to open LIRC support. You will not be able to use your remote control. get_path('capture-10.avi.conf') -> '/home/jelle/.mplayer/capture-10.avi.conf' Playing capture-10.avi. get_path('sub/') -> '/home/jelle/.mplayer/sub/' [file] File size is 1328029856 bytes STREAM: [file] capture-10.avi STREAM: Description: File STREAM: Author: Albeu STREAM: Comment: based on the code from ??? (probably Arpi) LAVF_check: AVI format AVI file format detected. list_end=0x14A ======= AVI Header ======= us/frame: 72293 (fps=13.833) max bytes/sec: 0 padding: 0 MainAVIHeader.dwFlags: (65552) HAS_INDEX WAS_CAPTUREFILE frames total: 1380 initial: 0 streams: 2 Suggested BufferSize: 0 Size: 800 x 600 ========================== list_end=0xDC ==> Found video stream: 0 ID_VIDEO_ID=0 [aviheader] Video stream found, -vid 0 ====== STREAM Header ===== Type: vids FCC: YUY2 (32595559) Flags: 0 Priority: 0 Language: 0 InitialFrames: 0 Rate: 13832645/1000000 = 13.833 Start: 0 Len: 1380 Suggested BufferSize: 960000 Quality -1 Sample size: 0 ========================== Found 'bih', 40 bytes of 40 ======= VIDEO Format ====== biSize 40 biWidth 800 biHeight 600 biPlanes 1 biBitCount 24 biCompression 844715353='YUY2' biSizeImage 480000 =========================== list_end=0x14A ==> Found audio stream: 1 ID_AUDIO_ID=1 [aviheader] Audio stream found, -aid 1 ====== STREAM Header ===== Type: auds FCC: (0) Flags: 0 Priority: 0 Language: 0 InitialFrames: 0 Rate: 32000/2 = 16000.000 Start: 0 Len: 1596032 Suggested BufferSize: 0 Quality -1 Sample size: 2 ========================== Found 'wf', 18 bytes of 18 ======= WAVE Format ======= Format Tag: 1 (0x1) Channels: 1 Samplerate: 16000 avg byte/sec: 32000 Block align: 2 bits/sample: 16 cbSize: 0 ========================================================================== list_end=0x19E hdr=Name size=64 Name : hdr=Software size=64 Software : guvcview-1.0.2 hdr=Comments size=64 Comments : Sat Mar 14 18:51:11 2009 list_end=0x4F27C388 Found movie at 0x800 - 0x4F27C388 Reading INDEX block, 1489 chunks for 1380 frames (fpos=1328006032). AVI index offset: 0x0 (movi=0x800 idx0=0x800 idx1=0xEAE08) Auto-selected AVI video ID = 0 Auto-selected AVI audio ID = 1 Detected NON-INTERLEAVED AVI file format. AVI: Searching for audio stream (id:1) XXX initial v_pts=0.000 a_pos=0 (0.000) AVI video size=1324800000 (1380) audio size=3192064 (1596032) VIDEO: [YUY2] 800x600 24bpp 13.833 fps 106234.7 kbps (12968.1 kbyte/s) Auto-selected AVI audio ID = 1 [V] filefmt:3 fourcc:0x32595559 size:800x600 fps:13.833 ftime:=0.0723 Clip info: Name: ID_CLIP_INFO_NAME0=Name ID_CLIP_INFO_VALUE0= Software: guvcview-1.0.2 ID_CLIP_INFO_NAME1=Software ID_CLIP_INFO_VALUE1=guvcview-1.0.2 Comments: Sat Mar 14 18:51:11 2009 ID_CLIP_INFO_NAME2=Comments ID_CLIP_INFO_VALUE2= Sat Mar 14 18:51:11 2009 ID_CLIP_INFO_N=3 get_path('sub/') -> '/home/jelle/.mplayer/sub/' ID_FILENAME=capture-10.avi ID_DEMUXER=avini ID_VIDEO_FORMAT=YUY2 ID_VIDEO_BITRATE=106234712 ID_VIDEO_WIDTH=800 ID_VIDEO_HEIGHT=600 ID_VIDEO_FPS=13.833 ID_VIDEO_ASPECT=0.0000 ID_AUDIO_FORMAT=1 ID_AUDIO_BITRATE=256000 ID_AUDIO_RATE=0 ID_AUDIO_NCH=0 ID_LENGTH=99.76 ID_SEEKABLE=1 ID_CHAPTERS=0 open: No such file or directory [MGA] Couldn't open: /dev/mga_vid open: No such file or directory [MGA] Couldn't open: /dev/mga_vid [VO_TDFXFB] This driver only supports the 3Dfx Banshee, Voodoo3 and Voodoo 5. s3fb: Couldn't map S3 registers: Operation not permitted X11 opening display: :0.0 vo: X11 color mask: FFFFFF (R:FF0000 G:FF00 B:FF) vo: X11 running at 1440x900 with depth 24 and 32 bpp (":0.0" => local display) [x11] Detected wm supports layers. [x11] Using workaround for Metacity bugs. [x11] Detected wm supports NetWM. [x11] Detected wm supports ABOVE state. [x11] Detected wm supports BELOW state. [x11] Detected wm supports FULLSCREEN state. [x11] Current fstype setting honours FULLSCREEN ABOVE BELOW X atoms Disabling DPMS DPMSDisable stat: 1 [VO_XV] Using Xv Adapter #0 (Intel(R) Textured Video) [xv common] Drawing no colorkey. [xv common] Maximum source image dimensions: 1920x1088 ========================================================================== Opening video decoder: [raw] RAW Uncompressed Video VDec: vo config request - 800 x 600 (preferred colorspace: Packed YUY2) Trying filter chain: vo VDec: using Packed YUY2 as output csp (no 0) Movie-Aspect is undefined - no prescaling applied. VO Config (800x600->800x600,flags=0,'MPlayer',0x32595559) VO: [xv] 800x600 => 800x600 Packed YUY2 VO: Description: X11/Xv VO: Author: Gerd Knorr <kra...@goldbach.in-berlin.de> and others Xvideo image format: 0x32595559 (YUY2) packed Xvideo image format: 0x32315659 (YV12) planar Xvideo image format: 0x30323449 (I420) planar Xvideo image format: 0x59565955 (UYVY) packed Xvideo image format: 0x434d5658 (XVMC) planar using Xvideo port 98 for hw scaling Selected video codec: [rawyuy2] vfm: raw (RAW YUY2) ========================================================================== ID_VIDEO_CODEC=rawyuy2 ========================================================================== Opening audio decoder: [pcm] Uncompressed PCM audio decoder dec_audio: Allocating 2048 + 65536 = 67584 bytes for output buffer. AUDIO: 16000 Hz, 1 ch, s16le, 256.0 kbit/100.00% (ratio: 32000->32000) ID_AUDIO_BITRATE=256000 ID_AUDIO_RATE=16000 ID_AUDIO_NCH=1 Selected audio codec: [pcm] afm: pcm (Uncompressed PCM) ========================================================================== Building audio filter chain for 16000Hz/1ch/s16le -> 0Hz/0ch/??... [libaf] Adding filter dummy [dummy] Was reinitialized: 16000Hz/1ch/s16le [dummy] Was reinitialized: 16000Hz/1ch/s16le Trying preferred audio driver 'alsa', options '[none]' alsa-init: requested format: 16000 Hz, 1 channels, 9 alsa-init: using ALSA 1.0.19 alsa-init: setup for 1/2 channel(s) alsa-init: using device default alsa-init: pcm opened in blocking mode alsa-init: chunksize set to 1024 alsa-init: fragcount=8 alsa-init: got buffersize=16384 alsa-init: got period size 1024 alsa: 48000 Hz/1 channels/2 bpf/16384 bytes buffer/Signed 16 bit Little Endian AO: [alsa] 48000Hz 1ch s16le (2 bytes per sample) AO: Description: ALSA-0.9.x-1.x audio output AO: Author: Alex Beregszaszi, Zsolt Barat <j...@streamminister.de> AO: Comment: under developement Building audio filter chain for 16000Hz/1ch/s16le -> 48000Hz/1ch/s16le... [dummy] Was reinitialized: 16000Hz/1ch/s16le [libaf] Adding filter lavcresample [dummy] Was reinitialized: 48000Hz/1ch/s16le [dummy] Was reinitialized: 48000Hz/1ch/s16le ID_AUDIO_CODEC=pcm Starting playback... [libaf] Reallocating memory in module lavcresample, old len = 0, new len = 19395 Increasing filtered audio buffer size from 0 to 19344 *** [vo] Exporting mp_image_t, 800x600x16bpp YUV packed, 960000 bytes Unicode font: 255 glyphs. Unicode font: 255 glyphs. Increasing filtered audio buffer size from 19344 to 19376??,?% 0 0 Increasing filtered audio buffer size from 19376 to 19400 1.2% 1 0 Increasing filtered audio buffer size from 19400 to 19408% 1.2% 1 0 ds_fill_buffer: EOF reached (stream: audio) /1379 0% 2% 1.2% 1 0 ds_fill_buffer: EOF reached (stream: audio) ds_fill_buffer: EOF reached (stream: audio) /1380 0% 2% 1.2% 1 0 ds_fill_buffer: EOF reached (stream: video) EOF code: 1 99.7 A-V: -0.044 ct: -0.009 1380/1380 0% 2% 1.2% 1 0 BENCHMARKs: VC: 0.010s VO: 2.114s A: 1.229s Sys: 96.311s = 99.663s BENCHMARK%: VC: 0.0098% VO: 2.1208% A: 1.2334% Sys: 96.6360% = 100.0000% Uninit audio filters... [libaf] Removing filter lavcresample [libaf] Removing filter dummy Uninit audio: pcm Uninit video: raw Successfully enabled DPMS alsa-uninit: pcm closed vo: uninit ... Exiting... (End of file) ID_EXIT=EOF
_______________________________________________ Linux-uvc-devel mailing list Linux-uvc-devel@lists.berlios.de https://lists.berlios.de/mailman/listinfo/linux-uvc-devel