Hi all, Working with the IETF Cellar Working Group, https://datatracker.ietf.org/wg/cellar/charter/, Frank Galligan has drafted a proposal for the management of metadata in Matroska to accommodate information on color, full/broadcast range, HDR metadata, chroma subsampling patterns and other information. I'm forwarding it to ffmpeg-devel and libav-devel to encourage any additional comments. The background discussion thus far is visible at https://mailarchive.ietf.org/arch/search/?email_list=cellar&gbt=1&q=Colour+Format+proposal <https://mailarchive.ietf.org/arch/search/?email_list=cellar&gbt=1&q=Colour+Format+proposal>. For context, the structure for Matroska element definitions is currently in draft here: https://github.com/Matroska-Org/ebml-specification/blob/master/specification.markdown#ebml-schema-element-attributes <https://github.com/Matroska-Org/ebml-specification/blob/master/specification.markdown#ebml-schema-element-attributes>.
> Begin forwarded message: > > From: Frank Galligan <frankgalli...@gmail.com> > Subject: Re: [Cellar] [Matroska-devel] Colour Format proposal > Date: February 18, 2016 at 2:50:27 PM EST > To: Dave Rice <d...@dericed.com> > Cc: Jerome Martinez <jer...@mediaarea.net>, Discussion about the current and > future development of Matroska <matroska-de...@lists.matroska.org>, > cel...@ietf.org > > Here is the current proposal, minus the reference to the 265 doc. > > The parent element would be Video [E0]. > > > Element Name: Colour > Level: 4 > ID: [55][B0] > Mandatory: - > Multiple: - > Default: - > Type: m > Description: Settings describing the colour format. > > > Element Name: MatrixCoefficients > Level: 5 > ID: [55][B1] > Mandatory: - > Multiple: - > Default: 2 > Type: u > Description: The Matrix Coefficients of the video used to derive luma and > chroma values from reg, green, and blue color primaries. For > clarity, the value and meanings for MatrixCoefficients are > adopted > from Table 4 of ISO/IEC 23001-8:2013/DCOR1. (0:GBR, 1: BT709, > 2: Unspecified, 3: Reserved, 4: FCC, 5: BT470BG, 6: SMPTE 170M, > 7: SMPTE 240M, 8: YCOCG, 9: BT2020 Non-constant Luminance, > 10: BT2020 Constant Luminance) > > > Element Name: BitsPerChannel > Level: 5 > ID: [55][B2] > Mandatory: - > Multiple: - > Default: 0 > Type: u > Description: Number of decoded bits per channel. A value of 0 indicates that > the BitsPerChannel is unspecified. > > > Element Name: ChromaSubsamplingHorz > Level: 5 > ID: [55][B3] > Mandatory: - > Multiple: - > Default: - > Type: u > Description: The amount of pixels to remove in the Cr and Cb channels for > every > pixel not removed horizontally. Example: For video with 4:2:0 > chroma subsampling, the ChromaSubsamplingHorz should be set to > 1. > > > Element Name: ChromaSubsamplingVert > Level: 5 > ID: [55][B4] > Mandatory: - > Multiple: - > Default: - > Type: u > Description: The amount of pixels to remove in the Cr and Cb channels for > every > pixel not removed vertically. Example: For video with 4:2:0 > chroma > subsampling, the ChromaSubsamplingVert should be set to 1. > > Element Name: CbSubsamplingHorz > Level: 5 > ID: [55][B5] > Mandatory: - > Multiple: - > Default: - > Type: u > Description: The amount of pixels to remove in the Cb channel for every pixel > not removed horizontally. This is additive with > ChromaSubsamplingHorz. Example: For video with 4:2:1 chroma > subsampling, the ChromaSubsamplingHorz should be set to 1 and > CbSubsamplingHorz should be set to 1. > > > Element Name: CbSubsamplingVert > Level: 5 > ID: [55][B6] > Mandatory: - > Multiple: - > Default: - > Type: u > Description: The amount of pixels to remove in the Cb channel for every pixel > not removed vertically. This is additive with > ChromaSubsamplingVert. > > > Element Name: ChromaSitingHorz > Level: 5 > ID: [55][B7] > Mandatory: - > Multiple: - > Default: 0 > Type: u > Description: How Chroma is subsampled horizontally. (0: Unspecified, 1: Left > collocated , 2: Half) > > Element Name: ChromaSitingVert > Level: 5 > ID: [55][B8] > Mandatory: - > Multiple: - > Default: 0 > Type: u > Description: How Chroma is subsampled vertically. (0: Unspecified, 1: Top > collocated , 2: Half) > > > Element Name: Range > Level: 5 > ID: [55][B9] > Mandatory: - > Multiple: - > Default: 0 > Type: u > Description: Clipping of the color ranges. (0: Unspecified, 1: Broadcast > range, > 2: Full range (no clipping), 3: Defined by > MatrixCoefficients/TransferCharacteristics) > > > Element Name: TransferCharacteristics > Level: 5 > ID: [55][BA] > Mandatory: - > Multiple: - > Default: 2 > Type: u > Description: The transfer characteristics of the video. For clarity, the > value > and meanings for TransferCharacteristics 1-15 are adopted from > Table 3 of ISO/IEC 23001-8:2013/DCOR1. TransferCharacteristics > 16-17 are adopted from <265 doc> and 18 is the proposed value of > ARIB STD-B67. (0: Reserved, 1: ITU-R BT.709, 2: Unspecified, > 3: Reserved, 4: Gamma 2.2 curve, 5: Gamma 2.8 curve, > 6: SMPTE 170M, 7: SMPTE 240M, 8: Linear, 9: Log, 10: Log Sqrt, > 11: IEC 61966-2-4, 12: ITU-R BT.1361 Extended Colour Gamut, > 13: IEC 61966-2-1, 14: ITU-R BT.2020 10 bit, > 15: ITU-R BT.2020 12 bit, 16: SMPTE ST 2084, 17: SMPTE ST 428-1 > 18: ARIB STD-B67 (HLG)) > > > Element Name: Primaries > Level: 5 > Mandatory: - > Multiple: - > ID: [55][BB] > Default: 2 > Type: u > Description: The colour primaries of the video. For clarity, the value and > meanings for Primaries are adopted from Table 2 of > ISO/IEC 23001-8:2013/DCOR1. (0: Reserved, 1: ITU-R BT.709, > 2: Unspecified, 3: Reserved, 4: ITU-R BT.470M, 5: ITU-R > BT.470BG, > 6: SMPTE 170M, 7: SMPTE 240M, 8: FILM, 9: ITU-R BT.2020, > 10: SMPTE ST 428-1, 22: JEDEC P22 phosphors) > > > Element Name: MaxCLL > Level: 5 > ID: [55][BC] > Mandatory: - > Multiple: - > Default: - > Type: u > Description: Maximum brightness of a single pixel (Maximum Content Light > Level) > in candelas per square meter (cd/m²). > > > Element Name: MaxFALL > Level: 5 > ID: [55][BD] > Mandatory: - > Multiple: - > Default: - > Type: u > Description: Maximum brightness of a single full frame (Maximum Frame-Average > Light Level) in candelas per square meter (cd/m²). > > > Element Name: MasteringMetadata > Level: 5 > ID: [55][D0] > Mandatory: - > Multiple: - > Default: - > Type: m > Description: SMPTE 2086 mastering data. > > > Element Name: PrimaryRChromaticityX > Level: 6 > ID: [55][D1] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: Red X chromaticity coordinate as defined by CIE 1931. > > > Element Name: PrimaryRChromaticityY > Level: 6 > ID: [55][D2] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: Red Y chromaticity coordinate as defined by CIE 1931. > > > Element Name: PrimaryGChromaticityX > Level: 6 > ID: [55][D3] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > f > Description: Green X chromaticity coordinate as defined by CIE 1931. > > > Element Name: PrimaryGChromaticityY > Level: 6 > ID: [55][D4] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: Green Y chromaticity coordinate as defined by CIE 1931. > > > Element Name: PrimaryBChromaticityX > Level: 6 > ID: [55][D5] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: Blue X chromaticity coordinate as defined by CIE 1931. > > > Element Name: PrimaryBChromaticityY > Level: 6 > ID: [55][D6] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: Blue Y chromaticity coordinate as defined by CIE 1931. > > > Element Name: WhitePointChromaticityX > Level: 6 > ID: [55][D7] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: White point X chromaticity coordinate as defined by CIE 1931. > > > Element Name: WhitePointChromaticityY > Level: 6 > ID: [55][D8] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 1.0 > Default: - > Type: f > Description: White point Y chromaticity coordinate as defined by CIE 1931. > > > Element Name: LuminanceMax > Level: 6 > ID: [55][D9] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 9999.99 > Default: - > Type: f > Description: Maximum luminance. Shall be represented in candelas per square > meter (cd/m²). > > > Element Name: LuminanceMin > Level: 6 > ID: [55][DA] > Mandatory: - > Multiple: - > Range: 0.0 <= f <= 999.9999 > Default: - > Type: f > Description: Minimum luminance. Shall be represented in candelas per square > meter (cd/m²). > > > [IEC23001-8] ISO/IEC 23001-8:2013/DCOR1, "Coding independent media > description code points", 2013, > <http://standards.iso.org/ittf/PubliclyAvailableStandards/c062088_ISO_IEC_23001-8_2013.zip > > <http://standards.iso.org/ittf/PubliclyAvailableStandards/c062088_ISO_IEC_23001-8_2013.zip>>. > > <reference to h265 doc) [...] Those interested in standardization efforts for EBML, Matroska, and FFV1 are encouraged to join the CELLAR Working Group. https://datatracker.ietf.org/wg/cellar/charter/ <https://datatracker.ietf.org/wg/cellar/charter/>. Best Regards, Dave Rice _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel