[Gstreamer-bugs] [Bug 136392] New - v4l buggy with Webcams based in qc-usb driver

bugzilla-daemon at widget.gnome.org bugzilla-daemon at widget.gnome.org
Sat Mar 6 09:47:57 PST 2004


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

http://bugzilla.gnome.org/show_bug.cgi?id=136392

Changed by acp at e-group.org.

--- shadow/136392	Sat Mar  6 12:47:57 2004
+++ shadow/136392.tmp.19197	Sat Mar  6 12:47:57 2004
@@ -0,0 +1,114 @@
+Bug#: 136392
+Product: GStreamer
+Version: HEAD CVS
+OS: Linux
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: normal
+Priority: Normal
+Component: gst-plugins
+AssignedTo: gstreamer-maint at bugzilla.gnome.org                            
+ReportedBy: acp at e-group.org               
+QAContact: gstreamer-maint at bugzilla.gnome.org
+TargetMilestone: HEAD
+URL: 
+Summary: v4l buggy with Webcams based in qc-usb driver
+
+v4l pluggin is buggy with Webcams based in qc-usb driver ,
+ Cause pluggin expect at least 2 frames to be queued as minimum :
+
+ ----- OUTPUT ------ 
+ 
+/usr/local/gstreamer/core/bin/gst-launch-0.7 v4lsrc device="/dev/video0" !
+sdlvideosink
+RUNNING pipeline ...
+/dev/video0 [v4l]: no overlay support
+ERROR         default(32654)
+v4l-overlay_calls.c(76):gst_v4l_set_overlay:<v4lsrc0> Executing v4l-conf
+failed.
+ERROR         default(32654)
+v4l-overlay_calls.c(76):gst_v4l_set_overlay:<v4lsrc0> system error: Conseguido
+ERROR: from element /pipeline0/v4lsrc0: Executing v4l-conf failed.
+Additional debug info:
+v4l-overlay_calls.c(76): gst_v4l_set_overlay: /pipeline0/v4lsrc0:
+system error: Conseguido
+Opened device 'Logitech USB Camera' ('/dev/video0') successfully
+Got 1 buffers ('YUV-4:2:2 (packed)') of size 416 KB
+Caught interrupt.
+Execution ended after 479 iterations (sum 44757233000 ns, average 93438899
+ns, min 530000 ns, max 1746394000 ns).
+[root at develop2 qc-usb-0.6.0]# rmmod quickcam
+[root at develop2 qc-usb-0.6.0]# insmod quickcam
+Using /lib/modules/2.4.22-1.2174.nptl/kernel/drivers/video/quickcam.o
+[root at develop2 qc-usb-0.6.0]# /usr/local/gstreamer/core/bin/gst-launch-0.7
+v4lsrc device="/dev/video0" ! sdlvideosink
+RUNNING pipeline ...
+/dev/video0 [v4l]: no overlay support
+ERROR         default(  799)
+v4l-overlay_calls.c(76):gst_v4l_set_overlay:<v4lsrc0> Executing v4l-conf
+failed.
+ERROR         default(  799)
+v4l-overlay_calls.c(76):gst_v4l_set_overlay:<v4lsrc0> system error: Conseguido
+ERROR: from element /pipeline0/v4lsrc0: Executing v4l-conf failed.
+Additional debug info:
+v4l-overlay_calls.c(76): gst_v4l_set_overlay: /pipeline0/v4lsrc0:
+system error: Conseguido
+Opened device 'Logitech USB Camera' ('/dev/video0') successfully
+ERROR         default(  799)
+v4lsrc_calls.c(192):gst_v4lsrc_capture_init:<v4lsrc0> (null)
+ERROR         default(  799)
+v4lsrc_calls.c(192):gst_v4lsrc_capture_init:<v4lsrc0> Not enough buffers.
+We got 1, we want at least 22
+ERROR: from element /pipeline0/v4lsrc0: Could not read from resource.
+Additional debug info:
+v4lsrc_calls.c(192): gst_v4lsrc_capture_init: /pipeline0/v4lsrc0:
+Not enough buffers. We got 1, we want at least 2
+ERROR: pipeline doesn't want to play.
+
+ --------------------
+
+ #define MIN_BUFFERS_QUEUED 2 (v4lsrc_calls.c" line 36 )
+
+ So using the utility that come with qc-usb , qcset :
+
+ qcset /dev/video0 compat=dblbuf , so it does that
+ 
+  v4lsrc->mbuf.frames = 2 , but however didn't work ... 
+
+ --- OUTPUT ---
+
+ /usr/local/gstreamer/core/bin/gst-launch-0.7 v4lsrc device="/dev/video0" !
+sdlvideosink
+RUNNING pipeline ...
+/dev/video0 [v4l]: no overlay support
+ERROR         default(32649)
+v4l-overlay_calls.c(76):gst_v4l_set_overlay:<v4lsrc0> Executing v4l-conf
+failed.
+ERROR         default(32649)
+v4l-overlay_calls.c(76):gst_v4l_set_overlay:<v4lsrc0> system error: Conseguido
+ERROR: from element /pipeline0/v4lsrc0: Executing v4l-conf failed.
+Additional debug info:
+v4l-overlay_calls.c(76): gst_v4l_set_overlay: /pipeline0/v4lsrc0:
+system error: Conseguido
+Opened device 'Logitech USB Camera' ('/dev/video0') successfully
+Got 2 buffers ('YUV-4:2:2 (packed)') of size 208 KB
+ERROR         default(32649)
+v4lsrc_calls.c(358):gst_v4lsrc_requeue_frame:<v4lsrc0> (null)
+ERROR         default(32649)
+v4lsrc_calls.c(358):gst_v4lsrc_requeue_frame:<v4lsrc0> Invalid state 1
+(expected 2), can't requeue
+ERROR: from element /pipeline0/v4lsrc0: GStreamer developers were too lazy
+to assign an error code to this error.  Please file a bug.
+Additional debug info:
+v4lsrc_calls.c(358): gst_v4lsrc_requeue_frame: /pipeline0/v4lsrc0:
+Invalid state 1 (expected 2), can't requeue
+Caught interrupt.
+
+
+ --------------
+ But if MIN_BUFFERS_QUEUED is changed to 1 then the pluggin is working :-)
+
+ Well Ronnald i guess that is a weird way , but allowing to pass the 
+
+ MIN_BUFFERS_QUEUED as a parameter fix the problem.




More information about the Gstreamer-bugs mailing list