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 
12 namespace libwebm {
13 
14 enum 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