[FFmpeg-devel] [PATCH 01/22] avutil/dovi_meta: document static vs dynamic ext blocks

Niklas Haas ffmpeg at haasn.xyz
Fri Aug 16 12:53:00 EEST 2024


On Wed, 31 Jul 2024 14:14:02 +0200 Niklas Haas <ffmpeg at haasn.xyz> wrote:
> On Sun, 28 Jul 2024 12:25:06 +0200 Niklas Haas <ffmpeg at haasn.xyz> wrote:
> > From: Niklas Haas <git at haasn.dev>
> > 
> > ---
> >  libavutil/dovi_meta.h | 28 +++++++++++++++-------------
> >  1 file changed, 15 insertions(+), 13 deletions(-)
> > 
> > diff --git a/libavutil/dovi_meta.h b/libavutil/dovi_meta.h
> > index c942d0e133..5e8a1e43d7 100644
> > --- a/libavutil/dovi_meta.h
> > +++ b/libavutil/dovi_meta.h
> > @@ -301,26 +301,28 @@ typedef struct AVDOVIDmLevel255 {
> >  } AVDOVIDmLevel255;
> >  
> >  /**
> > - * Dolby Vision metadata extension block.
> > + * Dolby Vision metadata extension block. Dynamic extension blocks may change
> > + * from frame to frame, while static blocks are constant throughout the entire
> > + * sequence.
> >   *
> >   * @note sizeof(AVDOVIDmData) is not part of the public API.
> >   */
> >  typedef struct AVDOVIDmData {
> >      uint8_t level; /* [1, 255] */
> >      union {
> > -        AVDOVIDmLevel1 l1;
> > -        AVDOVIDmLevel2 l2; /* may appear multiple times */
> > -        AVDOVIDmLevel3 l3;
> > -        AVDOVIDmLevel4 l4;
> > -        AVDOVIDmLevel5 l5;
> > -        AVDOVIDmLevel6 l6;
> > +        AVDOVIDmLevel1 l1; /* dynamic */
> > +        AVDOVIDmLevel2 l2; /* dynamic, may appear multiple times */
> > +        AVDOVIDmLevel3 l3; /* dynamic */
> > +        AVDOVIDmLevel4 l4; /* dynamic */
> > +        AVDOVIDmLevel5 l5; /* dynamic */
> > +        AVDOVIDmLevel6 l6; /* static */
> >          /* level 7 is currently unused */
> > -        AVDOVIDmLevel8 l8; /* may appear multiple times */
> > -        AVDOVIDmLevel9 l9;
> > -        AVDOVIDmLevel10 l10; /* may appear multiple times */
> > -        AVDOVIDmLevel11 l11;
> > -        AVDOVIDmLevel254 l254;
> > -        AVDOVIDmLevel255 l255;
> > +        AVDOVIDmLevel8 l8; /* dynamic, may appear multiple times */
> > +        AVDOVIDmLevel9 l9; /* dynamic */
> > +        AVDOVIDmLevel10 l10; /* static, may appear multiple times */
> > +        AVDOVIDmLevel11 l11; /* dynamic */
> > +        AVDOVIDmLevel254 l254; /* static */
> > +        AVDOVIDmLevel255 l255; /* static */
> >      };
> >  } AVDOVIDmData;
> >  
> > -- 
> > 2.45.2
> > 
> 
> Ping for review. Code passes DV bitstream validator, so will consider merging
> soon if there are no objections.

Merged without these two commits:

avcodec/libsvtav1: raise strictness of missing DV error
avcodec/libx265: raise strictness of missing DV error


More information about the ffmpeg-devel mailing list