[FFmpeg-devel] [crop support for matroska demuxer 1/3] libavcodec: Add crop related fields to structure AVCodecContext and AVCodecParameters.

Hendrik Leppkes h.leppkes at gmail.com
Sat Oct 1 10:06:58 EEST 2022


On Sat, Oct 1, 2022 at 8:14 AM OvchinnikovDmitrii
<ovchinnikov.dmitrii at gmail.com> wrote:
>
> ---
>  libavcodec/avcodec.h   | 8 ++++++++
>  libavcodec/codec_par.h | 8 ++++++++
>  2 files changed, 16 insertions(+)
>
> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> index 7365eb5cc0..66df571afc 100644
> --- a/libavcodec/avcodec.h
> +++ b/libavcodec/avcodec.h
> @@ -585,6 +585,14 @@ typedef struct AVCodecContext {
>       */
>      int coded_width, coded_height;
>
> +    /**
> +     * The dimensions of the crop, usually from container.
> +     */
> +    int crop_top;
> +    int crop_left;
> +    int crop_bottom;
> +    int crop_right;
> +
>      /**
>       * the number of pictures in a group of pictures, or 0 for intra_only
>       * - encoding: Set by user.
> diff --git a/libavcodec/codec_par.h b/libavcodec/codec_par.h
> index 7660791a12..c730a79957 100644
> --- a/libavcodec/codec_par.h
> +++ b/libavcodec/codec_par.h
> @@ -210,6 +210,14 @@ typedef struct AVCodecParameters {
>       * Audio only. The channel layout and number of channels.
>       */
>      AVChannelLayout ch_layout;
> +
> +    /**
> +     * The dimensions of the crop, usually from container.
> +     */
> +    int crop_top;
> +    int crop_left;
> +    int crop_bottom;
> +    int crop_right;
>  } AVCodecParameters;
>

All of these should be size_t (and in AVCodecContext as well,
naturally), matching the type in AVFrame.

- Hendrik


More information about the ffmpeg-devel mailing list