View Single Post
Old 15th November 2017, 12:11   #47178  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,348
Quote:
Originally Posted by chros View Post
1. Data
Picture data is stored as bt.2020 (???) 10bit 4:2:0, or just or DCI-P3 in a bt.2020 container (???), resulting in a washed out picture.
- Wait, what????! Washed out picture?
- so, how does a true red become some greyish color when it's stored?
- I thought we have a truly increased color space compared to bt.709. Is it similar cheating as with those old anamorphic DVDs?
Its stored as BT.2020, 10-bit 4:2:0. The actually used colorspace could be smaller, and usually is in fact DCI-P3 for now. The HDR metadata tells you this.
The more important part about HDR however is that its stored using a different transfer function (ie. how to convert it to RGB), called PQ (Perceptual Quantizer, standardized as SMPTE ST 2084), and if you use the wrong one it looks washed out - for example, if a renderer doesn't support HDR, or the info has gone missing.

There is no "cheating", it just looks washed out when its being mis-interpreted by the renderer. You can't look at a YCbCr image without some sort of processing, and if you do that processing wrong, it won't make much sense.

Quote:
Originally Posted by chros View Post
How does the static HDR10 metadata look like?
- is it stored in the beginning of the hevc video data?
- is it just couple of properties (bytes) about the mastering attributes and picture levels and "that's it"?
The HDR10 metadata is stored with every HEVC CVS (coded video sequence, what most people call "GOP"), so its repeated regularly in the bitstream. In a file format like MPEG-TS, as used on Blu-ray, this is important, because there are no global headers at the beginning of the file, or anything like that.

It doesn't contain a whole lot. It contains the color volume (ie. it specifies that the mastering was done in DCI-P3, for example), the white point, and the min/max luminance of the mastering display.

Quote:
Originally Posted by chros View Post
2. Processing
Splitter and decoder pass data to renderer (MadVR) for further processing:
- that probably happens in the "limited washed out pictures" world
- then either passthrough or HDR processing happens (for SD displays)
-- what does bt.2020 -> DCI-P3 means in OSD?
As explained above, there is no "washed out picture"

The data is passed as untouched YCbCr to madVR, which then converts it to RGB. Either for pass-through, or conversion to SDR.
BT.2020 -> DCI-P3 means that its using a BT.2020 container with DCI-P3 color volume, as described above.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote