[FFmpeg-devel] [PATCH] ffmpeg_opts: remove lowres check
James Almer
jamrial at gmail.com
Thu Jan 21 03:56:12 EET 2021
On 1/9/2021 2:47 PM, James Almer wrote:
> The st->codec values are updated based on the lowres factor by
> avformat_find_stream_info() when it runs an instance of the decoder internally,
> and the same thing happens in ffmpeg.c when we open ist->dec_ctx with
> avcodec_open2(), so these assignments are redundant.
>
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
> This chunk here is not properly wrapped with the relevant pre-processor check
> for AVStream->codec, and seeing it's ultimately redundant, i figured we might
> as well delete it now.
>
> For that matter, the deprecation of lowres in avcodec.h is in a very strange
> state (the field is not removed, its offset is changed instead). Once the value
> of FF_API_LOWRES is flipped, neither the field, the AVOption, or the usage
> within decoders will be removed, but some code in libavformat/utils.c will be
> disabled, and that may result in unexpected behavior.
>
> fftools/ffmpeg_opt.c | 9 ---------
> 1 file changed, 9 deletions(-)
>
> diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c
> index c295514401..dec523d621 100644
> --- a/fftools/ffmpeg_opt.c
> +++ b/fftools/ffmpeg_opt.c
> @@ -867,15 +867,6 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic)
> case AVMEDIA_TYPE_VIDEO:
> if(!ist->dec)
> ist->dec = avcodec_find_decoder(par->codec_id);
> -#if FF_API_LOWRES
> - if (st->codec->lowres) {
> - ist->dec_ctx->lowres = st->codec->lowres;
> - ist->dec_ctx->width = st->codec->width;
> - ist->dec_ctx->height = st->codec->height;
> - ist->dec_ctx->coded_width = st->codec->coded_width;
> - ist->dec_ctx->coded_height = st->codec->coded_height;
> - }
> -#endif
>
> // avformat_find_stream_info() doesn't set this for us anymore.
> ist->dec_ctx->framerate = st->avg_frame_rate;
Will apply soon.
More information about the ffmpeg-devel
mailing list