mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-28 20:05:38 +00:00
pipeline: Allow up to 2 seconds queueing in the playsink video queue
In playsink the default video queue max size is 3 buffers, which is sometimes not enough for our use case. Allow up to 2 seconds of buffered data, giving us more time to do the transition between clips, and thus avoiding dropping frames in the sink when bringing up new clip takes too much time. Differential Revision: https://phabricator.freedesktop.org/D1854
This commit is contained in:
parent
959a3c70b0
commit
ce4d2d8102
1 changed files with 15 additions and 0 deletions
|
@ -573,6 +573,21 @@ ges_pipeline_change_state (GstElement * element, GstStateChange transition)
|
|||
gst_element_set_locked_state (tmp->data, FALSE);
|
||||
}
|
||||
break;
|
||||
case GST_STATE_CHANGE_PAUSED_TO_PLAYING:
|
||||
{
|
||||
GstElement *queue = gst_bin_get_by_name (GST_BIN (self->priv->playsink),
|
||||
"vqueue");
|
||||
|
||||
if (queue) {
|
||||
GST_INFO_OBJECT (self, "Setting playsink video queue max-size-time to"
|
||||
" 2 seconds.");
|
||||
g_object_set (G_OBJECT (queue), "max-size-buffers", 0,
|
||||
"max-size-bytes", 0, "max-size-time", (gint64) 2 * GST_SECOND,
|
||||
NULL);
|
||||
gst_object_unref (queue);
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue