aboutsummaryrefslogtreecommitdiffstats
path: root/fftools/ffmpeg_demux.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2023-02-11 08:17:55 +0100
committerAnton Khirnov <anton@khirnov.net>2023-02-20 19:22:22 +0100
commit156ca865697fcad6332ea75f4d97f12135975ac5 (patch)
tree29f8f42a3b98bca375a0703a19abef007e98ed71 /fftools/ffmpeg_demux.c
parent66c1e956aa271a19f710cf26118010bae5d6bc91 (diff)
downloadffmpeg-156ca865697fcad6332ea75f4d97f12135975ac5.tar.gz
fftools/ffmpeg: move ts_scale to DemuxStream
It is not needed outside of ffmpeg_demux.
Diffstat (limited to 'fftools/ffmpeg_demux.c')
-rw-r--r--fftools/ffmpeg_demux.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c
index f2a1391a29..2033c1de54 100644
--- a/fftools/ffmpeg_demux.c
+++ b/fftools/ffmpeg_demux.c
@@ -58,6 +58,8 @@ typedef struct DemuxStream {
// name used for logging
char log_name[32];
+ double ts_scale;
+
int64_t min_pts; /* pts with the smallest value in a current stream */
int64_t max_pts; /* pts with the higher value in a current stream */
} DemuxStream;
@@ -225,9 +227,9 @@ static void ts_fixup(Demuxer *d, AVPacket *pkt, int *repeat_pict)
pkt->pts += av_rescale_q(ifile->ts_offset, AV_TIME_BASE_Q, ist->st->time_base);
if (pkt->pts != AV_NOPTS_VALUE)
- pkt->pts *= ist->ts_scale;
+ pkt->pts *= ds->ts_scale;
if (pkt->dts != AV_NOPTS_VALUE)
- pkt->dts *= ist->ts_scale;
+ pkt->dts *= ds->ts_scale;
duration = av_rescale_q(d->duration, d->time_base, ist->st->time_base);
if (pkt->pts != AV_NOPTS_VALUE) {
@@ -670,8 +672,8 @@ static void add_input_streams(const OptionsContext *o, Demuxer *d)
ds->min_pts = INT64_MAX;
ds->max_pts = INT64_MIN;
- ist->ts_scale = 1.0;
- MATCH_PER_STREAM_OPT(ts_scale, dbl, ist->ts_scale, ic, st);
+ ds->ts_scale = 1.0;
+ MATCH_PER_STREAM_OPT(ts_scale, dbl, ds->ts_scale, ic, st);
ist->autorotate = 1;
MATCH_PER_STREAM_OPT(autorotate, i, ist->autorotate, ic, st);