[FFmpeg-devel] [PATCH v2 0/3] avcodec: move HDR10 (MDCV/CLL) SEI handling to h2645_sei

Jan Ekström jeebjp at gmail.com
Tue Jul 25 22:29:08 EEST 2023


This allows parsing code to be re-utilized from H.264, as well as probably
from VVC in the future.

This additionally eases verification of the AVCodecContext side data patch
set, which includes libx264 integration for HDR10 side data.

Changes from v1:
* Reordered the new h2645_sei include to correct location as per alphabetical
  order. Thanks for Leo Izen for noticing this.
* Cleaned up the mastering_display_metadata.h include in hevcdec, as that file
  no longer directly handles AVContentLightMetadata or
  AVMasteringDisplayMetadata.

Notes: 
* In addition to testing with FATE, looking at the show_frames ffprobe output
  for a UHD BD sample with each IRAP containing these SEI entries, the
  behavior is the same as before with regards to each frame having the side
  data persist.

  There is also no change with tests I've done with a UHD BD mp4 remux as well
  as an iphone 12 sample I had around, So I think I have not modified the HEVC
  behavior in any great manner.
* As for H.264, it now automatically gains support for these SEI messages. It
  seems like its definition of CVS (coded video sequence) is from one IDR to
  another (essentially a GOP). That said, currently the decoder resets the SEI
  setup in decode_nal_units, which means that the side data only persist for
  a single frame.

Jan

Jan Ekström (3):
  avcodec: move mastering display colour volume SEI handling to
    h2645_sei
  avcodec: move content light level SEI handling to h2645_sei
  avcodec/hevcdec: simplify decrementing of MDCV/CLL flags

 libavcodec/h2645_sei.c                 | 112 +++++++++++++++++++++++++
 libavcodec/h2645_sei.h                 |  16 ++++
 libavcodec/h264_slice.c                |   2 +
 libavcodec/hevc_sei.c                  |  50 -----------
 libavcodec/hevc_sei.h                  |  16 ----
 libavcodec/hevcdec.c                   |  79 +++--------------
 tests/ref/fate/hevc-hdr-vivid-metadata |   6 +-
 7 files changed, 143 insertions(+), 138 deletions(-)

-- 
2.41.0



More information about the ffmpeg-devel mailing list