diff options
author | Stefano Sabatini <stefasab@gmail.com> | 2022-07-13 01:28:33 +0200 |
---|---|---|
committer | Stefano Sabatini <stefasab@gmail.com> | 2023-01-24 23:58:00 +0100 |
commit | b6219c91144e665c98ceda9189e5f2bf75232fa8 (patch) | |
tree | 1a042518d4b15bf906677e3c6b88d99925cbb36d /fftools/ffprobe.c | |
parent | aaa49a7a425ce3dc6ca8edc0e17ed16c98f699a6 (diff) | |
download | ffmpeg-b6219c91144e665c98ceda9189e5f2bf75232fa8.tar.gz |
ffprobe: use pkt->dts to compute interval ts when pts is missing
For some samples the pkt->pts is always missing, use the pkt->dts
instead.
Fix trac issue:
http://trac.ffmpeg.org/ticket/4427
Diffstat (limited to 'fftools/ffprobe.c')
-rw-r--r-- | fftools/ffprobe.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index b9310a2d25..619ea9a602 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -2874,9 +2874,10 @@ static int read_interval_packets(WriterContext *w, InputFile *ifile, } if (selected_streams[pkt->stream_index]) { AVRational tb = ifile->streams[pkt->stream_index].st->time_base; + int64_t pts = pkt->pts != AV_NOPTS_VALUE ? pkt->pts : pkt->dts; - if (pkt->pts != AV_NOPTS_VALUE) - *cur_ts = av_rescale_q(pkt->pts, tb, AV_TIME_BASE_Q); + if (pts != AV_NOPTS_VALUE) + *cur_ts = av_rescale_q(pts, tb, AV_TIME_BASE_Q); if (!has_start && *cur_ts != AV_NOPTS_VALUE) { start = *cur_ts; |