1// Copyright (c) 2012 The WebM project authors. All Rights Reserved.
2//
3// Use of this source code is governed by a BSD-style license
4// that can be found in the LICENSE file in the root of the source
5// tree. An additional intellectual property rights grant can be found
6// in the file PATENTS.  All contributing project authors may
7// be found in the AUTHORS file in the root of the source tree.
8
9#ifndef COMMON_WEBMIDS_H_
10#define COMMON_WEBMIDS_H_
11
12namespace libwebm {
13
14enum MkvId {
15  kMkvEBML = 0x1A45DFA3,
16  kMkvEBMLVersion = 0x4286,
17  kMkvEBMLReadVersion = 0x42F7,
18  kMkvEBMLMaxIDLength = 0x42F2,
19  kMkvEBMLMaxSizeLength = 0x42F3,
20  kMkvDocType = 0x4282,
21  kMkvDocTypeVersion = 0x4287,
22  kMkvDocTypeReadVersion = 0x4285,
23  kMkvVoid = 0xEC,
24  kMkvSignatureSlot = 0x1B538667,
25  kMkvSignatureAlgo = 0x7E8A,
26  kMkvSignatureHash = 0x7E9A,
27  kMkvSignaturePublicKey = 0x7EA5,
28  kMkvSignature = 0x7EB5,
29  kMkvSignatureElements = 0x7E5B,
30  kMkvSignatureElementList = 0x7E7B,
31  kMkvSignedElement = 0x6532,
32  // segment
33  kMkvSegment = 0x18538067,
34  // Meta Seek Information
35  kMkvSeekHead = 0x114D9B74,
36  kMkvSeek = 0x4DBB,
37  kMkvSeekID = 0x53AB,
38  kMkvSeekPosition = 0x53AC,
39  // Segment Information
40  kMkvInfo = 0x1549A966,
41  kMkvTimecodeScale = 0x2AD7B1,
42  kMkvDuration = 0x4489,
43  kMkvDateUTC = 0x4461,
44  kMkvTitle = 0x7BA9,
45  kMkvMuxingApp = 0x4D80,
46  kMkvWritingApp = 0x5741,
47  // Cluster
48  kMkvCluster = 0x1F43B675,
49  kMkvTimecode = 0xE7,
50  kMkvPrevSize = 0xAB,
51  kMkvBlockGroup = 0xA0,
52  kMkvBlock = 0xA1,
53  kMkvBlockDuration = 0x9B,
54  kMkvReferenceBlock = 0xFB,
55  kMkvLaceNumber = 0xCC,
56  kMkvSimpleBlock = 0xA3,
57  kMkvBlockAdditions = 0x75A1,
58  kMkvBlockMore = 0xA6,
59  kMkvBlockAddID = 0xEE,
60  kMkvBlockAdditional = 0xA5,
61  kMkvDiscardPadding = 0x75A2,
62  // Track
63  kMkvTracks = 0x1654AE6B,
64  kMkvTrackEntry = 0xAE,
65  kMkvTrackNumber = 0xD7,
66  kMkvTrackUID = 0x73C5,
67  kMkvTrackType = 0x83,
68  kMkvFlagEnabled = 0xB9,
69  kMkvFlagDefault = 0x88,
70  kMkvFlagForced = 0x55AA,
71  kMkvFlagLacing = 0x9C,
72  kMkvDefaultDuration = 0x23E383,
73  kMkvMaxBlockAdditionID = 0x55EE,
74  kMkvName = 0x536E,
75  kMkvLanguage = 0x22B59C,
76  kMkvCodecID = 0x86,
77  kMkvCodecPrivate = 0x63A2,
78  kMkvCodecName = 0x258688,
79  kMkvCodecDelay = 0x56AA,
80  kMkvSeekPreRoll = 0x56BB,
81  // video
82  kMkvVideo = 0xE0,
83  kMkvFlagInterlaced = 0x9A,
84  kMkvStereoMode = 0x53B8,
85  kMkvAlphaMode = 0x53C0,
86  kMkvPixelWidth = 0xB0,
87  kMkvPixelHeight = 0xBA,
88  kMkvPixelCropBottom = 0x54AA,
89  kMkvPixelCropTop = 0x54BB,
90  kMkvPixelCropLeft = 0x54CC,
91  kMkvPixelCropRight = 0x54DD,
92  kMkvDisplayWidth = 0x54B0,
93  kMkvDisplayHeight = 0x54BA,
94  kMkvDisplayUnit = 0x54B2,
95  kMkvAspectRatioType = 0x54B3,
96  kMkvFrameRate = 0x2383E3,
97  // end video
98  // colour
99  kMkvColour = 0x55B0,
100  kMkvMatrixCoefficients = 0x55B1,
101  kMkvBitsPerChannel = 0x55B2,
102  kMkvChromaSubsamplingHorz = 0x55B3,
103  kMkvChromaSubsamplingVert = 0x55B4,
104  kMkvCbSubsamplingHorz = 0x55B5,
105  kMkvCbSubsamplingVert = 0x55B6,
106  kMkvChromaSitingHorz = 0x55B7,
107  kMkvChromaSitingVert = 0x55B8,
108  kMkvRange = 0x55B9,
109  kMkvTransferCharacteristics = 0x55BA,
110  kMkvPrimaries = 0x55BB,
111  kMkvMaxCLL = 0x55BC,
112  kMkvMaxFALL = 0x55BD,
113  // mastering metadata
114  kMkvMasteringMetadata = 0x55D0,
115  kMkvPrimaryRChromaticityX = 0x55D1,
116  kMkvPrimaryRChromaticityY = 0x55D2,
117  kMkvPrimaryGChromaticityX = 0x55D3,
118  kMkvPrimaryGChromaticityY = 0x55D4,
119  kMkvPrimaryBChromaticityX = 0x55D5,
120  kMkvPrimaryBChromaticityY = 0x55D6,
121  kMkvWhitePointChromaticityX = 0x55D7,
122  kMkvWhitePointChromaticityY = 0x55D8,
123  kMkvLuminanceMax = 0x55D9,
124  kMkvLuminanceMin = 0x55DA,
125  // end mastering metadata
126  // end colour
127  // projection
128  kMkvProjection = 0x7670,
129  kMkvProjectionType = 0x7671,
130  kMkvProjectionPrivate = 0x7672,
131  kMkvProjectionPoseYaw = 0x7673,
132  kMkvProjectionPosePitch = 0x7674,
133  kMkvProjectionPoseRoll = 0x7675,
134  // end projection
135  // audio
136  kMkvAudio = 0xE1,
137  kMkvSamplingFrequency = 0xB5,
138  kMkvOutputSamplingFrequency = 0x78B5,
139  kMkvChannels = 0x9F,
140  kMkvBitDepth = 0x6264,
141  // end audio
142  // ContentEncodings
143  kMkvContentEncodings = 0x6D80,
144  kMkvContentEncoding = 0x6240,
145  kMkvContentEncodingOrder = 0x5031,
146  kMkvContentEncodingScope = 0x5032,
147  kMkvContentEncodingType = 0x5033,
148  kMkvContentCompression = 0x5034,
149  kMkvContentCompAlgo = 0x4254,
150  kMkvContentCompSettings = 0x4255,
151  kMkvContentEncryption = 0x5035,
152  kMkvContentEncAlgo = 0x47E1,
153  kMkvContentEncKeyID = 0x47E2,
154  kMkvContentSignature = 0x47E3,
155  kMkvContentSigKeyID = 0x47E4,
156  kMkvContentSigAlgo = 0x47E5,
157  kMkvContentSigHashAlgo = 0x47E6,
158  kMkvContentEncAESSettings = 0x47E7,
159  kMkvAESSettingsCipherMode = 0x47E8,
160  kMkvAESSettingsCipherInitData = 0x47E9,
161  // end ContentEncodings
162  // Cueing Data
163  kMkvCues = 0x1C53BB6B,
164  kMkvCuePoint = 0xBB,
165  kMkvCueTime = 0xB3,
166  kMkvCueTrackPositions = 0xB7,
167  kMkvCueTrack = 0xF7,
168  kMkvCueClusterPosition = 0xF1,
169  kMkvCueBlockNumber = 0x5378,
170  // Chapters
171  kMkvChapters = 0x1043A770,
172  kMkvEditionEntry = 0x45B9,
173  kMkvChapterAtom = 0xB6,
174  kMkvChapterUID = 0x73C4,
175  kMkvChapterStringUID = 0x5654,
176  kMkvChapterTimeStart = 0x91,
177  kMkvChapterTimeEnd = 0x92,
178  kMkvChapterDisplay = 0x80,
179  kMkvChapString = 0x85,
180  kMkvChapLanguage = 0x437C,
181  kMkvChapCountry = 0x437E,
182  // Tags
183  kMkvTags = 0x1254C367,
184  kMkvTag = 0x7373,
185  kMkvSimpleTag = 0x67C8,
186  kMkvTagName = 0x45A3,
187  kMkvTagString = 0x4487
188};
189
190}  // namespace libwebm
191
192#endif  // COMMON_WEBMIDS_H_
193