diff options
Diffstat (limited to 'gst/mpegpsmux/mpegpsmux.c')
-rw-r--r-- | gst/mpegpsmux/mpegpsmux.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/gst/mpegpsmux/mpegpsmux.c b/gst/mpegpsmux/mpegpsmux.c index a6e9ce1df..b5529d3ec 100644 --- a/gst/mpegpsmux/mpegpsmux.c +++ b/gst/mpegpsmux/mpegpsmux.c @@ -456,21 +456,14 @@ mpegpsmux_choose_best_stream (MpegPsMux * mux) ps_data->eos = TRUE; continue; } - - /* Choose a stream we've never seen a timestamp for to ensure - * we push enough buffers from it to reach a timestamp */ - if (ps_data->last_ts == GST_CLOCK_TIME_NONE) { - best = ps_data; - c_best = c_data; - } } /* If we don't yet have a best pad, take this one, otherwise take * whichever has the oldest timestamp */ if (best != NULL) { - if (ps_data->last_ts != GST_CLOCK_TIME_NONE && - best->last_ts != GST_CLOCK_TIME_NONE && - ps_data->last_ts < best->last_ts) { + if (ps_data->last_ts == GST_CLOCK_TIME_NONE || + (best->last_ts != GST_CLOCK_TIME_NONE && + ps_data->last_ts < best->last_ts)) { best = ps_data; c_best = c_data; } |