mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 08:46:40 +00:00
gst/playback/gstplaybasebin.c: Connect to the new queue "pushing" signal instead of the broken "running" one.
Original commit message from CVS: * gst/playback/gstplaybasebin.c: (fill_buffer), (check_queue), (queue_out_of_data): Connect to the new queue "pushing" signal instead of the broken "running" one.
This commit is contained in:
parent
c88306fe26
commit
56f01bc0cb
3 changed files with 15 additions and 5 deletions
|
@ -1,3 +1,10 @@
|
|||
2007-05-10 Wim Taymans <wim@fluendo.com>
|
||||
|
||||
* gst/playback/gstplaybasebin.c: (fill_buffer), (check_queue),
|
||||
(queue_out_of_data):
|
||||
Connect to the new queue "pushing" signal instead of the broken
|
||||
"running" one.
|
||||
|
||||
2007-05-09 Sebastien Moutte <sebastien@moutte.net>
|
||||
|
||||
* gst-libs/gst/rtp/gstbasertpaudiopayload.c:
|
||||
|
|
2
common
2
common
|
@ -1 +1 @@
|
|||
Subproject commit a6e41a42ec1b93fddbd14b2e5af87e2d456b8962
|
||||
Subproject commit 1b4fb5836a9e290fe13895643d41e0166de8a94c
|
|
@ -496,6 +496,7 @@ group_is_muted (GstPlayBaseGroup * group)
|
|||
static inline void
|
||||
fill_buffer (GstPlayBaseBin * play_base_bin, gint percent)
|
||||
{
|
||||
GST_DEBUG_OBJECT (play_base_bin, "buffering %d", percent);
|
||||
gst_element_post_message (GST_ELEMENT_CAST (play_base_bin),
|
||||
gst_message_new_buffering (GST_OBJECT_CAST (play_base_bin), percent));
|
||||
}
|
||||
|
@ -528,10 +529,12 @@ check_queue (GstPad * pad, GstBuffer * data, gpointer user_data)
|
|||
GstPlayBaseBin *play_base_bin = g_object_get_data (G_OBJECT (queue), "pbb");
|
||||
guint64 level = 0;
|
||||
|
||||
GST_DEBUG ("check queue triggered");
|
||||
GST_DEBUG_OBJECT (queue, "check queue triggered");
|
||||
|
||||
g_object_get (G_OBJECT (queue), "current-level-time", &level, NULL);
|
||||
GST_DEBUG ("Queue size: %" GST_TIME_FORMAT, GST_TIME_ARGS (level));
|
||||
GST_DEBUG_OBJECT (play_base_bin, "Queue size: %" GST_TIME_FORMAT,
|
||||
GST_TIME_ARGS (level));
|
||||
|
||||
if (play_base_bin->queue_threshold > 0) {
|
||||
level = level * 99 / play_base_bin->queue_threshold;
|
||||
if (level > 99)
|
||||
|
@ -678,7 +681,7 @@ queue_out_of_data (GstElement * queue, GstPlayBaseBin * play_base_bin)
|
|||
* This signal could never be called because the queue max-size limits are set
|
||||
* too low. We take care of this possible deadlock in the the overrun signal
|
||||
* handler. */
|
||||
g_signal_connect (G_OBJECT (queue), "running",
|
||||
g_signal_connect (G_OBJECT (queue), "pushing",
|
||||
G_CALLBACK (queue_threshold_reached), play_base_bin);
|
||||
GST_DEBUG_OBJECT (play_base_bin,
|
||||
"setting min threshold time to %" G_GUINT64_FORMAT,
|
||||
|
@ -686,7 +689,7 @@ queue_out_of_data (GstElement * queue, GstPlayBaseBin * play_base_bin)
|
|||
g_object_set (queue, "min-threshold-time",
|
||||
(guint64) play_base_bin->queue_threshold, NULL);
|
||||
|
||||
/* re-connect probe, this will five feedback about the percentage that we
|
||||
/* re-connect probe, this will fire feedback about the percentage that we
|
||||
* buffered and is posted in the BUFFERING message. */
|
||||
if (!g_object_get_data (G_OBJECT (queue), "probe")) {
|
||||
GstPad *sinkpad;
|
||||
|
|
Loading…
Reference in a new issue