After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 145372 - [v4lsrc] is really slow (Low fps) in 0.8.2 plugins
[v4lsrc] is really slow (Low fps) in 0.8.2 plugins
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.8.2
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2004-07-04 07:25 UTC by aeyakovenko
Modified: 2006-01-11 15:57 UTC
See Also:
GNOME target: ---
GNOME version: 2.5/2.6



Description aeyakovenko 2004-07-04 07:25:21 UTC
i am using a logitech camera, and i get really bad fps with this pipeline:

gst-launch-0.8 v4lsrc ! ffmpegcolorspace ! ximagesink
RUNNING pipeline ...
WARNING: Your X-Server has no DGA support.
/dev/video0 [v4l]: no overlay support
 
** (process:14628): WARNING **: v4l-conf returned 1.
ERROR: from element /pipeline0/v4lsrc0: Could not get/set settings from/on resource.
Additional debug info:
gstv4lsrc.c(636): gst_v4lsrc_src_link: /pipeline0/v4lsrc0:
Could not set framerate of 0 fps

But after i resize the window the fps goes back to normal.  

I also noticed that initially the cpu load is very low.  But after resizing the
window the cpu load is higher but the video has much higher fps.
Comment 1 aeyakovenko 2004-07-04 07:26:00 UTC
It also takes about a minute to start the pipeline.  
Comment 2 Thomas Vander Stichele 2004-07-30 17:52:59 UTC
a) can you run with -v so I can see what it negotiates to ?
b) the slow startup is because it tries to autoprobe fps.  You can use
autoprobe=FALSE and use filtercaps to set a framerate, or use another app to set
framerate explicitly.  Then it will use this one.
Comment 3 aeyakovenko 2004-08-05 03:15:07 UTC
this is the output that i get with -v:

 gst-launch-0.8 -v v4lsrc ! ffmpegcolorspace ! ximagesink
RUNNING pipeline ...
WARNING: Your X-Server has no DGA support.
/dev/video0 [v4l]: no overlay support

** (process:12637): WARNING **: v4l-conf returned 1.
/pipeline0/v4lsrc0.src: caps = video/x-raw-yuv, format=(fourcc)I420,
width=(int)640, height=(int)480, framerate=(double)4.6875
/pipeline0/ffmpegcolorspace0.sink: caps = video/x-raw-yuv, format=(fourcc)I420,
width=(int)640, height=(int)480, framerate=(double)4.6875
ERROR: from element /pipeline0/v4lsrc0: Could not get/set settings from/on resource.
Additional debug info:
gstv4lsrc.c(636): gst_v4lsrc_src_link: /pipeline0/v4lsrc0:
Could not set framerate of 0 fps
/pipeline0/v4lsrc0.src: caps = video/x-raw-yuv, format=(fourcc)I420,
width=(int)320, height=(int)240, framerate=(double)28.125
/pipeline0/ffmpegcolorspace0.sink: caps = video/x-raw-yuv, format=(fourcc)I420,
width=(int)320, height=(int)240, framerate=(double)28.125
/pipeline0/ffmpegcolorspace0.src: caps = video/x-raw-rgb, width=(int)320,
height=(int)240, framerate=(double)28.125, bpp=(int)32, depth=(int)24,
red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216,
endianness=(int)4321
/pipeline0/ximagesink0.sink: caps = video/x-raw-rgb, width=(int)320,
height=(int)240, framerate=(double)28.125, bpp=(int)32, depth=(int)24,
red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216,
endianness=(int)4321
/pipeline0/v4lsrc0.src: active = TRUE
/pipeline0/ffmpegcolorspace0.sink: active = TRUE
/pipeline0/ffmpegcolorspace0.src: active = TRUE
/pipeline0/ximagesink0.sink: active = TRUE


I am not sure how set the fps using autoprobe
Comment 4 Ronald Bultje 2005-01-25 17:42:29 UTC
gst-launch v4lsrc autoprobe-fps=false ! ffmpegcolorspace ! xvimagesink

If that's better, then you'll need to use that property in your application...
Comment 5 Christian Fredrik Kalager Schaller 2005-12-07 11:29:00 UTC
No updates on this for a year. Marking as closed.
Comment 6 Michael Smith 2005-12-07 11:37:38 UTC
Don't mark unfixed bugs as FIXED, Christian. The lack of feedback can be a valid
reason to close a bug, but not to mark it FIXED when there's no reason to expect
that it is.