Commit 18217bb0 authored by Nicolas George's avatar Nicolas George

ffmpeg: report max time of unfinished streams in stats.

Eliminating finished streams avoids the progress stopping
with the first stream.
Using the max instead of the min avoids the progress stopping
with gaps in sparse streams (subtitles).
Negligible change for normal circumstances.
parent 1ea77a52
...@@ -1059,7 +1059,7 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti ...@@ -1059,7 +1059,7 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti
AVCodecContext *enc; AVCodecContext *enc;
int frame_number, vid, i; int frame_number, vid, i;
double bitrate; double bitrate;
int64_t pts = INT64_MAX; int64_t pts = INT64_MIN;
static int64_t last_time = -1; static int64_t last_time = -1;
static int qp_histogram[52]; static int qp_histogram[52];
int hours, mins, secs, us; int hours, mins, secs, us;
...@@ -1154,8 +1154,9 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti ...@@ -1154,8 +1154,9 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti
vid = 1; vid = 1;
} }
/* compute min output value */ /* compute min output value */
pts = FFMIN(pts, av_rescale_q(ost->st->pts.val, if (!ost->finished && ost->st->pts.val != AV_NOPTS_VALUE)
ost->st->time_base, AV_TIME_BASE_Q)); pts = FFMAX(pts, av_rescale_q(ost->st->pts.val,
ost->st->time_base, AV_TIME_BASE_Q));
} }
secs = pts / AV_TIME_BASE; secs = pts / AV_TIME_BASE;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment