avcodec/cbs_av1: fix range of values for Mastering Display Color Volume Metadata OBUs
Signed-off-by: James Almer <jamrial@gmail.com>
(cherry picked from commit 40490b3a63)
This commit is contained in:
parent
abf36b76de
commit
6972b353b4
1 changed files with 8 additions and 5 deletions
|
|
@ -1637,15 +1637,18 @@ static int FUNC(metadata_hdr_mdcv)(CodedBitstreamContext *ctx, RWContext *rw,
|
|||
int err, i;
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
fcs(16, primary_chromaticity_x[i], 0, 50000, 1, i);
|
||||
fcs(16, primary_chromaticity_y[i], 0, 50000, 1, i);
|
||||
fbs(16, primary_chromaticity_x[i], 1, i);
|
||||
fbs(16, primary_chromaticity_y[i], 1, i);
|
||||
}
|
||||
|
||||
fc(16, white_point_chromaticity_x, 0, 50000);
|
||||
fc(16, white_point_chromaticity_y, 0, 50000);
|
||||
fb(16, white_point_chromaticity_x);
|
||||
fb(16, white_point_chromaticity_y);
|
||||
|
||||
fc(32, luminance_max, 1, MAX_UINT_BITS(32));
|
||||
fc(32, luminance_min, 0, current->luminance_max >> 6);
|
||||
// luminance_min must be lower than luminance_max. Convert luminance_max from
|
||||
// 24.8 fixed point to 18.14 fixed point in order to compare them.
|
||||
fc(32, luminance_min, 0, FFMIN(((uint64_t)current->luminance_max << 6) - 1,
|
||||
MAX_UINT_BITS(32)));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue