hc
2023-11-22 f743a7adbd6e230d66a6206fa115b59fec2d88eb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
From bf17c79b516306f87b36d53d1fae67ff81f4ef54 Mon Sep 17 00:00:00 2001
From: Jeffy Chen <jeffy.chen@rock-chips.com>
Date: Mon, 11 Mar 2019 11:51:00 +0800
Subject: [PATCH 08/17] gstreamer: mediaplayer: Force redo setMedia after
 renderer changed
 
Somehow the playbin3 will screw up when setVideoRenderer been called
after setMedia.
 
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
---
 src/gsttools/qgstreamerplayersession.cpp | 4 ++++
 1 file changed, 4 insertions(+)
 
diff --git a/src/gsttools/qgstreamerplayersession.cpp b/src/gsttools/qgstreamerplayersession.cpp
index 76282bcf..baa06b72 100755
--- a/src/gsttools/qgstreamerplayersession.cpp
+++ b/src/gsttools/qgstreamerplayersession.cpp
@@ -763,6 +763,10 @@ void QGstreamerPlayerSession::setVideoRenderer(QObject *videoOutput)
         switch (m_pendingState) {
         case QMediaPlayer::PausedState:
             gst_element_set_state(m_playbin, GST_STATE_PAUSED);
+
+            if (!m_everPlayed)
+                emit invalidMedia();
+
             break;
         case QMediaPlayer::PlayingState:
             gst_element_set_state(m_playbin, GST_STATE_PLAYING);
-- 
2.20.1