Quoting James Zern (2023-02-28 22:11:29) > On Tue, Feb 28, 2023 at 4:01 AM Anton Khirnov <an...@khirnov.net> wrote: > > 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.
Ah yes, it's a remnant from before I moved it to a separate function. Fixed locally. > > > + 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? Yes, there is hevc/hdr10_plus_h265_sample.hevc. I tested that the side data does appear on output packets. > > > [...] > > 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. Rebased locally. -- Anton Khirnov _______________________________________________ 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".