mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-04 22:48:54 +00:00
playsink: Unlink pads when switching between enabling/disabling the deinterlace chain
See bug #678762.
This commit is contained in:
parent
67bbfdde4e
commit
a038e5e583
1 changed files with 6 additions and 0 deletions
|
@ -3094,6 +3094,8 @@ gst_play_sink_reconfigure (GstPlaySink * playsink)
|
|||
add_chain (GST_PLAY_CHAIN (playsink->videodeinterlacechain), TRUE);
|
||||
activate_chain (GST_PLAY_CHAIN (playsink->videodeinterlacechain), TRUE);
|
||||
|
||||
gst_pad_unlink (playsink->video_srcpad_stream_synchronizer,
|
||||
playsink->videochain->sinkpad);
|
||||
gst_pad_link_full (playsink->video_srcpad_stream_synchronizer,
|
||||
playsink->videodeinterlacechain->sinkpad, GST_PAD_LINK_CHECK_NOTHING);
|
||||
} else {
|
||||
|
@ -3111,6 +3113,10 @@ gst_play_sink_reconfigure (GstPlaySink * playsink)
|
|||
if (!need_vis && !need_text && (!playsink->textchain
|
||||
|| !playsink->text_pad)) {
|
||||
GST_DEBUG_OBJECT (playsink, "ghosting video sinkpad");
|
||||
gst_pad_unlink (playsink->video_srcpad_stream_synchronizer,
|
||||
playsink->videochain->sinkpad);
|
||||
gst_pad_unlink (playsink->videodeinterlacechain->srcpad,
|
||||
playsink->videochain->sinkpad);
|
||||
if (need_deinterlace)
|
||||
gst_pad_link_full (playsink->videodeinterlacechain->srcpad,
|
||||
playsink->videochain->sinkpad, GST_PAD_LINK_CHECK_NOTHING);
|
||||
|
|
Loading…
Reference in a new issue