From: David P. <da...@de...> - 2012-02-04 21:00:00
|
Sebastian, Increase the value of the roundrobin_skip parameter until it stops doing that. David On 04/02/12 17:54, Sebastian Arcus wrote: > I've just setup motion on a Linux server to use 4 different uvc webcams. > Everything seems to be working fine, except that the images on the http > stream seem to corrupt every few seconds and mix up with parts of frames > from the other cameras. Am I doing something obviously wrong - is this a > known issue? > > Sebastian Just a follow up - the frames merge/mix-up/corruption between cameras only seems to happen when using mjpeg mode. If I select another palette - the frames look fine. -- |
From: Sebastian A. <sh...@op...> - 2012-02-05 09:42:58
|
Hi David, Thanks for the suggestion. One of the first things that crossed my mind was the round robin. By setting both the roundrobin_frames and roundrobin_skip to really high values (100.000) and switchfilter to "on" - the footage is a bit better - but corruption still creeps in every few minutes (before it was every few seconds) - then it goes away for a while. I don't understand: 1. Why is this happening - and only with mjpeg palette? 2. All my cameras are usb uvc webcams. The documentation reads that the roundrobin feature is automatically activated when several threads share the same video device - and not for usb webcams. This is clearly not my case - why would roundrobin be active? Thanks again for any help, Sebastian On 04/02/12 21:01, David Powell wrote: > > Sebastian, > > Increase the value of the roundrobin_skip parameter until it stops doing > that. > > David > > On 04/02/12 17:54, Sebastian Arcus wrote: > >> I've just setup motion on a Linux server to use 4 different uvc webcams. >> Everything seems to be working fine, except that the images on the http >> stream seem to corrupt every few seconds and mix up with parts of frames >> from the other cameras. Am I doing something obviously wrong - is this a >> known issue? >> >> Sebastian > Just a follow up - the frames merge/mix-up/corruption between cameras > only seems to happen when using mjpeg mode. If I select another palette > - the frames look fine. > > -- Linux CCTV for Buses - www.open-t.co.uk/iroko |
From: Joerg W. <mo...@al...> - 2012-02-05 10:20:33
|
Hello Sebastian, of course you are right about roundrobin. It is not active unless you share a BTTV device. Bute there is an 'and' in your statement... switchfilter supresses most of this kind of trouble. You can activate switchfilter even when there is no roundrobin. I haven't seen motion mixing frames yet. I can only imagine that the problem is with the uvc driver. Do you run more that one cam on a single USB input? Brgds Joerg. -- Sebastian Arcus wrote: Hi David, Thanks for the suggestion. One of the first things that crossed my mind was the round robin. By setting both the roundrobin_frames and roundrobin_skip to really high values (100.000) and switchfilter to "on" - the footage is a bit better - but corruption still creeps in every few minutes (before it was every few seconds) - then it goes away for a while. I don't understand: 1. Why is this happening - and only with mjpeg palette? 2. All my cameras are usb uvc webcams. The documentation reads that the roundrobin feature is automatically activated when several threads share the same video device - and not for usb webcams. This is clearly not my case - why would roundrobin be active? Thanks again for any help, Sebastian On 04/02/12 21:01, David Powell wrote: > > Sebastian, > > > Increase the value of the roundrobin_skip parameter until it stops doing > that. > > David > > > On 04/02/12 17:54, Sebastian Arcus wrote: > > >> I've just setup motion on a Linux server to use 4 different uvc >> webcams. Everything seems to be working fine, except that the images on >> the http stream seem to corrupt every few seconds and mix up with parts >> of frames from the other cameras. Am I doing something obviously wrong - >> is this a known issue? >> >> Sebastian >> > Just a follow up - the frames merge/mix-up/corruption between cameras > only seems to happen when using mjpeg mode. If I select another palette - > the frames look fine. > > |
From: Sebastian A. <sh...@op...> - 2012-02-05 10:33:04
|
Hi Joerg, Indeed - I run 4 cameras spread over 2 usb root hubs ( I have a pci usb card as well as the motherboard usb root hub). With mjpg_streamer I can run all the cameras ok without a problem. With ffmpeg I can record all the cameras without any image corruption. Maybe the problem is indeed from the uvc driver - but it only seems to surface when using motion. Sebastian On 05/02/12 10:15, Joerg WEBER wrote: > Hello Sebastian, > > of course you are right about roundrobin. It is not active unless you > share a BTTV device. > > Bute there is an 'and' in your statement... switchfilter supresses most of > this kind of trouble. You can activate switchfilter even when there is no > roundrobin. > > I haven't seen motion mixing frames yet. I can only imagine that the > problem is with the uvc driver. Do you run more that one cam on a single > USB input? > > > Brgds Joerg. > -- Linux CCTV for Buses - www.open-t.co.uk/iroko |
From: Sebastian A. <sh...@op...> - 2012-02-05 13:22:14
|
On 05/02/12 10:15, Joerg WEBER wrote: > Hello Sebastian, > > of course you are right about roundrobin. It is not active unless you > share a BTTV device. > > Bute there is an 'and' in your statement... switchfilter supresses most of > this kind of trouble. You can activate switchfilter even when there is no > roundrobin. > > I haven't seen motion mixing frames yet. I can only imagine that the > problem is with the uvc driver. Do you run more that one cam on a single > USB input? > > > Brgds Joerg. > What I really can't get my head around is the fact that I am able to run mjpg_streamer and then record with ffmpeg from mjpg_streamer using all 4 cameras, on the same machine, on same usb ports, with the same uvc driver and kernel. In fact ffmpeg is recording right now at 5fps without any problems, and I'm looking at the images streamed by mjpg_streamer on all 4 cameras. Is motion using some uvc code of its own - which could be different from what mjpg_streamer is using through the uvc kernel module? Sebastian -- Linux CCTV for Buses - www.open-t.co.uk/iroko |
From: Joerg W. <mo...@al...> - 2012-02-05 15:33:30
|
Sebastian, I have never used USB cams before, so I cannot say much about it. Maybe someone else on this list has got some more experience. Besides that, I was never dealing much with the capture code, but more with the detection algos. Could you please post the few syslog lines from motion startup, where the video device is openend and the palette is choosen? Maybe someone with a similar setup can take a closer look. Thank you. Brgds Joerg. -- Sebastian Arcus wrote: On 05/02/12 10:15, Joerg WEBER wrote: > Hello Sebastian, > > > of course you are right about roundrobin. It is not active unless you > share a BTTV device. > > Bute there is an 'and' in your statement... switchfilter supresses most > of this kind of trouble. You can activate switchfilter even when there is > no roundrobin. > > I haven't seen motion mixing frames yet. I can only imagine that the > problem is with the uvc driver. Do you run more that one cam on a single > USB input? > > > > Brgds Joerg. > > What I really can't get my head around is the fact that I am able to run mjpg_streamer and then record with ffmpeg from mjpg_streamer using all 4 cameras, on the same machine, on same usb ports, with the same uvc driver and kernel. In fact ffmpeg is recording right now at 5fps without any problems, and I'm looking at the images streamed by mjpg_streamer on all 4 cameras. Is motion using some uvc code of its own - which could be different from what mjpg_streamer is using through the uvc kernel module? Sebastian |
From: Sebastian A. <sh...@op...> - 2012-02-05 17:22:13
|
On 05/02/12 15:33, Joerg WEBER wrote: > Sebastian, > > I have never used USB cams before, so I cannot say much about it. Maybe > someone else on this list has got some more experience. Besides that, I > was never dealing much with the capture code, but more with the detection > algos. > > Could you please post the few syslog lines from motion startup, where the > video device is openend and the palette is choosen? Maybe someone with a > similar setup can take a closer look. > Thank you. > > Brgds Joerg. > > Hi Joerg, Thanks for your reply. Just a quick note to say that I've also compiled version 3.2.12 and it has the same problem. The version I was using before was trunkREV552 - which I believe is newer. As per your suggestion, I'm including below the motion log for REV552 while starting up - using 4 threads/4 usb webcams: [0] [NTC] [ALL] conf_load: Processing thread 0 - config file /etc/motion/motion.conf [0] [ALR] [ALL] conf_cmdparse: Unknown config option "sdl_threadnr" [0] [NTC] [ALL] config_thread: Processing config file /etc/motion/thread1.conf [0] [NTC] [ALL] config_thread: Processing config file /etc/motion/thread2.conf [0] [NTC] [ALL] config_thread: Processing config file /etc/motion/thread3.conf [0] [NTC] [ALL] config_thread: Processing config file /etc/motion/thread4.conf [0] [NTC] [ALL] motion_startup: Using default log level (NTC) (6) [0] [NTC] [ALL] motion_startup: Motion trunkREV552 Started [0] [NTC] [ALL] motion_startup: Logging to syslog [0] [NTC] [ALL] motion_startup: Using log type (ALL) log level (NTC) [0] [NTC] [ENC] ffmpeg_init: ffmpeg LIBAVCODEC_BUILD 3478272 LIBAVFORMAT_BUILD 3476992 [0] [NTC] [ALL] main: Thread 1 is from /etc/motion/thread1.conf [0] [NTC] [ALL] main: Thread 1 is device: /dev/cam0 input -1 [0] [NTC] [ALL] main: Stream port 9090 [0] [NTC] [ALL] main: Thread 2 is from /etc/motion/thread2.conf [0] [NTC] [ALL] main: Thread 2 is device: /dev/video3 input -1 [1] [NTC] [ALL] motion_init: Thread 1 started , motion detection Enabled [0] [NTC] [ALL] main: Stream port 9091 [1] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/cam0 and input -1 [0] [NTC] [ALL] main: Thread 3 is from /etc/motion/thread3.conf [2] [NTC] [ALL] motion_init: Thread 2 started , motion detection Enabled [1] [NTC] [VID] v4l2_get_capability: ------------------------ cap.driver: "uvcvideo" cap.card: "UVC Camera (046d:0809)" cap.bus_info: "usb-0000:05:08.2-1.4.4" cap.capabilities=0x04000001 ------------------------ [0] [NTC] [ALL] main: Thread 3 is device: /dev/video1 input -1 [1] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE [0] [NTC] [ALL] main: Stream port 9092 [1] [NTC] [VID] v4l2_get_capability: - STREAMING [0] [NTC] [ALL] main: Thread 4 is from /etc/motion/thread4.conf [1] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000 [3] [NTC] [ALL] motion_init: Thread 3 started , motion detection Enabled [1] [NTC] [VID] v4l2_select_input: - CAMERA [0] [NTC] [ALL] main: Thread 4 is device: /dev/cam3 input -1 [1] [WRN] [VID] v4l2_select_input: Device doesn't support VIDIOC_G_STD [0] [NTC] [ALL] main: Stream port 9093 [4] [NTC] [ALL] motion_init: Thread 4 started , motion detection Enabled [0] [NTC] [ALL] main: Waiting for threads to finish, pid: 19609 [1] [NTC] [VID] v4l2_do_set_pix_format: Testing palette MJPG (640x480) [1] [NTC] [VID] v4l2_do_set_pix_format: Using palette MJPG (640x480) bytesperlines 0 sizeimage 213333 colorspace 00000008 [1] [NTC] [VID] v4l2_scan_controls: found control 0x00980900, "Brightness", range 0,255 [1] [NTC] [VID] v4l2_scan_controls: "Brightness", default 128, current 128 [1] [NTC] [VID] v4l2_scan_controls: found control 0x00980901, "Contrast", range 0,255 [1] [NTC] [VID] v4l2_scan_controls: "Contrast", default 32, current 32 [1] [NTC] [VID] v4l2_scan_controls: found control 0x00980902, "Saturation", range 0,255 [1] [NTC] [VID] v4l2_scan_controls: "Saturation", default 28, current 28 [1] [NTC] [VID] v4l2_scan_controls: found control 0x00980913, "Gain", range 0,255 [1] [NTC] [VID] v4l2_scan_controls: "Gain", default 0, current 0 [1] [NTC] [VID] vid_v4lx_start: Using V4L2 [1] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items [2] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video3 and input -1 [2] [NTC] [VID] v4l2_get_capability: ------------------------ cap.driver: "uvcvideo" cap.card: "Microsoft LifeCam VX-5000" cap.bus_info: "usb-0000:05:08.2-2.4.4" cap.capabilities=0x04000001 ------------------------ [2] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE [2] [NTC] [VID] v4l2_get_capability: - STREAMING [2] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000 [2] [NTC] [VID] v4l2_select_input: - CAMERA [2] [WRN] [VID] v4l2_select_input: Device doesn't support VIDIOC_G_STD [2] [NTC] [VID] v4l2_do_set_pix_format: Testing palette MJPG (640x480) [2] [NTC] [VID] v4l2_do_set_pix_format: Using palette MJPG (640x480) bytesperlines 0 sizeimage 614400 colorspace 00000000 [2] [NTC] [VID] v4l2_scan_controls: found control 0x00980900, "Brightness", range -16,16 [2] [NTC] [VID] v4l2_scan_controls: "Brightness", default 0, current 0 [2] [NTC] [VID] v4l2_scan_controls: found control 0x00980901, "Contrast", range 1,32 [2] [NTC] [VID] v4l2_scan_controls: "Contrast", default 15, current 15 [2] [NTC] [VID] v4l2_scan_controls: found control 0x00980902, "Saturation", range 0,60 [2] [NTC] [VID] v4l2_scan_controls: "Saturation", default 14, current 14 [2] [NTC] [VID] v4l2_scan_controls: found control 0x00980903, "Hue", range -45,45 [2] [NTC] [VID] v4l2_scan_controls: "Hue", default 0, current 0 [2] [NTC] [VID] v4l2_scan_controls: found control 0x00980910, "Gamma", range 100,200 [2] [NTC] [VID] v4l2_scan_controls: "Gamma", default 150, current 150 [2] [NTC] [VID] vid_v4lx_start: Using V4L2 [2] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items [3] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video1 and input -1 [3] [NTC] [VID] v4l2_get_capability: ------------------------ cap.driver: "uvcvideo" cap.card: "Microsoft LifeCam VX-5000" cap.bus_info: "usb-0000:05:08.2-4.4.4" cap.capabilities=0x04000001 ------------------------ [3] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE [3] [NTC] [VID] v4l2_get_capability: - STREAMING [3] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000 [3] [NTC] [VID] v4l2_select_input: - CAMERA [3] [WRN] [VID] v4l2_select_input: Device doesn't support VIDIOC_G_STD [3] [NTC] [VID] v4l2_do_set_pix_format: Testing palette MJPG (640x480) [3] [NTC] [VID] v4l2_do_set_pix_format: Using palette MJPG (640x480) bytesperlines 0 sizeimage 614400 colorspace 00000000 [3] [NTC] [VID] v4l2_scan_controls: found control 0x00980900, "Brightness", range -16,16 [3] [NTC] [VID] v4l2_scan_controls: "Brightness", default 0, current 0 [3] [NTC] [VID] v4l2_scan_controls: found control 0x00980901, "Contrast", range 1,32 [3] [NTC] [VID] v4l2_scan_controls: "Contrast", default 15, current 15 [3] [NTC] [VID] v4l2_scan_controls: found control 0x00980902, "Saturation", range 0,60 [3] [NTC] [VID] v4l2_scan_controls: "Saturation", default 14, current 14 [3] [NTC] [VID] v4l2_scan_controls: found control 0x00980903, "Hue", range -45,45 [3] [NTC] [VID] v4l2_scan_controls: "Hue", default 0, current 0 [3] [NTC] [VID] v4l2_scan_controls: found control 0x00980910, "Gamma", range 100,200 [3] [NTC] [VID] v4l2_scan_controls: "Gamma", default 150, current 150 [3] [NTC] [VID] vid_v4lx_start: Using V4L2 [3] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items [4] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/cam3 and input -1 [4] [NTC] [VID] v4l2_get_capability: ------------------------ cap.driver: "uvcvideo" cap.card: "VF0610 Live! Cam Socialize HD" cap.bus_info: "usb-0000:00:1d.7-3.4.1" cap.capabilities=0x04000001 ------------------------ [4] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE [4] [NTC] [VID] v4l2_get_capability: - STREAMING [4] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000 [4] [NTC] [VID] v4l2_select_input: - CAMERA [4] [WRN] [VID] v4l2_select_input: Device doesn't support VIDIOC_G_STD [4] [NTC] [VID] v4l2_do_set_pix_format: Testing palette MJPG (640x480) [4] [NTC] [VID] v4l2_do_set_pix_format: Using palette MJPG (640x480) bytesperlines 0 sizeimage 614400 colorspace 00000008 [4] [NTC] [VID] v4l2_scan_controls: found control 0x00980900, "Brightness", range -128,127 [4] [NTC] [VID] v4l2_scan_controls: "Brightness", default 0, current 116 [4] [NTC] [VID] v4l2_scan_controls: found control 0x00980901, "Contrast", range 64,255 [4] [NTC] [VID] v4l2_scan_controls: "Contrast", default 128, current 128 [4] [NTC] [VID] v4l2_scan_controls: found control 0x00980902, "Saturation", range 0,255 [4] [NTC] [VID] v4l2_scan_controls: "Saturation", default 128, current 128 [4] [NTC] [VID] v4l2_scan_controls: found control 0x00980903, "Hue", range -128,127 [4] [NTC] [VID] v4l2_scan_controls: "Hue", default 0, current 0 [4] [NTC] [VID] v4l2_scan_controls: found control 0x00980910, "Gamma", range 72,500 [4] [NTC] [VID] v4l2_scan_controls: "Gamma", default 100, current 100 [4] [NTC] [VID] v4l2_scan_controls: found control 0x00980913, "Gain", range 0,2 [4] [NTC] [VID] v4l2_scan_controls: "Gain", default 0, current 0 [4] [NTC] [VID] vid_v4lx_start: Using V4L2 [4] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items [4] [NTC] [STR] http_bindsock: motion-stream testing : IPV4 addr: 0.0.0.0 port: 9093 [4] [NTC] [STR] http_bindsock: motion-stream Bound : IPV4 addr: 0.0.0.0 port: 9093 [4] [NTC] [ALL] motion_init: Started motion-stream server in port 9093 auth Disabled Corrupt JPEG data: 538 extraneous bytes before marker 0xd8 Invalid JPEG file structure: two SOI markers [1] [NTC] [STR] http_bindsock: motion-stream testing : IPV4 addr: 0.0.0.0 port: 9090 [1] [NTC] [STR] http_bindsock: motion-stream Bound : IPV4 addr: 0.0.0.0 port: 9090 [1] [NTC] [ALL] motion_init: Started motion-stream server in port 9090 auth Disabled Invalid SOS parameters for sequential JPEG Huffman table 0x0a was not defined [2] [NTC] [STR] http_bindsock: motion-stream testing : IPV4 addr: 0.0.0.0 port: 9091 [2] [NTC] [STR] http_bindsock: motion-stream Bound : IPV4 addr: 0.0.0.0 port: 9091 [2] [NTC] [ALL] motion_init: Started motion-stream server in port 9091 auth Disabled [3] [NTC] [STR] http_bindsock: motion-stream testing : IPV4 addr: 0.0.0.0 port: 9092 [3] [NTC] [STR] http_bindsock: motion-stream Bound : IPV4 addr: 0.0.0.0 port: 9092 [3] [NTC] [ALL] motion_init: Started motion-stream server in port 9092 auth Disabled Corrupt JPEG data: premature end of data segment [1] [CRT] [VID] mjpegtoyuv420p: Corrupt image ... continue Corrupt JPEG data: 2082 extraneous bytes before marker 0xfe [3] [CRT] [VID] mjpegtoyuv420p: Corrupt image ... continue [4] [NTC] [ALL] motion_loop: End of event 1 [2] [NTC] [ALL] motion_loop: End of event 1 [1] [NTC] [ALL] motion_loop: End of event 1 [4] [NTC] [ALL] motion_loop: Thread exiting [4] [NTC] [STR] stream_stop: Closing motion-stream listen socket & active motion-stream sockets [4] [NTC] [STR] stream_stop: Closed motion-stream listen socket & active motion-stream sockets [4] [NTC] [VID] vid_close: Closing video device /dev/cam3 [3] [NTC] [ALL] motion_loop: End of event 1 [2] [NTC] [ALL] motion_loop: Thread exiting [2] [NTC] [STR] stream_stop: Closing motion-stream listen socket & active motion-stream sockets [2] [NTC] [STR] stream_stop: Closed motion-stream listen socket & active motion-stream sockets [2] [NTC] [VID] vid_close: Closing video device /dev/video3 [1] [NTC] [ALL] motion_loop: Thread exiting [1] [NTC] [STR] stream_stop: Closing motion-stream listen socket & active motion-stream sockets [1] [NTC] [STR] stream_stop: Closed motion-stream listen socket & active motion-stream sockets [1] [NTC] [VID] vid_close: Closing video device /dev/cam0 [3] [NTC] [ALL] motion_loop: Thread exiting [3] [NTC] [STR] stream_stop: Closing motion-stream listen socket & active motion-stream sockets [3] [NTC] [STR] stream_stop: Closed motion-stream listen socket & active motion-stream sockets [3] [NTC] [VID] vid_close: Closing video device /dev/video1 [0] [NTC] [ALL] main: Threads finished [0] [NTC] [ALL] main: Motion terminating |
From: Bob B. <bob...@bi...> - 2012-02-06 04:30:03
|
Hi Sebastian Thought I would chime in here and mention that I have the same basic problem with two UVC cameras each on two separate machines that exhibit the same tearing problem, only intermittently. I posted on it here maybe 6 months ago but for me it only appears maybe once every two days for an hour. I HUP the motion process every hour and it sometime restarts tearing, sometimes not. My extent of experimentation was to change USB controllers (no change noticed), add a separate USB2 card (no change) and lower the frame rate (5-3). I just don't have enough failure states to go on. I have been meaning to spend more time on it but never seem to get around to it! I use MJPEG mode as YUV is I think too much bandwidth for the USB controller, or rather the resolution gets dropped from 1280x1024 to something much smaller and even seems to drop to USB 1.1. Not much help sorry! Cheers Bob On 06/02/12 04:22, Sebastian Arcus wrote: |
From: pr <rom...@ho...> - 2012-02-06 05:02:40
|
Im new to motion, but Im trying to help out by looking at the motion source code related to the http webcam stream. You mentioned that when the image corruption happens, frames from each of the different cameras seem to 'mix' together. Can you provide some more detail on this? i.e, does the corruption happen in the exact same way across all four cameras? Same exact time & base image that gets blended? (example, is the image from cam1 being blended into all of the other cameras? Or is it something where cam1 blends into cam2, cam2 into cam3, etc.is there any pattern?) Also, can you confirm that youre using the 'video4linux2' driver? It should state something in the console output. By looking at the code, I can see that the webcam stuff basically gets called during the main program loop; each pass of the loop grabs the last frame from each camera and passes it off to the http stream routines. The webstream routines in turn store the frames in a camera-specific shared buffer that is used to then stream the images off to the web clients. Your description of 'image blending' leads me to believe that the webcam image buffers are being incorrectly fed frames from the wrong camera & thus causing the corruption/blending. Im still looking at the code & trying to spot any obvious points where the threads might be getting confused as to what video4linux device they're supposed to be reading from, or perhaps where the webcam routines might be being fed the 'wrong camera' info & thus putting the frame into the wrong buffer. More details would help pr From: Bob Bob [mailto:bob...@bi...] Sent: Sunday, February 05, 2012 8:30 PM To: Motion discussion list Subject: Re: [Motion-user] Frames corrupted and mixed up with portion of frames from other cameras Hi Sebastian Thought I would chime in here and mention that I have the same basic problem with two UVC cameras each on two separate machines that exhibit the same tearing problem, only intermittently. I posted on it here maybe 6 months ago but for me it only appears maybe once every two days for an hour. I HUP the motion process every hour and it sometime restarts tearing, sometimes not. My extent of experimentation was to change USB controllers (no change noticed), add a separate USB2 card (no change) and lower the frame rate (5-3). I just don't have enough failure states to go on. I have been meaning to spend more time on it but never seem to get around to it! I use MJPEG mode as YUV is I think too much bandwidth for the USB controller, or rather the resolution gets dropped from 1280x1024 to something much smaller and even seems to drop to USB 1.1. Not much help sorry! Cheers Bob On 06/02/12 04:22, Sebastian Arcus wrote: |
From: Sebastian A. <sh...@op...> - 2012-02-06 08:42:14
|
On 06/02/12 04:29, Bob Bob wrote: > Hi Sebastian > > Thought I would chime in here and mention that I have the same basic > problem with two UVC cameras each on two separate machines that exhibit > the same tearing problem, only intermittently. I posted on it here maybe > 6 months ago but for me it only appears maybe once every two days for an > hour. I HUP the motion process every hour and it sometime restarts > tearing, sometimes not. My extent of experimentation was to change USB > controllers (no change noticed), add a separate USB2 card (no change) > and lower the frame rate (5-3). I just don't have enough failure states > to go on. > > I have been meaning to spend more time on it but never seem to get > around to it! I use MJPEG mode as YUV is I think too much bandwidth for > the USB controller, or rather the resolution gets dropped from 1280x1024 > to something much smaller and even seems to drop to USB 1.1. > > Not much help sorry! > > Cheers Bob Hi Bob, I really appreciate you sharing your experience with this problem - as I was wondering if anybody else has seen it. I also have an internal usb pci card - so I tried both the motherboard's usb root hub and the pci's usb ports - and doesn't seem to make a difference. Lowering the resolution and fps seems to help a bit - but not by much. The worse of the culprits seem to be the Microsoft VX-5000 cameras. The Logitech Webcam Pro 9000 and the Creative Socialize HD 720p seem a bit better. The problem doesn't seem to occur when running in YUYV mode - but like you, I need the MJPEG mode as otherwise I can't run all 4 cameras, nor can I achieve the resolution and fps required. I'm open to any other test anybody can think here. Sebastian |