[FFmpeg-cvslog] avcodec/dovi_rpudec: clarify semantics

Niklas Haas git at videolan.org
Sun Jul 28 13:22:47 EEST 2024


ffmpeg | branch: master | Niklas Haas <git at haasn.dev> | Tue Jun 18 18:19:13 2024 +0200| [e42a0763b71ccb5b970ad17eb5129c064db36899] | committer: Niklas Haas

avcodec/dovi_rpudec: clarify semantics

ff_dovi_rpu_parse() and ff_dovi_rpu_generate() are a bit inconsistent in
that they expect different levels of encapsulation, due to the nature of
how this is handled in the context of different APIs. Clarify the status
quo. (And fix an incorrect reference to the RPU payload bytes as 'RBSP')

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e42a0763b71ccb5b970ad17eb5129c064db36899
---

 libavcodec/dovi_rpu.h    | 5 +++--
 libavcodec/dovi_rpudec.c | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/libavcodec/dovi_rpu.h b/libavcodec/dovi_rpu.h
index bfb118d6b5..205d16ffbc 100644
--- a/libavcodec/dovi_rpu.h
+++ b/libavcodec/dovi_rpu.h
@@ -95,8 +95,9 @@ void ff_dovi_ctx_unref(DOVIContext *s);
 void ff_dovi_ctx_flush(DOVIContext *s);
 
 /**
- * Parse the contents of a Dovi RPU NAL and update the parsed values in the
- * DOVIContext struct.
+ * Parse the contents of a Dolby Vision RPU and update the parsed values in the
+ * DOVIContext struct. This function should receive the decoded unit payload,
+ * without any T.35 or NAL unit headers.
  *
  * Returns 0 or an error code.
  *
diff --git a/libavcodec/dovi_rpudec.c b/libavcodec/dovi_rpudec.c
index c025800206..375e6e560b 100644
--- a/libavcodec/dovi_rpudec.c
+++ b/libavcodec/dovi_rpudec.c
@@ -360,7 +360,7 @@ int ff_dovi_rpu_parse(DOVIContext *s, const uint8_t *rpu, size_t rpu_size,
         emdf_protection = get_bits(gb, 5 + 12);
         VALIDATE(emdf_protection, 0x400, 0x400);
     } else {
-        /* NAL RBSP with prefix and trailing zeroes */
+        /* NAL unit with prefix and trailing zeroes */
         VALIDATE(rpu[0], 25, 25); /* NAL prefix */
         rpu++;
         rpu_size--;



More information about the ffmpeg-cvslog mailing list