summaryrefslogtreecommitdiffstats
path: root/src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp')
-rw-r--r--src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp b/src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp
index ef059c8b7..57753f53d 100644
--- a/src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp
+++ b/src/multimedia/platform/gstreamer/common/qgstreamervideooutput.cpp
@@ -68,20 +68,16 @@ QGstreamerVideoOutput::~QGstreamerVideoOutput()
void QGstreamerVideoOutput::setVideoSink(QVideoSink *sink)
{
- auto *videoSink = static_cast<QGstreamerVideoSink *>(sink->platformVideoSink());
+ auto *videoSink = sink ? static_cast<QGstreamerVideoSink *>(sink->platformVideoSink()) : nullptr;
if (videoSink == m_videoWindow)
return;
if (m_videoWindow) {
- gstPipeline.removeMessageFilter(static_cast<QGstreamerSyncMessageFilter *>(m_videoWindow));
- gstPipeline.removeMessageFilter(static_cast<QGstreamerBusMessageFilter *>(m_videoWindow));
disconnect(m_videoWindow, SIGNAL(sinkChanged()), this, SLOT(sinkChanged()));
}
m_videoWindow = videoSink;
if (m_videoWindow) {
- gstPipeline.installMessageFilter(static_cast<QGstreamerSyncMessageFilter *>(m_videoWindow));
- gstPipeline.installMessageFilter(static_cast<QGstreamerBusMessageFilter *>(m_videoWindow));
connect(m_videoWindow, SIGNAL(sinkChanged()), this, SLOT(sinkChanged()));
}
sinkChanged();