mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-07-08 23:55:55 +00:00
playsink: Fix subpicture overlay when deinterlacing disabled.
Fix a bug when reconfiguring the playsink where the subpicture stream is broken by attempting to connect it through streamsynchroniser and second time.
This commit is contained in:
parent
79020ae3f6
commit
ee303c441d
|
@ -2489,21 +2489,23 @@ gst_play_sink_reconfigure (GstPlaySink * playsink)
|
||||||
NULL);
|
NULL);
|
||||||
add_chain (GST_PLAY_CHAIN (playsink->textchain), TRUE);
|
add_chain (GST_PLAY_CHAIN (playsink->textchain), TRUE);
|
||||||
|
|
||||||
playsink->text_sinkpad_stream_synchronizer =
|
if (!playsink->text_sinkpad_stream_synchronizer) {
|
||||||
gst_element_get_request_pad (GST_ELEMENT_CAST
|
playsink->text_sinkpad_stream_synchronizer =
|
||||||
(playsink->stream_synchronizer), "sink_%d");
|
gst_element_get_request_pad (GST_ELEMENT_CAST
|
||||||
it = gst_pad_iterate_internal_links
|
(playsink->stream_synchronizer), "sink_%d");
|
||||||
(playsink->text_sinkpad_stream_synchronizer);
|
it = gst_pad_iterate_internal_links
|
||||||
g_assert (it);
|
(playsink->text_sinkpad_stream_synchronizer);
|
||||||
gst_iterator_next (it,
|
g_assert (it);
|
||||||
(gpointer *) & playsink->text_srcpad_stream_synchronizer);
|
gst_iterator_next (it,
|
||||||
g_assert (playsink->text_srcpad_stream_synchronizer);
|
(gpointer *) & playsink->text_srcpad_stream_synchronizer);
|
||||||
gst_iterator_free (it);
|
g_assert (playsink->text_srcpad_stream_synchronizer);
|
||||||
|
gst_iterator_free (it);
|
||||||
|
|
||||||
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (playsink->text_pad),
|
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (playsink->text_pad),
|
||||||
playsink->text_sinkpad_stream_synchronizer);
|
playsink->text_sinkpad_stream_synchronizer);
|
||||||
gst_pad_link_full (playsink->text_srcpad_stream_synchronizer,
|
gst_pad_link_full (playsink->text_srcpad_stream_synchronizer,
|
||||||
playsink->textchain->textsinkpad, GST_PAD_LINK_CHECK_NOTHING);
|
playsink->textchain->textsinkpad, GST_PAD_LINK_CHECK_NOTHING);
|
||||||
|
}
|
||||||
|
|
||||||
if (need_vis) {
|
if (need_vis) {
|
||||||
GstPad *srcpad;
|
GstPad *srcpad;
|
||||||
|
|
Loading…
Reference in a new issue