diff options
author | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2019-09-10 11:37:39 +0200 |
---|---|---|
committer | Christian Strømme <christian.stromme@qt.io> | 2019-10-01 08:12:01 +0000 |
commit | 9eef3390241f8c6e25c5ccc7b1baa25058146927 (patch) | |
tree | 323147313ce309856c4b2075a2057ca2dfae8546 /src/gsttools/qgstreamerplayersession_p.h | |
parent | 163846dba1ef9171699b5203cf9bfbb91a609df0 (diff) |
GStreamer: Recreate playbin after custom pipeline
Currently if custom pipeline is set, old playbin elements are destroyed.
And if normal url is passed again after the custom pipeline, it is unable to play.
Because no playbin elements exist anymore.
Adding a fix to recreate playbin elements if "not a pipeline url" is passed.
Fixes: QTBUG-78079
Change-Id: I8b3498c4660639f5d757b322a136846ee82fdc28
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
Diffstat (limited to 'src/gsttools/qgstreamerplayersession_p.h')
-rw-r--r-- | src/gsttools/qgstreamerplayersession_p.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gsttools/qgstreamerplayersession_p.h b/src/gsttools/qgstreamerplayersession_p.h index 69027eeb2..797229e69 100644 --- a/src/gsttools/qgstreamerplayersession_p.h +++ b/src/gsttools/qgstreamerplayersession_p.h @@ -210,6 +210,9 @@ private: void resumeVideoProbes(); bool parsePipeline(); bool setPipeline(GstElement *pipeline); + void resetElements(); + void initPlaybin(); + void setBus(GstBus *bus); QNetworkRequest m_request; QMediaPlayer::State m_state = QMediaPlayer::StoppedState; |