diff options
author | Andreas Hakon <andreas.hakon@protonmail.com> | 2019-04-19 08:58:37 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2019-04-19 17:14:44 +0200 |
commit | e750dc9de61b4534776f500e22d32a07c6425231 (patch) | |
tree | 76ff6698357256063f6b950129cc2e0aef4f20c2 | |
parent | a87774636b870ee1888bec24327062baf4841ea0 (diff) | |
download | ffmpeg-e750dc9de61b4534776f500e22d32a07c6425231.tar.gz |
libavformat: improve logs with cur_dts
This patch improves the logs when the message "cur_dts is invalid" appears.
If helps to identify which stream generates the trouble,
and the status of the stream.
A lot of users suffers with the message, and the origin varies.
The improved message can help to discover the cause.
Signed-off-by: Andreas Hakon <andreas.hakon@protonmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | fftools/ffmpeg.c | 4 | ||||
-rw-r--r-- | libavformat/utils.c | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index 0f157d67d8..01f04103cf 100644 --- a/fftools/ffmpeg.c +++ b/fftools/ffmpeg.c @@ -3875,7 +3875,9 @@ static OutputStream *choose_output(void) av_rescale_q(ost->st->cur_dts, ost->st->time_base, AV_TIME_BASE_Q); if (ost->st->cur_dts == AV_NOPTS_VALUE) - av_log(NULL, AV_LOG_DEBUG, "cur_dts is invalid (this is harmless if it occurs once at the start per stream)\n"); + av_log(NULL, AV_LOG_DEBUG, + "cur_dts is invalid st:%d (%d) [init:%d i_done:%d finish:%d] (this is harmless if it occurs once at the start per stream)\n", + ost->st->index, ost->st->id, ost->initialized, ost->inputs_done, ost->finished); if (!ost->initialized && !ost->inputs_done) return ost; diff --git a/libavformat/utils.c b/libavformat/utils.c index c3ec4cc7fd..a63d71b0f4 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -1402,8 +1402,8 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st, st->cur_dts = pkt->dts; if (s->debug & FF_FDEBUG_TS) - av_log(s, AV_LOG_DEBUG, "OUTdelayed:%d/%d pts:%s, dts:%s cur_dts:%s\n", - presentation_delayed, delay, av_ts2str(pkt->pts), av_ts2str(pkt->dts), av_ts2str(st->cur_dts)); + av_log(s, AV_LOG_DEBUG, "OUTdelayed:%d/%d pts:%s, dts:%s cur_dts:%s st:%d (%d)\n", + presentation_delayed, delay, av_ts2str(pkt->pts), av_ts2str(pkt->dts), av_ts2str(st->cur_dts), st->index, st->id); /* update flags */ if (st->codecpar->codec_type == AVMEDIA_TYPE_DATA || is_intra_only(st->codecpar->codec_id)) |