ByteStreamsUtils.h (1491B)
1 /* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 5 #ifndef DOM_MEDIA_PLATFORMS_AGNOSTIC_BYTESTREAMS_BYTESTREAMUTILS_H_ 6 #define DOM_MEDIA_PLATFORMS_AGNOSTIC_BYTESTREAMS_BYTESTREAMUTILS_H_ 7 8 namespace mozilla { 9 10 // Described in ISO 23001-8:2016 11 // H264 spec Table 2, H265 spec Table E.3 12 enum class PrimaryID : uint8_t { 13 INVALID = 0, 14 BT709 = 1, 15 UNSPECIFIED = 2, 16 BT470M = 4, 17 BT470BG = 5, 18 SMPTE170M = 6, 19 SMPTE240M = 7, 20 FILM = 8, 21 BT2020 = 9, 22 SMPTEST428_1 = 10, 23 SMPTEST431_2 = 11, 24 SMPTEST432_1 = 12, 25 EBU_3213_E = 22 26 }; 27 28 // H264 spec Table 3, H265 spec Table E.4 29 enum class TransferID : uint8_t { 30 INVALID = 0, 31 BT709 = 1, 32 UNSPECIFIED = 2, 33 GAMMA22 = 4, 34 GAMMA28 = 5, 35 SMPTE170M = 6, 36 SMPTE240M = 7, 37 LINEAR = 8, 38 LOG = 9, 39 LOG_SQRT = 10, 40 IEC61966_2_4 = 11, 41 BT1361_ECG = 12, 42 IEC61966_2_1 = 13, 43 BT2020_10 = 14, 44 BT2020_12 = 15, 45 SMPTEST2084 = 16, 46 SMPTEST428_1 = 17, 47 48 // Not yet standardized 49 ARIB_STD_B67 = 18, // AKA hybrid-log gamma, HLG. 50 }; 51 52 // H264 spec Table 4, H265 spec Table E.5 53 enum class MatrixID : uint8_t { 54 RGB = 0, 55 BT709 = 1, 56 UNSPECIFIED = 2, 57 FCC = 4, 58 BT470BG = 5, 59 SMPTE170M = 6, 60 SMPTE240M = 7, 61 YCOCG = 8, 62 BT2020_NCL = 9, 63 BT2020_CL = 10, 64 YDZDX = 11, 65 INVALID = 255, 66 }; 67 68 } // namespace mozilla 69 70 #endif // DOM_MEDIA_PLATFORMS_AGNOSTIC_BYTESTREAMS_H265_H_