On Tue, Feb 28, 2023 at 4:01 AM Anton Khirnov <an...@khirnov.net> wrote:
>
> ---
>  libavcodec/libvpxenc.c | 139 +++++++++++++++++++++++++++++------------
>  libavcodec/version.h   |   2 +-
>  2 files changed, 100 insertions(+), 41 deletions(-)
>

lgtm

> diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
> index 77921badba..af16e53deb 100644
> --- a/libavcodec/libvpxenc.c
> +++ b/libavcodec/libvpxenc.c
> @@ -68,6 +68,14 @@ struct FrameListData {
>
>  typedef struct FrameData {
>      int64_t pts;
> +    int64_t duration;
> +
> +#if FF_API_REORDERED_OPAQUE
> +    int64_t      reordered_opaque;
> +#endif
> +    void        *frame_opaque;
> +    AVBufferRef *frame_opaque_ref;
> +
>      AVBufferRef *hdr10_plus;
>  } FrameData;
>
> @@ -329,32 +337,101 @@ static av_cold void free_frame_list(struct 
> FrameListData *list)
>      }
>  }
>
> +static void frame_data_uninit(FrameData *fd)
> +{
> +    av_buffer_unref(&fd->frame_opaque_ref);
> +    av_buffer_unref(&fd->hdr10_plus);
> +}
> +
>  static av_cold void fifo_free(AVFifo **fifo)
>  {
>      FrameData fd;
>      while (av_fifo_read(*fifo, &fd, 1) >= 0)
> -        av_buffer_unref(&fd.hdr10_plus);
> +        frame_data_uninit(&fd);
>      av_fifo_freep2(fifo);
>  }
>
> -static int frame_data_apply(AVFifo *fifo, AVPacket *pkt)
> +static int frame_data_submit(AVCodecContext *avctx, AVFifo *fifo,
> +                             const AVFrame *frame)
> +{
> +    VPxContext *ctx = avctx->priv_data;
> +    const struct vpx_codec_enc_cfg *enccfg = ctx->encoder.config.enc;
> +
> +    FrameData        fd = { .pts = frame->pts };
> +

The alignment of this declaration looks strange.

> +    AVFrameSideData *av_uninit(sd);
> +    int ret;
> +
> +#if CONFIG_LIBVPX_VP9_ENCODER
> +    // Keep HDR10+ if it has bit depth higher than 8 and
> +    // it has PQ trc (SMPTE2084).

Out of curiosity are there any HDR10+ files in fate?

> [...]
> diff --git a/libavcodec/version.h b/libavcodec/version.h
> index 06631ffa8c..789d9047c2 100644
> --- a/libavcodec/version.h
> +++ b/libavcodec/version.h
> @@ -30,7 +30,7 @@
>  #include "version_major.h"
>
>  #define LIBAVCODEC_VERSION_MINOR   4
> -#define LIBAVCODEC_VERSION_MICRO 100
> +#define LIBAVCODEC_VERSION_MICRO 101
>

This needs a rebase to apply cleanly.
_______________________________________________
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".

Reply via email to