[FFmpeg-devel] [PATCH] libavutil/video_enc_params: add block type

Lynne dev at lynne.ee
Wed Jul 8 01:33:29 EEST 2020


Jul 7, 2020, 23:11 by yongle.lin.94 at gmail.com:

> add block type field to AVVideoBlockParams so we could either export or visualize it later.
> ---
>  libavutil/video_enc_params.h | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
>
> diff --git a/libavutil/video_enc_params.h b/libavutil/video_enc_params.h
> index 43fa443154..c18dba7879 100644
> --- a/libavutil/video_enc_params.h
> +++ b/libavutil/video_enc_params.h
> @@ -57,6 +57,11 @@ enum AVVideoEncParamsType {
>  AV_VIDEO_ENC_PARAMS_H264,
>  };
>  
> +enum AVVideoBlockType {
> +    AV_VIDEO_ENC_BLOCK_INTRA = 1ULL <<  0,  /* Indicates block uses intra prediction */
> +    AV_VIDEO_ENC_BLOCK_SKIP = 1ULL <<  1,   /* Indicates block is not coded (skipped) */
> +};
> +
>  /**
>  * Video encoding parameters for a given frame. This struct is allocated along
>  * with an optional array of per-block AVVideoBlockParams descriptors.
> @@ -126,6 +131,17 @@ typedef struct AVVideoBlockParams {
>  * corresponding per-frame value.
>  */
>  int32_t delta_qp;
> +
> +    /**
> +     * Type of block
> +     * Each bit field indicates a type flag
> +     */
> +    enum AVVideoBlockType type;
>

I would like to have the name "type" reserved for the future when we might have to
specify a block type using a specific type rather than using flags.
So could you rename this to "flags" instead?

Apart from that, this looks fine to me.


More information about the ffmpeg-devel mailing list