diff options
author | Anton Khirnov <anton@khirnov.net> | 2023-04-11 09:34:29 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2023-04-17 12:01:36 +0200 |
commit | 4fc513b5e379dc4d45c8aa23af7d580708bbe4d9 (patch) | |
tree | 6a3d6bac4139db4175fc20cd91416415d916ae73 | |
parent | a0452ee83750afe0e279d3cbe7a678e2a72f93b4 (diff) | |
download | ffmpeg-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.c | 3 | ||||
-rw-r--r-- | fftools/ffmpeg_enc.c | 3 |
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); |