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 139749 - [gstplay] libgstplay is *WAY* too slow
[gstplay] libgstplay is *WAY* too slow
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins
git master
Other Linux
: Normal normal
: 0.8.8
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2004-04-11 21:59 UTC by Ronald Bultje
Modified: 2005-01-05 14:57 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
update for libgstplay (47.61 KB, patch)
2004-12-22 13:59 UTC, Ronald Bultje
none Details | Review
update (48.70 KB, patch)
2004-12-22 14:47 UTC, Ronald Bultje
none Details | Review

Description Ronald Bultje 2004-04-11 21:59:22 UTC
examples/gstplay/player file.avi

Take, e.g., a half-PAL [384x288@25fps] DivX 5 movie with mp3 audio and watch CPU
usage during playback in player. This takes >100% and playback stutters. On
gst-launch (gst-launch filesrc location=file.avi ! avidemux name=d .video_00 ! {
queue ! ffdec_mpeg4 ! ffcolorspace ! ximagesink } d.audio_00 ! { queue ! mad !
osssink }), it takes +/- 50%. I don't know or care what takes more than half of
my CPU during this file playback, but this is really far too much.

Summary: someone needs to heavily optimize and simplify libgstplay.
Comment 1 Stephane Loeuillet 2004-12-15 13:08:31 UTC
still an issue ? (as application devs should use playbin/decodebin instead)
Comment 2 Ronald Bultje 2004-12-22 13:59:21 UTC
Created attachment 35119 [details] [review]
update for libgstplay

The attached patch deprecates _set_data_src() and makes libgstplay use playbin.
It takes 100% CPU for some weird reason, need to fix that.
Comment 3 Ronald Bultje 2004-12-22 14:00:26 UTC
Oh, right, clients iterate it. We probably want to spoof an iterate function
that sleeps for a while.
Comment 4 Ronald Bultje 2004-12-22 14:34:16 UTC
Actually, I take that back, that brings up a total mess, if I usleep in iterate
virtfuncs/callbacks, it hangs.
Comment 5 Ronald Bultje 2004-12-22 14:47:16 UTC
Created attachment 35128 [details] [review]
update

Don't iterate (example).
Comment 6 Ronald Bultje 2005-01-05 14:57:18 UTC
Applied.