Bug 18901 - falls down a well if it can't capture at 640x480
Summary: falls down a well if it can't capture at 640x480
Status: NEW
Alias: None
Product: Telepathy
Classification: Unclassified
Component: stream-engine (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-05 08:44 UTC by Will Thompson
Modified: 2009-01-13 23:28 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Will Thompson 2008-12-05 08:44:39 UTC
If I try to make or receive a call from Empathy, stream-engine tries to capture from my laptop's built-in webcam at 640x480, fails to do so, and then hangs.  This means that Empathy sits there not knowing what's going on, and the call never works.

If I move /dev/video0 out of the way, calls in both directions work just fine.

This is the end of the debug output from telepathy-stream-engine, after which no debug output is produced:

(telepathy-stream-engine:23584): farsight-rtp-DEBUG: AUDIO - farsight_rtp_stream_set_sending: Setting sending on 0
** (telepathy-stream-engine:23584): DEBUG: bus_async_handler: got error from v4l2src1: Device '/dev/video0' cannot capture at 640x480: v4l2src_calls.c(1298): gst_v4l2src_set_capture (): /GstPipeline:pipeline0/GstGConfVideoSrc:gconfvideosrc0/GstBin:bin2/GstV4l2Src:v4l2src1:
Tried to capture at 640x480, but device returned size 320x240 (1136 13), destroying video pipeline
** (telepathy-stream-engine:23584): DEBUG: Closing all video streams
Comment 1 Olivier Crête 2008-12-05 09:19:22 UTC
Either v4l2src is still broken (then its a gst problem)  or you v4l2 driver sucks (then its a kernel problem).

And yes, s-e fs1 sucks. I won't fix it. I hate it. We want fs2 with libtpfs! ! !
Comment 2 Chris Carlin 2009-01-04 00:08:00 UTC
Any idea how to tell whether it's gstreamer or kernel?
Comment 3 Chris Carlin 2009-01-13 23:28:18 UTC
A workaround for me is to run cheese with verbose output. It will detect a workable gstreamer configuration and spit out a line that can be typed into gstreamer-properties as a custom video source.

For me this was:
v4l2src name=video_source device=/dev/video0 ! capsfilter name=capsfilter caps=video/x-raw-rgb,width=640,height=480,framerate=30/1;video/x-raw-yuv,width=640,height=480,framerate=30/1 ! identity

Worked fine.


I filed a bug over in Ubuntu since this is apparently not an empathy/telepathy bug: https://bugs.launchpad.net/ubuntu/+source/empathy/+bug/317000


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.