diff options
author | Thibault Saunier <tsaunier@igalia.com> | 2020-11-19 17:54:28 -0300 |
---|---|---|
committer | Thibault Saunier <tsaunier@igalia.com> | 2020-11-30 15:16:01 -0300 |
commit | 9d890c152e212b59bb8b583c2e3dea7aa50dc61d (patch) | |
tree | 72e1ac6e98f644e67b179b01c8a8e86f32bd2005 /gst-libs | |
parent | f1cf5d06835594c3f709b4b65dd0943c9c073c26 (diff) | |
download | gstreamer-plugins-bad-9d890c152e212b59bb8b583c2e3dea7aa50dc61d.tar.gz |
transcoder: Minor refactoring to output better debug logs
Diffstat (limited to 'gst-libs')
-rw-r--r-- | gst-libs/gst/transcoder/gsttranscoder.c | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/gst-libs/gst/transcoder/gsttranscoder.c b/gst-libs/gst/transcoder/gsttranscoder.c index 4b26c9bf2..2da8c9c48 100644 --- a/gst-libs/gst/transcoder/gsttranscoder.c +++ b/gst-libs/gst/transcoder/gsttranscoder.c @@ -487,22 +487,26 @@ tick_cb (gpointer user_data) GstTranscoder *self = GST_TRANSCODER (user_data); gint64 position; - if (self->target_state >= GST_STATE_PAUSED - && gst_element_query_position (self->transcodebin, GST_FORMAT_TIME, + if (self->target_state < GST_STATE_PAUSED) + return G_SOURCE_CONTINUE; + + if (!gst_element_query_position (self->transcodebin, GST_FORMAT_TIME, &position)) { - GST_LOG_OBJECT (self, "Position %" GST_TIME_FORMAT, - GST_TIME_ARGS (position)); - - if (g_signal_handler_find (self, G_SIGNAL_MATCH_ID, - signals[SIGNAL_POSITION_UPDATED], 0, NULL, NULL, NULL) != 0) { - PositionUpdatedSignalData *data = g_new0 (PositionUpdatedSignalData, 1); - - data->transcoder = g_object_ref (self); - data->position = position; - gst_transcoder_signal_dispatcher_dispatch (self->signal_dispatcher, self, - position_updated_dispatch, data, - (GDestroyNotify) position_updated_signal_data_free); - } + GST_LOG_OBJECT (self, "Could not query position"); + return G_SOURCE_CONTINUE; + } + + GST_LOG_OBJECT (self, "Position %" GST_TIME_FORMAT, GST_TIME_ARGS (position)); + + if (g_signal_handler_find (self, G_SIGNAL_MATCH_ID, + signals[SIGNAL_POSITION_UPDATED], 0, NULL, NULL, NULL) != 0) { + PositionUpdatedSignalData *data = g_new0 (PositionUpdatedSignalData, 1); + + data->transcoder = g_object_ref (self); + data->position = position; + gst_transcoder_signal_dispatcher_dispatch (self->signal_dispatcher, self, + position_updated_dispatch, data, + (GDestroyNotify) position_updated_signal_data_free); } return G_SOURCE_CONTINUE; |