diff options
Diffstat (limited to 'src/multimedia/platform/gstreamer/common/qgstreamermediaplayer.cpp')
-rw-r--r-- | src/multimedia/platform/gstreamer/common/qgstreamermediaplayer.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/multimedia/platform/gstreamer/common/qgstreamermediaplayer.cpp b/src/multimedia/platform/gstreamer/common/qgstreamermediaplayer.cpp index b0c1c7201..ec0a679bd 100644 --- a/src/multimedia/platform/gstreamer/common/qgstreamermediaplayer.cpp +++ b/src/multimedia/platform/gstreamer/common/qgstreamermediaplayer.cpp @@ -601,9 +601,7 @@ void QGstreamerMediaPlayer::setAudioOutput(QPlatformAudioOutput *output) { if (gstAudioOutput == output) return; - auto state = playerPipeline.state(); - if (state == GST_STATE_PLAYING) - playerPipeline.setStateSync(GST_STATE_PAUSED); + playerPipeline.beginConfig(); if (gstAudioOutput) { removeOutput(AudioStream); gstAudioOutput->setPipeline({}); @@ -613,8 +611,7 @@ void QGstreamerMediaPlayer::setAudioOutput(QPlatformAudioOutput *output) gstAudioOutput->setPipeline(playerPipeline); connectOutput(AudioStream); } - if (state == GST_STATE_PLAYING) - playerPipeline.setState(GST_STATE_PLAYING); + playerPipeline.endConfig(); } QMediaMetaData QGstreamerMediaPlayer::metaData() const |