aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2023-04-11 09:34:29 +0200
committerAnton Khirnov <anton@khirnov.net>2023-04-17 12:01:36 +0200
commit4fc513b5e379dc4d45c8aa23af7d580708bbe4d9 (patch)
tree6a3d6bac4139db4175fc20cd91416415d916ae73
parenta0452ee83750afe0e279d3cbe7a678e2a72f93b4 (diff)
downloadffmpeg-4fc513b5e379dc4d45c8aa23af7d580708bbe4d9.tar.gz
fftools/ffmpeg: move a misplaced assignment
Changing AVCodecContext.sample_aspect_ratio after the encoder was opened is by itself questionable, but if anywhere it belongs in encoding rather than filtering code.
-rw-r--r--fftools/ffmpeg.c3
-rw-r--r--fftools/ffmpeg_enc.c3
2 files changed, 3 insertions, 3 deletions
diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index d59de62546..0f43b7baa7 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -711,9 +711,6 @@ static int reap_filters(int flush)
switch (av_buffersink_get_type(filter)) {
case AVMEDIA_TYPE_VIDEO:
- if (!ost->frame_aspect_ratio.num)
- enc->sample_aspect_ratio = filtered_frame->sample_aspect_ratio;
-
enc_frame(ost, filtered_frame);
break;
case AVMEDIA_TYPE_AUDIO:
diff --git a/fftools/ffmpeg_enc.c b/fftools/ffmpeg_enc.c
index a0779c45ae..0236e50e38 100644
--- a/fftools/ffmpeg_enc.c
+++ b/fftools/ffmpeg_enc.c
@@ -653,6 +653,9 @@ static int encode_frame(OutputFile *of, OutputStream *ost, AVFrame *frame)
av_ts2str(frame->pts), av_ts2timestr(frame->pts, &enc->time_base),
enc->time_base.num, enc->time_base.den);
}
+
+ if (frame->sample_aspect_ratio.num && !ost->frame_aspect_ratio.num)
+ enc->sample_aspect_ratio = frame->sample_aspect_ratio;
}
update_benchmark(NULL);