Date: Wed, 1 Jun 2011 13:09:12 +0200 From: Hans Petter Selasky <hselasky@c2i.net> To: Boris Samorodov <bsam@ipt.ru> Cc: freebsd-multimedia@freebsd.org Subject: Re: Pre-release of webcamd [v0.2.4] Message-ID: <201106011309.12296.hselasky@c2i.net> In-Reply-To: <23778750@bb.ipt.ru> References: <201105240020.49377.hselasky@c2i.net> <201106011150.13316.hselasky@c2i.net> <23778750@bb.ipt.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 01 June 2011 12:25:05 Boris Samorodov wrote: > Hi, > > On Wed, 1 Jun 2011 11:50:13 +0200 Hans Petter Selasky wrote: > > On Wednesday 01 June 2011 11:41:13 Boris Samorodov wrote: > > > Running: > > > ----- > > > % pwcview > > > Webcam set to: 320x240 (sif) at 5 fps # OK (shaky, but it's 5 fps) > > > % pwcview -f 30 > > > Webcam set to: 320x240 (sif) at 30 fps # shaky video, (5 fps?) > > > % pwcview -s vga > > > Webcam set to: 640x480 (vga) at 5 fps # seems to use 30 fps > > > % pwcview -s vga -f 5 > > > Webcam set to: 640x480 (vga) at 5 fps # seems to use 30 fps > > > ----- > > > > > > Thanks! > > > > Hi, > > > > The shakyness > > I'm not sure if my english is good here. When I say "shaky" it means > that video is stable (fixed) for some moments, than changes and stable > again. But it's OK for the first command since 5 fps is the default > according to PWCVIEW(1) and video changes about 5 times per second. > > The problem is with the second video which should change 30 times > per second. It does not. And I'm not sure that a buffer change may > help here since I get good vga (-s vga) video with 30 fpc (i.e. > existing buffers allows it). > > The next problem is that just with the option "-s vga" the resulting > fps should be 5 (the default). But I get a good 30 fps video. > > And the last problem is that adding "-f 5" to "-s vga" option > does not result in 5 fps video -- I get good 30 fps video! > > > I think can be fixed by increasing the buffer size used by UVC > > video driver, it is currently very small, only 2*7ms: > > > > Index: patches/uvcvideo.h.diff > > =================================================================== > > --- patches/uvcvideo.h.diff (revision 1788) > > +++ patches/uvcvideo.h.diff (working copy) > > @@ -8,7 +8,7 @@ > > > > +#define UVC_URBS 2 > > > > /* Maximum number of packets per URB. */ > > > > -#define UVC_MAX_PACKETS 32 > > > > -+#define UVC_MAX_PACKETS 56 > > ++#define UVC_MAX_PACKETS (8*16) /* ms/8 for HighSpeed */ > > > > /* Maximum number of video buffers. */ > > #define UVC_MAX_VIDEO_BUFFERS 32 > > /* Maximum status buffer size in bytes of interrupt URB. */ > > However I tested the patch with webcamd 0.1.26 (just editted by hand > the existing patch, rebuild/reinstall webcamd, replug my cam). > Nothing has changed. > > > This value should be dynamic depending on various factors like device > > speed and endpoint configuration. I have found any time yet to make the > > change. Hi, /* Maximum number of video buffers. */ #define UVC_MAX_VIDEO_BUFFERS 32 Then it might be the video buffer which is too small? Try tuning other variables and/or build webcamd with debugging support. And turn on the debugging with -s and -m options for webcamd. --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201106011309.12296.hselasky>