On Wed, Jul 21, 2021 at 8:29 PM Jan Ekström <jee...@gmail.com> wrote: > > Somehow I missed this in fbb44bc51a647862eb05ae3f9d7d49a0be9bed57 , > even though the lines were within the context. Probably the code > originally being after the this logic had something to do with it, > but previously it only touched the avformat context's codecpar, > which did not affect the encoder codec context whatsoever. > > Fixes #9320 > Fixes #9339 > --- > fftools/ffmpeg.c | 14 ++++++++------ > 1 file changed, 8 insertions(+), 6 deletions(-) > > diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c > index 40e8010096..b0ce7c7c32 100644 > --- a/fftools/ffmpeg.c > +++ b/fftools/ffmpeg.c > @@ -3483,12 +3483,7 @@ static int init_output_stream_encode(OutputStream > *ost, AVFrame *frame) > enc_ctx->bits_per_raw_sample = frame_bits_per_raw_sample; > } > > - if (ost->top_field_first == 0) { > - enc_ctx->field_order = AV_FIELD_BB; > - } else if (ost->top_field_first == 1) { > - enc_ctx->field_order = AV_FIELD_TT; > - } > - > + // Field order: autodetection > if (frame) { > if (enc_ctx->flags & (AV_CODEC_FLAG_INTERLACED_DCT | > AV_CODEC_FLAG_INTERLACED_ME) && > ost->top_field_first >= 0) > @@ -3503,6 +3498,13 @@ static int init_output_stream_encode(OutputStream > *ost, AVFrame *frame) > enc_ctx->field_order = AV_FIELD_PROGRESSIVE; > } > > + // Field order: override > + if (ost->top_field_first == 0) { > + enc_ctx->field_order = AV_FIELD_BB; > + } else if (ost->top_field_first == 1) { > + enc_ctx->field_order = AV_FIELD_TT; > + } > + > if (ost->forced_keyframes) { > if (!strncmp(ost->forced_keyframes, "expr:", 5)) { > ret = av_expr_parse(&ost->forced_keyframes_pexpr, > ost->forced_keyframes+5, > -- > 2.31.1 >
Ping. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".