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')
This commit is contained in:
Niklas Haas 2024-06-18 18:19:13 +02:00
parent 6b66df74b8
commit e42a0763b7
2 changed files with 4 additions and 3 deletions

View File

@ -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.
*

View File

@ -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--;