gst-launch cannot connect to gspca webcam

Bug #516051 reported by Dave-B
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gstreamer0.10 (Ubuntu)
Expired
Undecided
Unassigned

Bug Description

This is some sort of GStreamer problem...
 * Cheese will grab one frame and display that, but won't show video,
 * gst-launch gives and error (below), but
 * testing video in gstreamer-properties works as expected with live video.

dmesg:
[13703.044019] usb 4-1: new full speed USB device using uhci_hcd and address 4
[13703.237407] usb 4-1: configuration #1 chosen from 1 choice
[13703.240391] gspca: probing 046d:092c
[13703.299356] gspca: probe ok

lsusb:
Bus 004 Device 004: ID 046d:092c Logitech, Inc. QuickCam Chat

gst-launch v4l2src ! ffmpegcolorspace ! xvimagesink
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: Could not initialise Xv output
Additional debug info:
xvimagesink.c(1416): gst_xvimagesink_get_xv_support (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
No port available
Setting pipeline to NULL ...
Freeing pipeline ...

ProblemType: Bug
Architecture: i386
Date: Tue Feb 2 14:10:50 2010
DistroRelease: Ubuntu 10.04
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Alpha i386 (20100128)
Package: gstreamer-tools 0.10.25.2-2ubuntu1
ProcEnviron:
 LANG=en_GB.utf8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-12.16-generic
SourcePackage: gstreamer0.10
Uname: Linux 2.6.32-12-generic i686

Revision history for this message
Dave-B (david-balch) wrote :
Revision history for this message
Daniel Letzeisen (dtl131) wrote :

Does the Xv output test okay when your run this (under Video tab)?:
gstreamer-properties

Revision history for this message
Dave-B (david-balch) wrote :

Yup, gstreamer-properties works as expected, with live video from the webcam appearing.

Revision history for this message
Dave-B (david-balch) wrote :

Clarification: Both the "Test input" plugin (colour bars and noise) and the webcam work in gstreamer-properties. (But not in Cheese or gst-launch.)

Revision history for this message
Dave-B (david-balch) wrote :

Ok, after looking around some more, I find that `gst-launch v4l2src ! ffmpegcolorspace ! xvimagesink` doesn't work because the video chipset and/or driver doesn't support xvideo.

Running `gst-launch v4l2src ! ffmpegcolorspace ! ximagesink` (i.e. using ximagesink instead of xvimagesink) shows the webcam as expected.

This suggests to me that it's not a gstreamer problem (as I first thought), but a pipeline setup problem in the applications (Cheese, mousetrap) - where do I look to establish how the pipelines are created?

Revision history for this message
Dave-B (david-balch) wrote :

Running `cheese --gst-debug-level=2` gives several warnings starting with these:

0:00:03.338641523 4010 0x884d430 WARN xvimagesink xvimagesink.c:1416:gst_xvimagesink_get_xv_support:<autovideosink0-actual-sink-xvimage> error: Could not initialise Xv output
0:00:03.338760585 4010 0x884d430 WARN xvimagesink xvimagesink.c:1416:gst_xvimagesink_get_xv_support:<autovideosink0-actual-sink-xvimage> error: No port available

So I haven't got xvimagesink, but cheese/gstreamer is still trying to use it.

Revision history for this message
Dave-B (david-balch) wrote :

The chipset is 82845G/GL[Brookdale-G]/GE, so I'm running the i915 driver.

Revision history for this message
Dave-B (david-balch) wrote :

Sorry for the multiple comments - I'm new to this area of investigation.

I've attached my Xorg log, which says that XVideo is being loaded - short version:

$ less /var/log/Xorg.0.log | grep XVideo
(II) Loading extension XVideo
(II) Loading extension XVideo-MotionCompensation

Revision history for this message
Daniel Letzeisen (dtl131) wrote :

I guess you've isolated the issue to the Intel driver then? Maybe you're running Compiz and it's interfering with Xv (not unheard of). Try disabling Desktop Effects and see if it helps. Another possible workaround: go into gstreamer-properties and change your video to X11/ximagesink.

Revision history for this message
Dave-B (david-balch) wrote :

Ok, I've set gstreamer-properties video output to "X Window System (No Xv)" (ximagesink), and the test works, but Cheese still doesn't.

In fact it shows just a single still image, rather than video.

With `cheese --gst-debug-level=2` I get the following warnings:

0:00:05.245175219 2035 0x957c068 WARN bin gstbin.c:2312:gst_bin_do_latency_func:<pipeline> failed to query latency
0:00:07.836997826 2035 0x963fb10 WARN basetransform gstbasetransform.c:1047:gst_base_transform_acceptcaps:<video_scale> transform could not transform video/x-raw-yuv, format=(fourcc)I420, width=(int)160, height=(int)120, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1 in anything we support
0:00:08.432900585 2035 0x963fb10 WARN basetransform gstbasetransform.c:1047:gst_base_transform_acceptcaps:<video_scale> transform could not transform video/x-raw-yuv, format=(fourcc)I420, width=(int)160, height=(int)120, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1 in anything we support
0:00:08.528301133 2035 0x9625e40 WARN basetransform gstbasetransform.c:1047:gst_base_transform_acceptcaps:<capsfilter1> transform could not transform video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)160, height=(int)120, framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1 in anything we support

...and the same warning appears at different frame sizes.

When I change the frame size, I get this critical error:
** (cheese:2035): CRITICAL **: cheese_camera_set_video_format: assertion `format == NULL' failed

Revision history for this message
Pedro Villavicencio (pedro) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. A new version of GStreamer is available on Maverick and we are wondering if this bug is still an issue for you with that version? Could you please test and comment back? Thanks in advance.

Changed in gstreamer0.10 (Ubuntu):
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for gstreamer0.10 (Ubuntu) because there has been no activity for 60 days.]

Changed in gstreamer0.10 (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.