diff options
author | Nicolas Gaullier <nicolas.gaullier@cji.paris> | 2024-09-03 10:02:30 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2024-09-04 13:01:37 +0200 |
commit | ee9ae4e8ba167b52267aa3e35d8fc2770316769f (patch) | |
tree | 26d30a26a88861f1fdc501304775ecf37f334acb | |
parent | c14573a4d289fa10ab5bfda6f7a75b32478cdc21 (diff) | |
download | ffmpeg-ee9ae4e8ba167b52267aa3e35d8fc2770316769f.tar.gz |
fftools/ffmpeg: Fix honor -r output option with streamcopy
Fix "ost->st->avg_frame_rate = ost->frame_rate" in streamcopy_init()
being reset to input's frame rate a few lines below.
Note that in current code, there are some discrepancies amongst the
muxers. For example, avienc relies on time_base, so it is not affected
by this patch, whereas mxfenc and matroskaenc do use avg_frame_rate,
so this patch fixes -r being honored.
In the updated fate test, the input is (wrongly) probed as 50fps. With
this patch, the correct value (25fps) is successfully forced with -r.
Signed-off-by: Nicolas Gaullier <nicolas.gaullier@cji.paris>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
-rw-r--r-- | fftools/ffmpeg_mux_init.c | 1 | ||||
-rw-r--r-- | tests/ref/fate/time_base | 2 |
2 files changed, 1 insertions, 2 deletions
diff --git a/fftools/ffmpeg_mux_init.c b/fftools/ffmpeg_mux_init.c index e84fa9719f..37d626add6 100644 --- a/fftools/ffmpeg_mux_init.c +++ b/fftools/ffmpeg_mux_init.c @@ -1012,7 +1012,6 @@ static int streamcopy_init(const Muxer *mux, OutputStream *ost, AVDictionary **e else sar = par->sample_aspect_ratio; ost->st->sample_aspect_ratio = par->sample_aspect_ratio = sar; - ost->st->avg_frame_rate = ist->st->avg_frame_rate; ost->st->r_frame_rate = ist->st->r_frame_rate; break; } diff --git a/tests/ref/fate/time_base b/tests/ref/fate/time_base index 23875d1fb8..ae96232e60 100644 --- a/tests/ref/fate/time_base +++ b/tests/ref/fate/time_base @@ -1 +1 @@ -b28d4ca13029fdc80a114b56467be9d7 +69ffc45e19ab070bc3e964d7b718fe53 |