Merge branch 'jb47801' into 'mer-5.6'

[media] Enable debug graph dot file dumping for playback. JB#47801

See merge request mer-core/qtmultimedia!31
This commit is contained in:
Andrew Branson
2019-12-05 09:19:47 +00:00

View File

@@ -57,7 +57,7 @@
#include <QtCore/qstandardpaths.h> #include <QtCore/qstandardpaths.h>
//#define DEBUG_PLAYBIN //#define DEBUG_PLAYBIN
//#define DEBUG_VO_BIN_DUMP #define DEBUG_VO_BIN_DUMP
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
@@ -558,7 +558,7 @@ void QGstreamerPlayerSession::setVideoRenderer(QObject *videoOutput)
m_renderer = renderer; m_renderer = renderer;
#ifdef DEBUG_VO_BIN_DUMP #ifdef DEBUG_VO_BIN_DUMP
gst_debug_bin_to_dot_file_with_ts(GST_BIN(m_playbin), GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_playbin),
GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES*/), GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES*/),
"playbin_set"); "playbin_set");
#endif #endif
@@ -824,7 +824,7 @@ void QGstreamerPlayerSession::finishVideoOutputChange()
gst_object_unref(GST_OBJECT(srcPad)); gst_object_unref(GST_OBJECT(srcPad));
#ifdef DEBUG_VO_BIN_DUMP #ifdef DEBUG_VO_BIN_DUMP
gst_debug_bin_to_dot_file_with_ts(GST_BIN(m_playbin), GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_playbin),
GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* | GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES */), GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* | GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES */),
"playbin_finish"); "playbin_finish");
#endif #endif
@@ -901,11 +901,21 @@ bool QGstreamerPlayerSession::play()
if (!m_isPlaylist) { if (!m_isPlaylist) {
qWarning() << "GStreamer; Unable to play -" << m_request.url().toString(); qWarning() << "GStreamer; Unable to play -" << m_request.url().toString();
m_pendingState = m_state = QMediaPlayer::StoppedState; m_pendingState = m_state = QMediaPlayer::StoppedState;
#ifdef DEBUG_VO_BIN_DUMP
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_playbin),
GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES*/),
"playbin_error");
#endif
emit stateChanged(m_state); emit stateChanged(m_state);
} else { } else {
return true; return true;
} }
} else { } else {
#ifdef DEBUG_VO_BIN_DUMP
GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_playbin),
GstDebugGraphDetails(GST_DEBUG_GRAPH_SHOW_ALL /* GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE | GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS | GST_DEBUG_GRAPH_SHOW_STATES*/),
"playbin_playing");
#endif
resumeVideoProbes(); resumeVideoProbes();
return true; return true;
} }