From: Tim-Philipp Müller Date: Sun, 4 Sep 2016 15:04:00 +0000 (+0100) Subject: tools: gst-play: cycle between video tracks without disabling video X-Git-Tag: 1.19.3~511^2~2685 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c90f18994c904550e527f79d0238cde0b85c13a1;p=platform%2Fupstream%2Fgstreamer.git tools: gst-play: cycle between video tracks without disabling video --- diff --git a/tools/gst-play.c b/tools/gst-play.c index 3aa1b77..5708737 100644 --- a/tools/gst-play.c +++ b/tools/gst-play.c @@ -963,7 +963,7 @@ play_cycle_track_selection (GstPlay * play, GstPlayTrackType track_type) else cur = (cur + 1) % (n + 1); - if (cur >= n) { + if (cur >= n && track_type != GST_PLAY_TRACK_TYPE_VIDEO) { cur = -1; g_print ("Disabling %s. \n", name); if (cur_flags & flag) { @@ -971,7 +971,10 @@ play_cycle_track_selection (GstPlay * play, GstPlayTrackType track_type) g_object_set (play->playbin, "flags", cur_flags, NULL); } } else { - if (!(cur_flags & flag)) { + /* For video we only want to switch between streams, not disable it altogether */ + if (cur >= n) + cur = 0; + if (!(cur_flags & flag) && track_type != GST_PLAY_TRACK_TYPE_VIDEO) { cur_flags |= flag; g_object_set (play->playbin, "flags", cur_flags, NULL); }