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 446551 - [queue2] Buffering is not working properly if it is set to buffer the entire stream before playing
[queue2] Buffering is not working properly if it is set to buffer the entire ...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other All
: Normal normal
: 0.10.14
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-06-11 23:08 UTC by Thiago Sousa Santos
Modified: 2007-06-12 08:38 UTC
See Also:
GNOME target: ---
GNOME version: 2.17/2.18


Attachments
Fixes the bug. (912 bytes, patch)
2007-06-12 00:36 UTC, Thiago Sousa Santos
committed Details | Review

Description Thiago Sousa Santos 2007-06-11 23:08:35 UTC
Please describe the problem:
When setting the queue2 properties max-size-buffers, max-size-bytes and max-size-time to zero, meaning that no limit is set, it should buffer the entire stream to start playing. But it never starts playing.

If we set one of those properties to a value > 0 it works.

Steps to reproduce:
1. Create a pipeline with queue2
2. Set the properties mentioned to 0
3. Set use-buffering to true


Actual results:
The stream isn't played.

Expected results:
It should buffer the entire stream until EOS and then start playing

Does this happen every time?
Yes

Other information:
Comment 1 Thiago Sousa Santos 2007-06-12 00:36:58 UTC
Created attachment 89781 [details] [review]
Fixes the bug.

The problem was that the update_buffering was only called when a buffer was enqueued.
In this case, we needed to receive the EOS to start playing, so the update_buffering was never called when it was received and the pipeline remained on buffering status.
Comment 2 Wim Taymans 2007-06-12 08:38:21 UTC
        Patches by: Thiago Sousa Santos <thiagossantos at gmail dot com>

        * gst/playback/gstqueue2.c: (update_buffering),
        (gst_queue_locked_enqueue):
        Fix a division by zero when the max percent is <= 0. Fixes #446572.
        also update the buffering status when receiving events. Fixes #446551.