mp4ra_rust/generated.rs
1// --------
2// WARNING
3// This is generated code.
4// If you need changes, alter the mp4ra_crategen project, not this file.
5// --------
6impl HandlerCode {
7 /// 3GPP Scene Description
8 ///
9 /// FourCC: `3gsd`
10 ///
11 /// Specification: _3GPP_
12 pub const THREE_GSD: HandlerCode = HandlerCode::new(*b"3gsd");
13 /// Auxiliary video
14 ///
15 /// FourCC: `auxv`
16 ///
17 /// Specification: _ISO_
18 pub const AUXV: HandlerCode = HandlerCode::new(*b"auxv");
19 /// Avid Metadata
20 ///
21 /// FourCC: `avmd`
22 ///
23 /// Specification: _Avid_
24 pub const AVMD: HandlerCode = HandlerCode::new(*b"avmd");
25 /// Closed Caption
26 ///
27 /// FourCC: `clcp`
28 ///
29 /// Specification: _Apple_
30 pub const CLCP: HandlerCode = HandlerCode::new(*b"clcp");
31 /// CPCM Auxiliary Metadata
32 ///
33 /// FourCC: `cpad`
34 ///
35 /// Specification: _DVB_
36 pub const CPAD: HandlerCode = HandlerCode::new(*b"cpad");
37 /// ClockReferenceStream
38 ///
39 /// FourCC: `crsm`
40 ///
41 /// Specification: _MP4v2_
42 pub const CRSM: HandlerCode = HandlerCode::new(*b"crsm");
43 /// DVB Mandatory Metadata
44 ///
45 /// FourCC: `dmbd`
46 ///
47 /// Specification: _DVB_
48 pub const DMBD: HandlerCode = HandlerCode::new(*b"dmbd");
49 /// TV-Anytime Metadata, according to DVB specifications
50 ///
51 /// FourCC: `dtva`
52 ///
53 /// Specification: _DVB_
54 pub const DTVA: HandlerCode = HandlerCode::new(*b"dtva");
55 /// withdrawn, unused, do not use (was Dolby Vision Metadata)
56 ///
57 /// FourCC: `dvmd`
58 ///
59 /// Specification: _Deprecated_
60 pub const DVMD: HandlerCode = HandlerCode::new(*b"dvmd");
61 /// Font
62 ///
63 /// FourCC: `fdsm`
64 ///
65 /// Specification: _ISO_
66 pub const FDSM: HandlerCode = HandlerCode::new(*b"fdsm");
67 /// General MPEG-4 systems streams (without specific handler)
68 ///
69 /// FourCC: `gesm`
70 ///
71 /// Specification: _see (1) below_
72 pub const GESM: HandlerCode = HandlerCode::new(*b"gesm");
73 /// Subtitle Graphics
74 ///
75 /// FourCC: `GRAP`
76 ///
77 /// Specification: _Sony_
78 pub const GRAP: HandlerCode = HandlerCode::new(*b"GRAP");
79 /// Hint
80 ///
81 /// FourCC: `hint`
82 ///
83 /// Specification: _ISO_
84 pub const HINT: HandlerCode = HandlerCode::new(*b"hint");
85 /// Hipix Rich Picture Format
86 ///
87 /// FourCC: `hpix`
88 ///
89 /// Specification: _Hipix_
90 pub const HPIX: HandlerCode = HandlerCode::new(*b"hpix");
91 /// ID3 version 2 meta-data handler (meta box)
92 ///
93 /// FourCC: `ID32`
94 ///
95 /// Specification: _id3v2_
96 pub const ID32: HandlerCode = HandlerCode::new(*b"ID32");
97 /// DVB IPDC ESG Metadata
98 ///
99 /// FourCC: `ipdc`
100 ///
101 /// Specification: _DVB_
102 pub const IPDC: HandlerCode = HandlerCode::new(*b"ipdc");
103 /// IPMP Stream
104 ///
105 /// FourCC: `ipsm`
106 ///
107 /// Specification: _MP4v2_
108 pub const IPSM: HandlerCode = HandlerCode::new(*b"ipsm");
109 /// MPEG7Stream
110 ///
111 /// FourCC: `m7sm`
112 ///
113 /// Specification: _MP4v2_
114 pub const M7SM: HandlerCode = HandlerCode::new(*b"m7sm");
115 /// Metadata
116 ///
117 /// FourCC: `meta`
118 ///
119 /// Specification: _ISO_
120 pub const META: HandlerCode = HandlerCode::new(*b"meta");
121 /// MPEG-J Stream
122 ///
123 /// FourCC: `mjsm`
124 ///
125 /// Specification: _MP4v2_
126 pub const MJSM: HandlerCode = HandlerCode::new(*b"mjsm");
127 /// MPEG-21 Digital item
128 ///
129 /// FourCC: `mp21`
130 ///
131 /// Specification: _MPEG-21_
132 pub const MP21: HandlerCode = HandlerCode::new(*b"mp21");
133 /// MPEG-7 (binary meta-data)
134 ///
135 /// FourCC: `mp7b`
136 ///
137 /// Specification: _ISO_
138 pub const MP7B: HandlerCode = HandlerCode::new(*b"mp7b");
139 /// MPEG-7 (textual meta-data)
140 ///
141 /// FourCC: `mp7t`
142 ///
143 /// Specification: _ISO_
144 pub const MP7T: HandlerCode = HandlerCode::new(*b"mp7t");
145 /// MPD contained in a metabox
146 ///
147 /// FourCC: `mpd `
148 ///
149 /// Specification: _3GPP_
150 pub const MPD: HandlerCode = HandlerCode::new(*b"mpd ");
151 /// MPD link contained in a metabox
152 ///
153 /// FourCC: `mpdl`
154 ///
155 /// Specification: _3GPP_
156 pub const MPDL: HandlerCode = HandlerCode::new(*b"mpdl");
157 /// QuickTime MPEG track handler
158 ///
159 /// FourCC: `MPEG`
160 ///
161 /// Specification: _Apple_
162 pub const MPEG: HandlerCode = HandlerCode::new(*b"MPEG");
163 /// QuickTime Music track handler
164 ///
165 /// FourCC: `musi`
166 ///
167 /// Specification: _Apple_
168 pub const MUSI: HandlerCode = HandlerCode::new(*b"musi");
169 /// Non-Real Time Metadata (XAVC Format)
170 ///
171 /// FourCC: `nrtm`
172 ///
173 /// Specification: _Sony_
174 pub const NRTM: HandlerCode = HandlerCode::new(*b"nrtm");
175 /// No handling required (meta-data)
176 ///
177 /// FourCC: `null`
178 ///
179 /// Specification: _ISO_
180 pub const NULL: HandlerCode = HandlerCode::new(*b"null");
181 /// ObjectContentInfoStream
182 ///
183 /// FourCC: `ocsm`
184 ///
185 /// Specification: _MP4v2_
186 pub const OCSM: HandlerCode = HandlerCode::new(*b"ocsm");
187 /// ObjectDescriptorStream
188 ///
189 /// FourCC: `odsm`
190 ///
191 /// Specification: _MP4v2_
192 pub const ODSM: HandlerCode = HandlerCode::new(*b"odsm");
193 /// Image Item and Image sequences
194 ///
195 /// FourCC: `pict`
196 ///
197 /// Specification: _HEIF_
198 pub const PICT: HandlerCode = HandlerCode::new(*b"pict");
199 /// QuickTime QuickDraw 3D ttrack handler
200 ///
201 /// FourCC: `qd3d`
202 ///
203 /// Specification: _Apple_
204 pub const QD3D: HandlerCode = HandlerCode::new(*b"qd3d");
205 /// QuickTime Subtitle track handler
206 ///
207 /// FourCC: `sbtl`
208 ///
209 /// Specification: _Apple_
210 pub const SBTL: HandlerCode = HandlerCode::new(*b"sbtl");
211 /// SceneDescriptionStream
212 ///
213 /// FourCC: `sdsm`
214 ///
215 /// Specification: _MP4v2_
216 pub const SDSM: HandlerCode = HandlerCode::new(*b"sdsm");
217 /// Key Management Messages
218 ///
219 /// FourCC: `skmm`
220 ///
221 /// Specification: _DVB_
222 pub const SKMM: HandlerCode = HandlerCode::new(*b"skmm");
223 /// Samsung Video Metadata Handler
224 ///
225 /// FourCC: `smhr`
226 ///
227 /// Specification: _Samsung_
228 pub const SMHR: HandlerCode = HandlerCode::new(*b"smhr");
229 /// Audio
230 ///
231 /// FourCC: `soun`
232 ///
233 /// Specification: _ISO_
234 pub const SOUN: HandlerCode = HandlerCode::new(*b"soun");
235 /// QuickTime Sprite track handler
236 ///
237 /// FourCC: `sprt`
238 ///
239 /// Specification: _Apple_
240 pub const SPRT: HandlerCode = HandlerCode::new(*b"sprt");
241 /// QuickTime Streaming track handler
242 ///
243 /// FourCC: `strm`
244 ///
245 /// Specification: _Apple_
246 pub const STRM: HandlerCode = HandlerCode::new(*b"strm");
247 /// Subtitles
248 ///
249 /// FourCC: `subt`
250 ///
251 /// Specification: _ISO_
252 pub const SUBT: HandlerCode = HandlerCode::new(*b"subt");
253 /// Text
254 ///
255 /// FourCC: `text`
256 ///
257 /// Specification: _3GPP_
258 pub const TEXT: HandlerCode = HandlerCode::new(*b"text");
259 /// Timecode
260 ///
261 /// FourCC: `tmcd`
262 ///
263 /// Specification: _Apple_
264 pub const TMCD: HandlerCode = HandlerCode::new(*b"tmcd");
265 /// QuickTime Tween track handler
266 ///
267 /// FourCC: `twen`
268 ///
269 /// Specification: _Apple_
270 pub const TWEN: HandlerCode = HandlerCode::new(*b"twen");
271 /// URI identified metadata
272 ///
273 /// FourCC: `uri `
274 ///
275 /// Specification: _DVB_
276 pub const URI: HandlerCode = HandlerCode::new(*b"uri ");
277 /// Video
278 ///
279 /// FourCC: `vide`
280 ///
281 /// Specification: _ISO_
282 pub const VIDE: HandlerCode = HandlerCode::new(*b"vide");
283 /// Volumetric visual media
284 ///
285 /// FourCC: `volv`
286 ///
287 /// Specification: _ISO_
288 pub const VOLV: HandlerCode = HandlerCode::new(*b"volv");
289 /// Haptics
290 ///
291 /// FourCC: `hapt`
292 ///
293 /// Specification: _ISO_
294 pub const HAPT: HandlerCode = HandlerCode::new(*b"hapt");
295 /// Neural network handler (items defined in the MetaBox represent neural networks)
296 ///
297 /// FourCC: `nnet`
298 ///
299 /// Specification: _NALu Video_
300 pub const NNET: HandlerCode = HandlerCode::new(*b"nnet");
301}
302impl SampleEntryCode {
303 /// Return the identifier of a handler for this type of sample entry, if a single handler type is defined. For those _sample entry_ types where MP4RA notes there are 'various' handlers, this method will return `None`
304 pub fn handler(&self) -> Option<HandlerCode> {
305 match *self {
306 SampleEntryCode::TWO_DCC => Some(HandlerCode::META),
307 SampleEntryCode::THREE_GLO => Some(HandlerCode::META),
308 SampleEntryCode::THREE_GOR => Some(HandlerCode::META),
309 SampleEntryCode::THREE_GVO => Some(HandlerCode::META),
310 SampleEntryCode::SIX_VPT => Some(HandlerCode::VOLV),
311 SampleEntryCode::A3D1 => Some(HandlerCode::VIDE),
312 SampleEntryCode::A3D2 => Some(HandlerCode::VIDE),
313 SampleEntryCode::A3D3 => Some(HandlerCode::VIDE),
314 SampleEntryCode::A3D4 => Some(HandlerCode::VIDE),
315 SampleEntryCode::A3DS => Some(HandlerCode::SOUN),
316 SampleEntryCode::AC_3 => Some(HandlerCode::SOUN),
317 SampleEntryCode::AC_4 => Some(HandlerCode::SOUN),
318 SampleEntryCode::ALAC => Some(HandlerCode::SOUN),
319 SampleEntryCode::ALAW => Some(HandlerCode::SOUN),
320 SampleEntryCode::AV01 => Some(HandlerCode::VIDE),
321 SampleEntryCode::AVC1 => Some(HandlerCode::VIDE),
322 SampleEntryCode::AVC2 => Some(HandlerCode::VIDE),
323 SampleEntryCode::AVC3 => Some(HandlerCode::VIDE),
324 SampleEntryCode::AVC4 => Some(HandlerCode::VIDE),
325 SampleEntryCode::AVCP => Some(HandlerCode::VIDE),
326 SampleEntryCode::AVST => Some(HandlerCode::VIDE),
327 SampleEntryCode::AVS3 => Some(HandlerCode::VIDE),
328 SampleEntryCode::CAMM => Some(HandlerCode::VIDE),
329 SampleEntryCode::CAVS => Some(HandlerCode::SOUN),
330 SampleEntryCode::AV3A => Some(HandlerCode::SOUN),
331 SampleEntryCode::DAV1 => Some(HandlerCode::VIDE),
332 SampleEntryCode::DEPI => Some(HandlerCode::META),
333 SampleEntryCode::DFCE => Some(HandlerCode::META),
334 SampleEntryCode::DIPI => Some(HandlerCode::META),
335 SampleEntryCode::DRA1 => Some(HandlerCode::SOUN),
336 SampleEntryCode::DRAC => Some(HandlerCode::VIDE),
337 SampleEntryCode::DTS_PLUS => Some(HandlerCode::SOUN),
338 SampleEntryCode::DTS_ => Some(HandlerCode::SOUN),
339 SampleEntryCode::DTSC => Some(HandlerCode::SOUN),
340 SampleEntryCode::DTSE => Some(HandlerCode::SOUN),
341 SampleEntryCode::DTSH => Some(HandlerCode::SOUN),
342 SampleEntryCode::DTSL => Some(HandlerCode::SOUN),
343 SampleEntryCode::DTSX => Some(HandlerCode::SOUN),
344 SampleEntryCode::DTSY => Some(HandlerCode::SOUN),
345 SampleEntryCode::DVA1 => Some(HandlerCode::VIDE),
346 SampleEntryCode::DVAV => Some(HandlerCode::VIDE),
347 SampleEntryCode::DVH1 => Some(HandlerCode::VIDE),
348 SampleEntryCode::DVHE => Some(HandlerCode::VIDE),
349 SampleEntryCode::DYOL => Some(HandlerCode::META),
350 SampleEntryCode::DYVM => Some(HandlerCode::VOLV),
351 SampleEntryCode::DYVP => Some(HandlerCode::META),
352 SampleEntryCode::EC_3 => Some(HandlerCode::SOUN),
353 SampleEntryCode::EC_PLUS_3 => Some(HandlerCode::SOUN),
354 SampleEntryCode::ENCA => Some(HandlerCode::SOUN),
355 SampleEntryCode::ENCF => Some(HandlerCode::FDSM),
356 SampleEntryCode::ENCM => Some(HandlerCode::META),
357 SampleEntryCode::ENCS => None,
358 SampleEntryCode::ENCT => Some(HandlerCode::TEXT),
359 SampleEntryCode::ENCV => Some(HandlerCode::VIDE),
360 SampleEntryCode::EVC1 => Some(HandlerCode::VIDE),
361 SampleEntryCode::EVM1 => Some(HandlerCode::VIDE),
362 SampleEntryCode::EVS1 => Some(HandlerCode::VIDE),
363 SampleEntryCode::EVS2 => Some(HandlerCode::VIDE),
364 SampleEntryCode::EVTE => Some(HandlerCode::META),
365 SampleEntryCode::FDP => Some(HandlerCode::HINT),
366 SampleEntryCode::FFV1 => Some(HandlerCode::VIDE),
367 SampleEntryCode::FLAC => Some(HandlerCode::SOUN),
368 SampleEntryCode::G719 => Some(HandlerCode::SOUN),
369 SampleEntryCode::G726 => Some(HandlerCode::SOUN),
370 SampleEntryCode::HEV1 => Some(HandlerCode::VIDE),
371 SampleEntryCode::HEV2 => Some(HandlerCode::VIDE),
372 SampleEntryCode::HEV3 => Some(HandlerCode::VIDE),
373 SampleEntryCode::HVC1 => Some(HandlerCode::VIDE),
374 SampleEntryCode::HVC2 => Some(HandlerCode::VIDE),
375 SampleEntryCode::HVC3 => Some(HandlerCode::VIDE),
376 SampleEntryCode::HVT1 => Some(HandlerCode::VIDE),
377 SampleEntryCode::HVT2 => Some(HandlerCode::VIDE),
378 SampleEntryCode::HVT3 => Some(HandlerCode::VIDE),
379 SampleEntryCode::ICPV => Some(HandlerCode::VIDE),
380 SampleEntryCode::ICP3 => Some(HandlerCode::VOLV),
381 SampleEntryCode::ICPA => Some(HandlerCode::SOUN),
382 SampleEntryCode::ICPH => Some(HandlerCode::HINT),
383 SampleEntryCode::ICPM => Some(HandlerCode::META),
384 SampleEntryCode::ICPP => Some(HandlerCode::HAPT),
385 SampleEntryCode::ICPS => None,
386 SampleEntryCode::ICPT => Some(HandlerCode::TEXT),
387 SampleEntryCode::INVO => Some(HandlerCode::META),
388 SampleEntryCode::INVP => Some(HandlerCode::META),
389 SampleEntryCode::IXSE => Some(HandlerCode::META),
390 SampleEntryCode::J2KI => Some(HandlerCode::VIDE),
391 SampleEntryCode::JXSM => Some(HandlerCode::VIDE),
392 SampleEntryCode::LHE1 => Some(HandlerCode::VIDE),
393 SampleEntryCode::LHT1 => Some(HandlerCode::VIDE),
394 SampleEntryCode::LHV1 => Some(HandlerCode::VIDE),
395 SampleEntryCode::M2TS => Some(HandlerCode::HINT),
396 SampleEntryCode::M4AE => Some(HandlerCode::SOUN),
397 SampleEntryCode::MEBX => Some(HandlerCode::META),
398 SampleEntryCode::METT => Some(HandlerCode::META),
399 SampleEntryCode::METX => Some(HandlerCode::META),
400 SampleEntryCode::MHA1 => Some(HandlerCode::SOUN),
401 SampleEntryCode::MHA2 => Some(HandlerCode::SOUN),
402 SampleEntryCode::MHM1 => Some(HandlerCode::SOUN),
403 SampleEntryCode::MHM2 => Some(HandlerCode::SOUN),
404 SampleEntryCode::MJP2 => Some(HandlerCode::VIDE),
405 SampleEntryCode::MJPG => Some(HandlerCode::VIDE),
406 SampleEntryCode::MLIX => Some(HandlerCode::META),
407 SampleEntryCode::MLPA => Some(HandlerCode::SOUN),
408 SampleEntryCode::MP4A => Some(HandlerCode::SOUN),
409 SampleEntryCode::MP4S => None,
410 SampleEntryCode::MP4V => Some(HandlerCode::VIDE),
411 SampleEntryCode::MVC1 => Some(HandlerCode::VIDE),
412 SampleEntryCode::MVC2 => Some(HandlerCode::VIDE),
413 SampleEntryCode::MVC3 => Some(HandlerCode::VIDE),
414 SampleEntryCode::MVC4 => Some(HandlerCode::VIDE),
415 SampleEntryCode::MVD1 => Some(HandlerCode::VIDE),
416 SampleEntryCode::MVD2 => Some(HandlerCode::VIDE),
417 SampleEntryCode::MVD3 => Some(HandlerCode::VIDE),
418 SampleEntryCode::MVD4 => Some(HandlerCode::VIDE),
419 SampleEntryCode::OCPC => Some(HandlerCode::META),
420 SampleEntryCode::OKSD => Some(HandlerCode::META),
421 SampleEntryCode::OPUS => Some(HandlerCode::SOUN),
422 SampleEntryCode::PM2T => Some(HandlerCode::HINT),
423 SampleEntryCode::PRTP => Some(HandlerCode::HINT),
424 SampleEntryCode::RAW => Some(HandlerCode::SOUN),
425 SampleEntryCode::RCVP => Some(HandlerCode::META),
426 SampleEntryCode::RESV => Some(HandlerCode::VIDE),
427 SampleEntryCode::RESA => Some(HandlerCode::SOUN),
428 SampleEntryCode::RM2T => Some(HandlerCode::HINT),
429 SampleEntryCode::RRTP => Some(HandlerCode::HINT),
430 SampleEntryCode::RSRP => Some(HandlerCode::HINT),
431 SampleEntryCode::RTCP => Some(HandlerCode::HINT),
432 SampleEntryCode::RTMD => Some(HandlerCode::META),
433 SampleEntryCode::RTP => Some(HandlerCode::HINT),
434 SampleEntryCode::RV60 => Some(HandlerCode::VIDE),
435 SampleEntryCode::RVP2 => Some(HandlerCode::META),
436 SampleEntryCode::S263 => Some(HandlerCode::VIDE),
437 SampleEntryCode::SAMR => Some(HandlerCode::SOUN),
438 SampleEntryCode::SAWB => Some(HandlerCode::SOUN),
439 SampleEntryCode::SAWP => Some(HandlerCode::SOUN),
440 SampleEntryCode::SBTT => Some(HandlerCode::SUBT),
441 SampleEntryCode::SEVC => Some(HandlerCode::SOUN),
442 SampleEntryCode::SEVS => Some(HandlerCode::SOUN),
443 SampleEntryCode::SM2T => Some(HandlerCode::HINT),
444 SampleEntryCode::SQCP => Some(HandlerCode::SOUN),
445 SampleEntryCode::SRTP => Some(HandlerCode::HINT),
446 SampleEntryCode::SSMV => Some(HandlerCode::SOUN),
447 SampleEntryCode::STCP => Some(HandlerCode::HINT),
448 SampleEntryCode::STGS => Some(HandlerCode::GRAP),
449 SampleEntryCode::STMD => Some(HandlerCode::META),
450 SampleEntryCode::STPP => Some(HandlerCode::SUBT),
451 SampleEntryCode::STXT => Some(HandlerCode::TEXT),
452 SampleEntryCode::SVC1 => Some(HandlerCode::VIDE),
453 SampleEntryCode::SVC2 => Some(HandlerCode::VIDE),
454 SampleEntryCode::SVCM => Some(HandlerCode::META),
455 SampleEntryCode::TC64 => Some(HandlerCode::TMCD),
456 SampleEntryCode::TMCD => Some(HandlerCode::TMCD),
457 SampleEntryCode::TTSL => Some(HandlerCode::META),
458 SampleEntryCode::TWOS => Some(HandlerCode::SOUN),
459 SampleEntryCode::TX3G => Some(HandlerCode::TEXT),
460 SampleEntryCode::ULAW => Some(HandlerCode::SOUN),
461 SampleEntryCode::UNID => Some(HandlerCode::META),
462 SampleEntryCode::URIM => Some(HandlerCode::META),
463 SampleEntryCode::V3A1 => Some(HandlerCode::VOLV),
464 SampleEntryCode::V3AG => Some(HandlerCode::VOLV),
465 SampleEntryCode::V3C1 => Some(HandlerCode::VOLV),
466 SampleEntryCode::V3CB => Some(HandlerCode::VOLV),
467 SampleEntryCode::V3CG => Some(HandlerCode::VOLV),
468 SampleEntryCode::V3E1 => Some(HandlerCode::VOLV),
469 SampleEntryCode::V3EG => Some(HandlerCode::VOLV),
470 SampleEntryCode::V3T1 => Some(HandlerCode::VOLV),
471 SampleEntryCode::VC_1 => Some(HandlerCode::VIDE),
472 SampleEntryCode::VP08 => Some(HandlerCode::VIDE),
473 SampleEntryCode::VP09 => Some(HandlerCode::VIDE),
474 SampleEntryCode::VQME => Some(HandlerCode::META),
475 SampleEntryCode::VRSP => Some(HandlerCode::META),
476 SampleEntryCode::VVCN => Some(HandlerCode::VIDE),
477 SampleEntryCode::VVC1 => Some(HandlerCode::VIDE),
478 SampleEntryCode::VVI1 => Some(HandlerCode::VIDE),
479 SampleEntryCode::VVS1 => Some(HandlerCode::VIDE),
480 SampleEntryCode::WVTT => Some(HandlerCode::TEXT),
481 SampleEntryCode::ENCU => Some(HandlerCode::SUBT),
482 SampleEntryCode::ENCP => Some(HandlerCode::HAPT),
483 SampleEntryCode::ENC3 => Some(HandlerCode::VOLV),
484 SampleEntryCode::UNCV => Some(HandlerCode::VIDE),
485 SampleEntryCode::IAMF => Some(HandlerCode::SOUN),
486 SampleEntryCode::IPCM => Some(HandlerCode::SOUN),
487 SampleEntryCode::FPCM => Some(HandlerCode::SOUN),
488 SampleEntryCode::CNDM => Some(HandlerCode::VIDE),
489 SampleEntryCode::LVC1 => Some(HandlerCode::VIDE),
490 SampleEntryCode::APAC => Some(HandlerCode::SOUN),
491 SampleEntryCode::APV1 => Some(HandlerCode::VIDE),
492 _ => None,
493 }
494 }
495}
496impl SampleEntryCode {
497 /// 2D cartesian coordinates
498 ///
499 /// FourCC: `2dcc`
500 ///
501 /// Specification: _Metrics_
502 pub const TWO_DCC: SampleEntryCode = SampleEntryCode::new(*b"2dcc");
503 /// 3GPP Location
504 ///
505 /// FourCC: `3glo`
506 ///
507 /// Specification: _3GPP_
508 pub const THREE_GLO: SampleEntryCode = SampleEntryCode::new(*b"3glo");
509 /// 3GPP Orientation
510 ///
511 /// FourCC: `3gor`
512 ///
513 /// Specification: _3GPP_
514 pub const THREE_GOR: SampleEntryCode = SampleEntryCode::new(*b"3gor");
515 /// 3GPP Video Orientation
516 ///
517 /// FourCC: `3gvo`
518 ///
519 /// Specification: _3GPP_
520 pub const THREE_GVO: SampleEntryCode = SampleEntryCode::new(*b"3gvo");
521 /// Dynamic viewport data
522 ///
523 /// FourCC: `6vpt`
524 ///
525 /// Specification: _V3C-SYS_
526 pub const SIX_VPT: SampleEntryCode = SampleEntryCode::new(*b"6vpt");
527 /// 3D-AVC track with 3D-AVC NAL units only
528 ///
529 /// FourCC: `a3d1`
530 ///
531 /// Specification: _NALu Video_
532 pub const A3D1: SampleEntryCode = SampleEntryCode::new(*b"a3d1");
533 /// 3D-AVC track with 3D-AVC NAL units only
534 ///
535 /// FourCC: `a3d2`
536 ///
537 /// Specification: _NALu Video_
538 pub const A3D2: SampleEntryCode = SampleEntryCode::new(*b"a3d2");
539 /// 3D-AVC track with 3D-AVC NAL units only
540 ///
541 /// FourCC: `a3d3`
542 ///
543 /// Specification: _NALu Video_
544 pub const A3D3: SampleEntryCode = SampleEntryCode::new(*b"a3d3");
545 /// 3D-AVC track with 3D-AVC NAL units only
546 ///
547 /// FourCC: `a3d4`
548 ///
549 /// Specification: _NALu Video_
550 pub const A3D4: SampleEntryCode = SampleEntryCode::new(*b"a3d4");
551 /// Auro-Cx 3D audio
552 ///
553 /// FourCC: `a3ds`
554 ///
555 /// Specification: _Auro_
556 pub const A3DS: SampleEntryCode = SampleEntryCode::new(*b"a3ds");
557 /// AC-3 audio
558 ///
559 /// FourCC: `ac-3`
560 ///
561 /// Specification: _ETSI AC-3_
562 pub const AC_3: SampleEntryCode = SampleEntryCode::new(*b"ac-3");
563 /// AC-4 audio
564 ///
565 /// FourCC: `ac-4`
566 ///
567 /// Specification: _ETSI AC-4_
568 pub const AC_4: SampleEntryCode = SampleEntryCode::new(*b"ac-4");
569 /// Apple lossless audio codec
570 ///
571 /// FourCC: `alac`
572 ///
573 /// Specification: _Apple_
574 pub const ALAC: SampleEntryCode = SampleEntryCode::new(*b"alac");
575 /// a-Law
576 ///
577 /// FourCC: `alaw`
578 ///
579 /// Specification: _QT_
580 pub const ALAW: SampleEntryCode = SampleEntryCode::new(*b"alaw");
581 /// AOM Video Codec
582 ///
583 /// FourCC: `av01`
584 ///
585 /// Specification: _AV1-ISOBMFF_
586 pub const AV01: SampleEntryCode = SampleEntryCode::new(*b"av01");
587 /// Advanced Video Coding
588 ///
589 /// FourCC: `avc1`
590 ///
591 /// Specification: _NALu Video_
592 pub const AVC1: SampleEntryCode = SampleEntryCode::new(*b"avc1");
593 /// Advanced Video Coding
594 ///
595 /// FourCC: `avc2`
596 ///
597 /// Specification: _NALu Video_
598 pub const AVC2: SampleEntryCode = SampleEntryCode::new(*b"avc2");
599 /// Advanced Video Coding
600 ///
601 /// FourCC: `avc3`
602 ///
603 /// Specification: _NALu Video_
604 pub const AVC3: SampleEntryCode = SampleEntryCode::new(*b"avc3");
605 /// Advanced Video Coding
606 ///
607 /// FourCC: `avc4`
608 ///
609 /// Specification: _NALu Video_
610 pub const AVC4: SampleEntryCode = SampleEntryCode::new(*b"avc4");
611 /// Advanced Video Coding Parameters
612 ///
613 /// FourCC: `avcp`
614 ///
615 /// Specification: _NALu Video_
616 pub const AVCP: SampleEntryCode = SampleEntryCode::new(*b"avcp");
617 /// 2nd Generation Audio Video Coding Standard of China (AVS Two)
618 ///
619 /// FourCC: `avst`
620 ///
621 /// Specification: _Avs2_
622 pub const AVST: SampleEntryCode = SampleEntryCode::new(*b"avst");
623 /// 3nd Generation Audio Video Coding Standard of China
624 ///
625 /// FourCC: `avs3`
626 ///
627 /// Specification: _Avs3_
628 pub const AVS3: SampleEntryCode = SampleEntryCode::new(*b"avs3");
629 /// Camera motion metadata track
630 ///
631 /// FourCC: `camm`
632 ///
633 /// Specification: _CamMotion_
634 pub const CAMM: SampleEntryCode = SampleEntryCode::new(*b"camm");
635 /// AVS2-P3 Codec
636 ///
637 /// FourCC: `cavs`
638 ///
639 /// Specification: _GB-T-20090-9_
640 pub const CAVS: SampleEntryCode = SampleEntryCode::new(*b"cavs");
641 /// AVS3-P3 Codec
642 ///
643 /// FourCC: `av3a`
644 ///
645 /// Specification: _T-AI-109.7_
646 pub const AV3A: SampleEntryCode = SampleEntryCode::new(*b"av3a");
647 /// AV1-related Dolby Vision consistent with av01
648 ///
649 /// FourCC: `dav1`
650 ///
651 /// Specification: _Dolby Vision_
652 pub const DAV1: SampleEntryCode = SampleEntryCode::new(*b"dav1");
653 /// Decoder power indication
654 ///
655 /// FourCC: `depi`
656 ///
657 /// Specification: _Metrics_
658 pub const DEPI: SampleEntryCode = SampleEntryCode::new(*b"depi");
659 /// Display fine control
660 ///
661 /// FourCC: `dfce`
662 ///
663 /// Specification: _Metrics_
664 pub const DFCE: SampleEntryCode = SampleEntryCode::new(*b"dfce");
665 /// Display power indication
666 ///
667 /// FourCC: `dipi`
668 ///
669 /// Specification: _Metrics_
670 pub const DIPI: SampleEntryCode = SampleEntryCode::new(*b"dipi");
671 /// DRA Audio
672 ///
673 /// FourCC: `dra1`
674 ///
675 /// Specification: _DRA_
676 pub const DRA1: SampleEntryCode = SampleEntryCode::new(*b"dra1");
677 /// Dirac Video Coder
678 ///
679 /// FourCC: `drac`
680 ///
681 /// Specification: _Dirac_
682 pub const DRAC: SampleEntryCode = SampleEntryCode::new(*b"drac");
683 /// Enhancement layer for DTS layered audio
684 ///
685 /// FourCC: `dts+`
686 ///
687 /// Specification: _DTS_
688 pub const DTS_PLUS: SampleEntryCode = SampleEntryCode::new(*b"dts+");
689 /// Dependent base layer for DTS layered audio
690 ///
691 /// FourCC: `dts-`
692 ///
693 /// Specification: _DTS_
694 pub const DTS_: SampleEntryCode = SampleEntryCode::new(*b"dts-");
695 /// Core Substream
696 ///
697 /// FourCC: `dtsc`
698 ///
699 /// Specification: _DTS-HD_
700 pub const DTSC: SampleEntryCode = SampleEntryCode::new(*b"dtsc");
701 /// Extension Substream containing only LBR
702 ///
703 /// FourCC: `dtse`
704 ///
705 /// Specification: _DTS-HD_
706 pub const DTSE: SampleEntryCode = SampleEntryCode::new(*b"dtse");
707 /// Core Substream + Extension Substream
708 ///
709 /// FourCC: `dtsh`
710 ///
711 /// Specification: _DTS-HD_
712 pub const DTSH: SampleEntryCode = SampleEntryCode::new(*b"dtsh");
713 /// Extension Substream containing only XLL
714 ///
715 /// FourCC: `dtsl`
716 ///
717 /// Specification: _DTS-HD_
718 pub const DTSL: SampleEntryCode = SampleEntryCode::new(*b"dtsl");
719 /// DTS-UHD profile 2
720 ///
721 /// FourCC: `dtsx`
722 ///
723 /// Specification: _DTS-UHD_
724 pub const DTSX: SampleEntryCode = SampleEntryCode::new(*b"dtsx");
725 /// DTS-UHD profile 3 or higher
726 ///
727 /// FourCC: `dtsy`
728 ///
729 /// Specification: _DTS-UHD_
730 pub const DTSY: SampleEntryCode = SampleEntryCode::new(*b"dtsy");
731 /// AVC-based Dolby Vision derived from avc1
732 ///
733 /// FourCC: `dva1`
734 ///
735 /// Specification: _Dolby Vision_
736 pub const DVA1: SampleEntryCode = SampleEntryCode::new(*b"dva1");
737 /// AVC-based Dolby Vision derived from avc3
738 ///
739 /// FourCC: `dvav`
740 ///
741 /// Specification: _Dolby Vision_
742 pub const DVAV: SampleEntryCode = SampleEntryCode::new(*b"dvav");
743 /// HEVC-based Dolby Vision derived from hvc1
744 ///
745 /// FourCC: `dvh1`
746 ///
747 /// Specification: _Dolby Vision_
748 pub const DVH1: SampleEntryCode = SampleEntryCode::new(*b"dvh1");
749 /// HEVC-based Dolby Vision derived from hev1
750 ///
751 /// FourCC: `dvhe`
752 ///
753 /// Specification: _Dolby Vision_
754 pub const DVHE: SampleEntryCode = SampleEntryCode::new(*b"dvhe");
755 /// Dynamic overlay parameters
756 ///
757 /// FourCC: `dyol`
758 ///
759 /// Specification: _OMAF_
760 pub const DYOL: SampleEntryCode = SampleEntryCode::new(*b"dyol");
761 /// Dynamic spatial region data
762 ///
763 /// FourCC: `dyvm`
764 ///
765 /// Specification: _V3C-SYS_
766 pub const DYVM: SampleEntryCode = SampleEntryCode::new(*b"dyvm");
767 /// Dynamic viewpoint parameters
768 ///
769 /// FourCC: `dyvp`
770 ///
771 /// Specification: _OMAF_
772 pub const DYVP: SampleEntryCode = SampleEntryCode::new(*b"dyvp");
773 /// Enhanced AC-3 audio
774 ///
775 /// FourCC: `ec-3`
776 ///
777 /// Specification: _ETSI AC-3_
778 pub const EC_3: SampleEntryCode = SampleEntryCode::new(*b"ec-3");
779 /// withdrawn, unused, do not use (was enhanced AC-3 audio with JOC)
780 ///
781 /// FourCC: `ec+3`
782 ///
783 /// Specification: _Deprecated_
784 pub const EC_PLUS_3: SampleEntryCode = SampleEntryCode::new(*b"ec+3");
785 /// Encrypted/Protected audio
786 ///
787 /// FourCC: `enca`
788 ///
789 /// Specification: _ISO_
790 pub const ENCA: SampleEntryCode = SampleEntryCode::new(*b"enca");
791 /// Encrypted/Protected font
792 ///
793 /// FourCC: `encf`
794 ///
795 /// Specification: _ISO_
796 pub const ENCF: SampleEntryCode = SampleEntryCode::new(*b"encf");
797 /// Encrypted/Protected metadata
798 ///
799 /// FourCC: `encm`
800 ///
801 /// Specification: _ISO_
802 pub const ENCM: SampleEntryCode = SampleEntryCode::new(*b"encm");
803 /// Encrypted Systems stream
804 ///
805 /// FourCC: `encs`
806 ///
807 /// Specification: _ISO_
808 pub const ENCS: SampleEntryCode = SampleEntryCode::new(*b"encs");
809 /// Encrypted Text
810 ///
811 /// FourCC: `enct`
812 ///
813 /// Specification: _ISO_
814 pub const ENCT: SampleEntryCode = SampleEntryCode::new(*b"enct");
815 /// Encrypted/protected video
816 ///
817 /// FourCC: `encv`
818 ///
819 /// Specification: _ISO_
820 pub const ENCV: SampleEntryCode = SampleEntryCode::new(*b"encv");
821 /// Essential Video Coding
822 ///
823 /// FourCC: `evc1`
824 ///
825 /// Specification: _NALu Video_
826 pub const EVC1: SampleEntryCode = SampleEntryCode::new(*b"evc1");
827 /// Essential Video Coding slice base track
828 ///
829 /// FourCC: `evm1`
830 ///
831 /// Specification: _NALu Video_
832 pub const EVM1: SampleEntryCode = SampleEntryCode::new(*b"evm1");
833 /// Essential Video Coding slice component track without parameter sets
834 ///
835 /// FourCC: `evs1`
836 ///
837 /// Specification: _NALu Video_
838 pub const EVS1: SampleEntryCode = SampleEntryCode::new(*b"evs1");
839 /// Essential Video Coding slice component track that may contain parameter sets
840 ///
841 /// FourCC: `evs2`
842 ///
843 /// Specification: _NALu Video_
844 pub const EVS2: SampleEntryCode = SampleEntryCode::new(*b"evs2");
845 /// Event message instance
846 ///
847 /// FourCC: `evte`
848 ///
849 /// Specification: _Event Message_
850 pub const EVTE: SampleEntryCode = SampleEntryCode::new(*b"evte");
851 /// File delivery hints
852 ///
853 /// FourCC: `fdp `
854 ///
855 /// Specification: _ISO_
856 pub const FDP: SampleEntryCode = SampleEntryCode::new(*b"fdp ");
857 /// An open lossless intra-frame video codec
858 ///
859 /// FourCC: `FFV1`
860 ///
861 /// Specification: _FF Video Codec_
862 pub const FFV1: SampleEntryCode = SampleEntryCode::new(*b"FFV1");
863 /// Free Lossless Audio Codec (FLAC)
864 ///
865 /// FourCC: `fLaC`
866 ///
867 /// Specification: _FLAC_
868 pub const FLAC: SampleEntryCode = SampleEntryCode::new(*b"fLaC");
869 /// ITU-T Recommendation G.719 (2008)
870 ///
871 /// FourCC: `g719`
872 ///
873 /// Specification: _ITU G.719_
874 pub const G719: SampleEntryCode = SampleEntryCode::new(*b"g719");
875 /// ITU-T Recommendation G.726 (1990)
876 ///
877 /// FourCC: `g726`
878 ///
879 /// Specification: _SDV_
880 pub const G726: SampleEntryCode = SampleEntryCode::new(*b"g726");
881 /// HEVC video with parameter sets in the Sample Entry or samples
882 ///
883 /// FourCC: `hev1`
884 ///
885 /// Specification: _NALu Video_
886 pub const HEV1: SampleEntryCode = SampleEntryCode::new(*b"hev1");
887 /// HEVC video with constrained extractors and/or aggregators and parameter sets in the Sample Entry or samples
888 ///
889 /// FourCC: `hev2`
890 ///
891 /// Specification: _NALu Video_
892 pub const HEV2: SampleEntryCode = SampleEntryCode::new(*b"hev2");
893 /// HEVC video with extractors and/or aggregators and parameter sets in the Sample Entry or samples
894 ///
895 /// FourCC: `hev3`
896 ///
897 /// Specification: _NALu Video_
898 pub const HEV3: SampleEntryCode = SampleEntryCode::new(*b"hev3");
899 /// HEVC video with parameter sets only in the Sample Entry
900 ///
901 /// FourCC: `hvc1`
902 ///
903 /// Specification: _NALu Video_
904 pub const HVC1: SampleEntryCode = SampleEntryCode::new(*b"hvc1");
905 /// HEVC video with constrained extractors and/or aggregators and parameter sets only in the Sample Entry
906 ///
907 /// FourCC: `hvc2`
908 ///
909 /// Specification: _NALu Video_
910 pub const HVC2: SampleEntryCode = SampleEntryCode::new(*b"hvc2");
911 /// HEVC video with extractors and/or aggregators and parameter sets only in the Sample Entry
912 ///
913 /// FourCC: `hvc3`
914 ///
915 /// Specification: _NALu Video_
916 pub const HVC3: SampleEntryCode = SampleEntryCode::new(*b"hvc3");
917 /// HEVC tile tracks
918 ///
919 /// FourCC: `hvt1`
920 ///
921 /// Specification: _NALu Video_
922 pub const HVT1: SampleEntryCode = SampleEntryCode::new(*b"hvt1");
923 /// HEVC slice segment data track
924 ///
925 /// FourCC: `hvt2`
926 ///
927 /// Specification: _NALu Video_
928 pub const HVT2: SampleEntryCode = SampleEntryCode::new(*b"hvt2");
929 /// HEVC Tile Track with Slice Segment Header Info
930 ///
931 /// FourCC: `hvt3`
932 ///
933 /// Specification: _NALu Video_
934 pub const HVT3: SampleEntryCode = SampleEntryCode::new(*b"hvt3");
935 /// Incomplete video
936 ///
937 /// FourCC: `icpv`
938 ///
939 /// Specification: _ISO_
940 pub const ICPV: SampleEntryCode = SampleEntryCode::new(*b"icpv");
941 /// Incomplete volumetric visual
942 ///
943 /// FourCC: `icp3`
944 ///
945 /// Specification: _ISO_
946 pub const ICP3: SampleEntryCode = SampleEntryCode::new(*b"icp3");
947 /// Incomplete audio
948 ///
949 /// FourCC: `icpa`
950 ///
951 /// Specification: _ISO_
952 pub const ICPA: SampleEntryCode = SampleEntryCode::new(*b"icpa");
953 /// Incomplete hint
954 ///
955 /// FourCC: `icph`
956 ///
957 /// Specification: _ISO_
958 pub const ICPH: SampleEntryCode = SampleEntryCode::new(*b"icph");
959 /// Incomplete timed metadata
960 ///
961 /// FourCC: `icpm`
962 ///
963 /// Specification: _ISO_
964 pub const ICPM: SampleEntryCode = SampleEntryCode::new(*b"icpm");
965 /// Incomplete haptics
966 ///
967 /// FourCC: `icpp`
968 ///
969 /// Specification: _ISO_
970 pub const ICPP: SampleEntryCode = SampleEntryCode::new(*b"icpp");
971 /// Incomplete system
972 ///
973 /// FourCC: `icps`
974 ///
975 /// Specification: _ISO_
976 pub const ICPS: SampleEntryCode = SampleEntryCode::new(*b"icps");
977 /// Incomplete text
978 ///
979 /// FourCC: `icpt`
980 ///
981 /// Specification: _ISO_
982 pub const ICPT: SampleEntryCode = SampleEntryCode::new(*b"icpt");
983 /// Initial viewing orientation
984 ///
985 /// FourCC: `invo`
986 ///
987 /// Specification: _OMAF_
988 pub const INVO: SampleEntryCode = SampleEntryCode::new(*b"invo");
989 /// Initial viewpoint
990 ///
991 /// FourCC: `invp`
992 ///
993 /// Specification: _OMAF_
994 pub const INVP: SampleEntryCode = SampleEntryCode::new(*b"invp");
995 /// DVB Track Level Index Track
996 ///
997 /// FourCC: `ixse`
998 ///
999 /// Specification: _DVB_
1000 pub const IXSE: SampleEntryCode = SampleEntryCode::new(*b"ixse");
1001 /// Sequence of JPEG 2000 Contiguous Codestream boxes as defined in Rec. ITU-T T.800 | ISO/IEC 15444-1
1002 ///
1003 /// FourCC: `j2ki`
1004 ///
1005 /// Specification: _J2KHEIF_
1006 pub const J2KI: SampleEntryCode = SampleEntryCode::new(*b"j2ki");
1007 /// Video and image sequences coded to the JPEG-XS coding format
1008 ///
1009 /// FourCC: `jxsm`
1010 ///
1011 /// Specification: _JPXS_
1012 pub const JXSM: SampleEntryCode = SampleEntryCode::new(*b"jxsm");
1013 /// Layered HEVC
1014 ///
1015 /// FourCC: `lhe1`
1016 ///
1017 /// Specification: _NALu Video_
1018 pub const LHE1: SampleEntryCode = SampleEntryCode::new(*b"lhe1");
1019 /// Layered HEVC tile tracks
1020 ///
1021 /// FourCC: `lht1`
1022 ///
1023 /// Specification: _NALu Video_
1024 pub const LHT1: SampleEntryCode = SampleEntryCode::new(*b"lht1");
1025 /// Layered HEVC
1026 ///
1027 /// FourCC: `lhv1`
1028 ///
1029 /// Specification: _NALu Video_
1030 pub const LHV1: SampleEntryCode = SampleEntryCode::new(*b"lhv1");
1031 /// MPEG-2 transport stream for DMB
1032 ///
1033 /// FourCC: `m2ts`
1034 ///
1035 /// Specification: _DMB-MAF_
1036 pub const M2TS: SampleEntryCode = SampleEntryCode::new(*b"m2ts");
1037 /// MPEG-4 Audio Enhancement
1038 ///
1039 /// FourCC: `m4ae`
1040 ///
1041 /// Specification: _MP4v2_
1042 pub const M4AE: SampleEntryCode = SampleEntryCode::new(*b"m4ae");
1043 /// Timed metadata multiplex
1044 ///
1045 /// FourCC: `mebx`
1046 ///
1047 /// Specification: _ISO_
1048 pub const MEBX: SampleEntryCode = SampleEntryCode::new(*b"mebx");
1049 /// Text timed metadata that is not XML
1050 ///
1051 /// FourCC: `mett`
1052 ///
1053 /// Specification: _ISO_
1054 pub const METT: SampleEntryCode = SampleEntryCode::new(*b"mett");
1055 /// XML timed metadata
1056 ///
1057 /// FourCC: `metx`
1058 ///
1059 /// Specification: _ISO_
1060 pub const METX: SampleEntryCode = SampleEntryCode::new(*b"metx");
1061 /// MPEG-H Audio (single stream, unencapsulated)
1062 ///
1063 /// FourCC: `mha1`
1064 ///
1065 /// Specification: _MPEG-H_
1066 pub const MHA1: SampleEntryCode = SampleEntryCode::new(*b"mha1");
1067 /// MPEG-H Audio (multi-stream, unencapsulated)
1068 ///
1069 /// FourCC: `mha2`
1070 ///
1071 /// Specification: _MPEG-H_
1072 pub const MHA2: SampleEntryCode = SampleEntryCode::new(*b"mha2");
1073 /// MPEG-H Audio (single stream, MHAS encapsulated)
1074 ///
1075 /// FourCC: `mhm1`
1076 ///
1077 /// Specification: _MPEG-H_
1078 pub const MHM1: SampleEntryCode = SampleEntryCode::new(*b"mhm1");
1079 /// MPEG-H Audio (multi-stream, MHAS encapsulated)
1080 ///
1081 /// FourCC: `mhm2`
1082 ///
1083 /// Specification: _MPEG-H_
1084 pub const MHM2: SampleEntryCode = SampleEntryCode::new(*b"mhm2");
1085 /// Motion JPEG 2000
1086 ///
1087 /// FourCC: `mjp2`
1088 ///
1089 /// Specification: _MJ2_
1090 pub const MJP2: SampleEntryCode = SampleEntryCode::new(*b"mjp2");
1091 /// JPEG image sequences
1092 ///
1093 /// FourCC: `mjpg`
1094 ///
1095 /// Specification: _HEIF_
1096 pub const MJPG: SampleEntryCode = SampleEntryCode::new(*b"mjpg");
1097 /// DVB Movie level index track
1098 ///
1099 /// FourCC: `mlix`
1100 ///
1101 /// Specification: _DVB_
1102 pub const MLIX: SampleEntryCode = SampleEntryCode::new(*b"mlix");
1103 /// MLP Audio
1104 ///
1105 /// FourCC: `mlpa`
1106 ///
1107 /// Specification: _Dolby MLP_
1108 pub const MLPA: SampleEntryCode = SampleEntryCode::new(*b"mlpa");
1109 /// MPEG-4 Audio
1110 ///
1111 /// FourCC: `mp4a`
1112 ///
1113 /// Specification: _MP4v2_
1114 pub const MP4A: SampleEntryCode = SampleEntryCode::new(*b"mp4a");
1115 /// MPEG-4 Systems
1116 ///
1117 /// FourCC: `mp4s`
1118 ///
1119 /// Specification: _MP4v2_
1120 pub const MP4S: SampleEntryCode = SampleEntryCode::new(*b"mp4s");
1121 /// MPEG-4 Visual
1122 ///
1123 /// FourCC: `mp4v`
1124 ///
1125 /// Specification: _MP4v2_
1126 pub const MP4V: SampleEntryCode = SampleEntryCode::new(*b"mp4v");
1127 /// Multiview coding
1128 ///
1129 /// FourCC: `mvc1`
1130 ///
1131 /// Specification: _NALu Video_
1132 pub const MVC1: SampleEntryCode = SampleEntryCode::new(*b"mvc1");
1133 /// Multiview coding
1134 ///
1135 /// FourCC: `mvc2`
1136 ///
1137 /// Specification: _NALu Video_
1138 pub const MVC2: SampleEntryCode = SampleEntryCode::new(*b"mvc2");
1139 /// Multiview coding
1140 ///
1141 /// FourCC: `mvc3`
1142 ///
1143 /// Specification: _NALu Video_
1144 pub const MVC3: SampleEntryCode = SampleEntryCode::new(*b"mvc3");
1145 /// Multiview coding
1146 ///
1147 /// FourCC: `mvc4`
1148 ///
1149 /// Specification: _NALu Video_
1150 pub const MVC4: SampleEntryCode = SampleEntryCode::new(*b"mvc4");
1151 /// MVD stream
1152 ///
1153 /// FourCC: `mvd1`
1154 ///
1155 /// Specification: _NALu Video_
1156 pub const MVD1: SampleEntryCode = SampleEntryCode::new(*b"mvd1");
1157 /// MVD stream
1158 ///
1159 /// FourCC: `mvd2`
1160 ///
1161 /// Specification: _NALu Video_
1162 pub const MVD2: SampleEntryCode = SampleEntryCode::new(*b"mvd2");
1163 /// MVD stream
1164 ///
1165 /// FourCC: `mvd3`
1166 ///
1167 /// Specification: _NALu Video_
1168 pub const MVD3: SampleEntryCode = SampleEntryCode::new(*b"mvd3");
1169 /// MVD stream
1170 ///
1171 /// FourCC: `mvd4`
1172 ///
1173 /// Specification: _NALu Video_
1174 pub const MVD4: SampleEntryCode = SampleEntryCode::new(*b"mvd4");
1175 /// Object centre points correspondence between viewpoints
1176 ///
1177 /// FourCC: `ocpc`
1178 ///
1179 /// Specification: _OMAF_
1180 pub const OCPC: SampleEntryCode = SampleEntryCode::new(*b"ocpc");
1181 /// OMA Keys
1182 ///
1183 /// FourCC: `oksd`
1184 ///
1185 /// Specification: _OMA DRM XBS_
1186 pub const OKSD: SampleEntryCode = SampleEntryCode::new(*b"oksd");
1187 /// Opus audio coding
1188 ///
1189 /// FourCC: `Opus`
1190 ///
1191 /// Specification: _Opus_
1192 pub const OPUS: SampleEntryCode = SampleEntryCode::new(*b"Opus");
1193 /// Protected MPEG-2 Transport
1194 ///
1195 /// FourCC: `pm2t`
1196 ///
1197 /// Specification: _ISO_
1198 pub const PM2T: SampleEntryCode = SampleEntryCode::new(*b"pm2t");
1199 /// Protected RTP Reception
1200 ///
1201 /// FourCC: `prtp`
1202 ///
1203 /// Specification: _ISO_
1204 pub const PRTP: SampleEntryCode = SampleEntryCode::new(*b"prtp");
1205 /// Uncompressed audio
1206 ///
1207 /// FourCC: `raw `
1208 ///
1209 /// Specification: _MJ2_
1210 pub const RAW: SampleEntryCode = SampleEntryCode::new(*b"raw ");
1211 /// Recommended viewport without indicating a viewpoint
1212 ///
1213 /// FourCC: `rcvp`
1214 ///
1215 /// Specification: _OMAF_
1216 pub const RCVP: SampleEntryCode = SampleEntryCode::new(*b"rcvp");
1217 /// Restricted Video
1218 ///
1219 /// FourCC: `resv`
1220 ///
1221 /// Specification: _ISO_
1222 pub const RESV: SampleEntryCode = SampleEntryCode::new(*b"resv");
1223 /// Restricted Audio
1224 ///
1225 /// FourCC: `resa`
1226 ///
1227 /// Specification: _ISO_
1228 pub const RESA: SampleEntryCode = SampleEntryCode::new(*b"resa");
1229 /// MPEG-2 Transport Reception
1230 ///
1231 /// FourCC: `rm2t`
1232 ///
1233 /// Specification: _ISO_
1234 pub const RM2T: SampleEntryCode = SampleEntryCode::new(*b"rm2t");
1235 /// RTP reception
1236 ///
1237 /// FourCC: `rrtp`
1238 ///
1239 /// Specification: _ISO_
1240 pub const RRTP: SampleEntryCode = SampleEntryCode::new(*b"rrtp");
1241 /// SRTP Reception
1242 ///
1243 /// FourCC: `rsrp`
1244 ///
1245 /// Specification: _ISO_
1246 pub const RSRP: SampleEntryCode = SampleEntryCode::new(*b"rsrp");
1247 /// RTCP reception hint track
1248 ///
1249 /// FourCC: `rtcp`
1250 ///
1251 /// Specification: _ISO_
1252 pub const RTCP: SampleEntryCode = SampleEntryCode::new(*b"rtcp");
1253 /// Real Time Metadata Sample Entry(XAVC Format)
1254 ///
1255 /// FourCC: `rtmd`
1256 ///
1257 /// Specification: _Sony_
1258 pub const RTMD: SampleEntryCode = SampleEntryCode::new(*b"rtmd");
1259 /// RTP Hints
1260 ///
1261 /// FourCC: `rtp `
1262 ///
1263 /// Specification: _ISO_
1264 pub const RTP: SampleEntryCode = SampleEntryCode::new(*b"rtp ");
1265 /// RealVideo Codec 11
1266 ///
1267 /// FourCC: `rv60`
1268 ///
1269 /// Specification: _RealHD_
1270 pub const RV60: SampleEntryCode = SampleEntryCode::new(*b"rv60");
1271 /// Recommended viewport concerning one or more indicated viewpoints
1272 ///
1273 /// FourCC: `rvp2`
1274 ///
1275 /// Specification: _OMAF_
1276 pub const RVP2: SampleEntryCode = SampleEntryCode::new(*b"rvp2");
1277 /// ITU H.263 video (3GPP format)
1278 ///
1279 /// FourCC: `s263`
1280 ///
1281 /// Specification: _3GPP_
1282 pub const S263: SampleEntryCode = SampleEntryCode::new(*b"s263");
1283 /// Narrowband AMR voice
1284 ///
1285 /// FourCC: `samr`
1286 ///
1287 /// Specification: _3GPP_
1288 pub const SAMR: SampleEntryCode = SampleEntryCode::new(*b"samr");
1289 /// Wideband AMR voice
1290 ///
1291 /// FourCC: `sawb`
1292 ///
1293 /// Specification: _3GPP_
1294 pub const SAWB: SampleEntryCode = SampleEntryCode::new(*b"sawb");
1295 /// Extended AMR-WB (AMR-WB+)
1296 ///
1297 /// FourCC: `sawp`
1298 ///
1299 /// Specification: _3GPP_
1300 pub const SAWP: SampleEntryCode = SampleEntryCode::new(*b"sawp");
1301 /// Text subtitles
1302 ///
1303 /// FourCC: `sbtt`
1304 ///
1305 /// Specification: _ISO_
1306 pub const SBTT: SampleEntryCode = SampleEntryCode::new(*b"sbtt");
1307 /// EVRC Voice
1308 ///
1309 /// FourCC: `sevc`
1310 ///
1311 /// Specification: _3GPP2_
1312 pub const SEVC: SampleEntryCode = SampleEntryCode::new(*b"sevc");
1313 /// Enhanced Voice Services (EVS)
1314 ///
1315 /// FourCC: `sevs`
1316 ///
1317 /// Specification: _3GPP_
1318 pub const SEVS: SampleEntryCode = SampleEntryCode::new(*b"sevs");
1319 /// MPEG-2 Transport Server
1320 ///
1321 /// FourCC: `sm2t`
1322 ///
1323 /// Specification: _ISO_
1324 pub const SM2T: SampleEntryCode = SampleEntryCode::new(*b"sm2t");
1325 /// 13K Voice
1326 ///
1327 /// FourCC: `sqcp`
1328 ///
1329 /// Specification: _3GPP2_
1330 pub const SQCP: SampleEntryCode = SampleEntryCode::new(*b"sqcp");
1331 /// SRTP Hints
1332 ///
1333 /// FourCC: `srtp`
1334 ///
1335 /// Specification: _ISO_
1336 pub const SRTP: SampleEntryCode = SampleEntryCode::new(*b"srtp");
1337 /// SMV Voice
1338 ///
1339 /// FourCC: `ssmv`
1340 ///
1341 /// Specification: _3GPP2_
1342 pub const SSMV: SampleEntryCode = SampleEntryCode::new(*b"ssmv");
1343 /// SRTCP reception hint track
1344 ///
1345 /// FourCC: `stcp`
1346 ///
1347 /// Specification: _ISO_
1348 pub const STCP: SampleEntryCode = SampleEntryCode::new(*b"stcp");
1349 /// Subtitle Sample Entry (HMMP)
1350 ///
1351 /// FourCC: `STGS`
1352 ///
1353 /// Specification: _Sony_
1354 pub const STGS: SampleEntryCode = SampleEntryCode::new(*b"STGS");
1355 /// Metadata for ERP (equirectangular projection) regions
1356 ///
1357 /// FourCC: `stmd`
1358 ///
1359 /// Specification: _OMAF_
1360 pub const STMD: SampleEntryCode = SampleEntryCode::new(*b"stmd");
1361 /// Subtitles (Timed Text)
1362 ///
1363 /// FourCC: `stpp`
1364 ///
1365 /// Specification: _ISO_
1366 pub const STPP: SampleEntryCode = SampleEntryCode::new(*b"stpp");
1367 /// Simple timed text
1368 ///
1369 /// FourCC: `stxt`
1370 ///
1371 /// Specification: _ISO_
1372 pub const STXT: SampleEntryCode = SampleEntryCode::new(*b"stxt");
1373 /// Scalable Video Coding
1374 ///
1375 /// FourCC: `svc1`
1376 ///
1377 /// Specification: _NALu Video_
1378 pub const SVC1: SampleEntryCode = SampleEntryCode::new(*b"svc1");
1379 /// Scalable Video Coding
1380 ///
1381 /// FourCC: `svc2`
1382 ///
1383 /// Specification: _NALu Video_
1384 pub const SVC2: SampleEntryCode = SampleEntryCode::new(*b"svc2");
1385 /// SVC metadata
1386 ///
1387 /// FourCC: `svcM`
1388 ///
1389 /// Specification: _NALu Video_
1390 pub const SVCM: SampleEntryCode = SampleEntryCode::new(*b"svcM");
1391 /// 64 bit timecode samples
1392 ///
1393 /// FourCC: `tc64`
1394 ///
1395 /// Specification: _Apple_
1396 pub const TC64: SampleEntryCode = SampleEntryCode::new(*b"tc64");
1397 /// 32 bit timecode samples
1398 ///
1399 /// FourCC: `tmcd`
1400 ///
1401 /// Specification: _Apple_
1402 pub const TMCD: SampleEntryCode = SampleEntryCode::new(*b"tmcd");
1403 /// Sphere location for timed text
1404 ///
1405 /// FourCC: `ttsl`
1406 ///
1407 /// Specification: _OMAF_
1408 pub const TTSL: SampleEntryCode = SampleEntryCode::new(*b"ttsl");
1409 /// Uncompressed 16-bit audio
1410 ///
1411 /// FourCC: `twos`
1412 ///
1413 /// Specification: _MJ2_
1414 pub const TWOS: SampleEntryCode = SampleEntryCode::new(*b"twos");
1415 /// Timed Text stream
1416 ///
1417 /// FourCC: `tx3g`
1418 ///
1419 /// Specification: _3GPP_
1420 pub const TX3G: SampleEntryCode = SampleEntryCode::new(*b"tx3g");
1421 /// Samples have been compressed using uLaw 2:1.
1422 ///
1423 /// FourCC: `ulaw`
1424 ///
1425 /// Specification: _QT_
1426 pub const ULAW: SampleEntryCode = SampleEntryCode::new(*b"ulaw");
1427 /// Dynamic Range Control (DRC) data
1428 ///
1429 /// FourCC: `unid`
1430 ///
1431 /// Specification: _DRC_
1432 pub const UNID: SampleEntryCode = SampleEntryCode::new(*b"unid");
1433 /// Binary timed metadata identified by URI
1434 ///
1435 /// FourCC: `urim`
1436 ///
1437 /// Specification: _ISO_
1438 pub const URIM: SampleEntryCode = SampleEntryCode::new(*b"urim");
1439 /// V3C atlas track with atlas parameter sets only in sample entries
1440 ///
1441 /// FourCC: `v3a1`
1442 ///
1443 /// Specification: _V3C-SYS_
1444 pub const V3A1: SampleEntryCode = SampleEntryCode::new(*b"v3a1");
1445 /// V3C atlas track with atlas parameter sets in sample entries or samples
1446 ///
1447 /// FourCC: `v3ag`
1448 ///
1449 /// Specification: _V3C-SYS_
1450 pub const V3AG: SampleEntryCode = SampleEntryCode::new(*b"v3ag");
1451 /// V3C atlas track with a single atlas and atlas parameter sets only in sample entries
1452 ///
1453 /// FourCC: `v3c1`
1454 ///
1455 /// Specification: _V3C-SYS_
1456 pub const V3C1: SampleEntryCode = SampleEntryCode::new(*b"v3c1");
1457 /// V3C atlas base track with common atlas data
1458 ///
1459 /// FourCC: `v3cb`
1460 ///
1461 /// Specification: _V3C-SYS_
1462 pub const V3CB: SampleEntryCode = SampleEntryCode::new(*b"v3cb");
1463 /// V3C atlas track with a single atlas and atlas parameter sets in sample entries or samples
1464 ///
1465 /// FourCC: `v3cg`
1466 ///
1467 /// Specification: _V3C-SYS_
1468 pub const V3CG: SampleEntryCode = SampleEntryCode::new(*b"v3cg");
1469 /// V3C bitstream track with atlas parameter sets only in sample entries
1470 ///
1471 /// FourCC: `v3e1`
1472 ///
1473 /// Specification: _V3C-SYS_
1474 pub const V3E1: SampleEntryCode = SampleEntryCode::new(*b"v3e1");
1475 /// V3C bitstream track with atlas parameter sets in sample entries or samples
1476 ///
1477 /// FourCC: `v3eg`
1478 ///
1479 /// Specification: _V3C-SYS_
1480 pub const V3EG: SampleEntryCode = SampleEntryCode::new(*b"v3eg");
1481 /// V3C atlas tile track with atlas tile data
1482 ///
1483 /// FourCC: `v3t1`
1484 ///
1485 /// Specification: _V3C-SYS_
1486 pub const V3T1: SampleEntryCode = SampleEntryCode::new(*b"v3t1");
1487 /// SMPTE VC-1
1488 ///
1489 /// FourCC: `vc-1`
1490 ///
1491 /// Specification: _SMPTE_
1492 pub const VC_1: SampleEntryCode = SampleEntryCode::new(*b"vc-1");
1493 /// VP8 video
1494 ///
1495 /// FourCC: `vp08`
1496 ///
1497 /// Specification: _VPxx_
1498 pub const VP08: SampleEntryCode = SampleEntryCode::new(*b"vp08");
1499 /// VP9 video
1500 ///
1501 /// FourCC: `vp09`
1502 ///
1503 /// Specification: _VPxx_
1504 pub const VP09: SampleEntryCode = SampleEntryCode::new(*b"vp09");
1505 /// Quality metrics
1506 ///
1507 /// FourCC: `vqme`
1508 ///
1509 /// Specification: _Metrics_
1510 pub const VQME: SampleEntryCode = SampleEntryCode::new(*b"vqme");
1511 /// Viewing space
1512 ///
1513 /// FourCC: `vrsp`
1514 ///
1515 /// Specification: _OMAF_
1516 pub const VRSP: SampleEntryCode = SampleEntryCode::new(*b"vrsp");
1517 /// Versatile Video Coding with non-VCL (Video Coding Layer) NAL (Network Abstraction Layer) units only
1518 ///
1519 /// FourCC: `vvcN`
1520 ///
1521 /// Specification: _NALu Video_
1522 pub const VVCN: SampleEntryCode = SampleEntryCode::new(*b"vvcN");
1523 /// Versatile Video Coding with parameter sets only in sample entries
1524 ///
1525 /// FourCC: `vvc1`
1526 ///
1527 /// Specification: _NALu Video_
1528 pub const VVC1: SampleEntryCode = SampleEntryCode::new(*b"vvc1");
1529 /// Versatile Video Coding with parameter sets in sample entries or samples
1530 ///
1531 /// FourCC: `vvi1`
1532 ///
1533 /// Specification: _NALu Video_
1534 pub const VVI1: SampleEntryCode = SampleEntryCode::new(*b"vvi1");
1535 /// Versatile Video Coding (VVC) subpicture track that does not contain a conforming VVC bitstream
1536 ///
1537 /// FourCC: `vvs1`
1538 ///
1539 /// Specification: _NALu Video_
1540 pub const VVS1: SampleEntryCode = SampleEntryCode::new(*b"vvs1");
1541 /// WebVTT data
1542 ///
1543 /// FourCC: `wvtt`
1544 ///
1545 /// Specification: _ISO-Text_
1546 pub const WVTT: SampleEntryCode = SampleEntryCode::new(*b"wvtt");
1547 /// Encrypted/protected subtitles
1548 ///
1549 /// FourCC: `encu`
1550 ///
1551 /// Specification: _ISO_
1552 pub const ENCU: SampleEntryCode = SampleEntryCode::new(*b"encu");
1553 /// Encrypted/protected haptics
1554 ///
1555 /// FourCC: `encp`
1556 ///
1557 /// Specification: _ISO_
1558 pub const ENCP: SampleEntryCode = SampleEntryCode::new(*b"encp");
1559 /// Encrypted/protected volumetric visual
1560 ///
1561 /// FourCC: `enc3`
1562 ///
1563 /// Specification: _ISO_
1564 pub const ENC3: SampleEntryCode = SampleEntryCode::new(*b"enc3");
1565 /// Uncompressed Video
1566 ///
1567 /// FourCC: `uncv`
1568 ///
1569 /// Specification: _UNCV_
1570 pub const UNCV: SampleEntryCode = SampleEntryCode::new(*b"uncv");
1571 /// Immersive Audio Model and Formats - Encapsulated IA Sequence
1572 ///
1573 /// FourCC: `iamf`
1574 ///
1575 /// Specification: _AOM-IAMF_
1576 pub const IAMF: SampleEntryCode = SampleEntryCode::new(*b"iamf");
1577 /// Integer based PCM format for audio
1578 ///
1579 /// FourCC: `ipcm`
1580 ///
1581 /// Specification: _ISO-UNCA_
1582 pub const IPCM: SampleEntryCode = SampleEntryCode::new(*b"ipcm");
1583 /// Floating-point based PCM format for audio
1584 ///
1585 /// FourCC: `fpcm`
1586 ///
1587 /// Specification: _ISO-UNCA_
1588 pub const FPCM: SampleEntryCode = SampleEntryCode::new(*b"fpcm");
1589 /// Dynamic Metadata Sample Entry(XF-AVC S/XF-HEVC S File Format)
1590 ///
1591 /// FourCC: `cndm`
1592 ///
1593 /// Specification: _Canon_
1594 pub const CNDM: SampleEntryCode = SampleEntryCode::new(*b"cndm");
1595 /// LCEVC video track
1596 ///
1597 /// FourCC: `lvc1`
1598 ///
1599 /// Specification: _NALu Video_
1600 pub const LVC1: SampleEntryCode = SampleEntryCode::new(*b"lvc1");
1601 /// Apple Positional Audio Codec
1602 ///
1603 /// FourCC: `apac`
1604 ///
1605 /// Specification: _Apple_
1606 pub const APAC: SampleEntryCode = SampleEntryCode::new(*b"apac");
1607 /// APV mezzanine video codec for storage exchange and editing of professional quality video
1608 ///
1609 /// FourCC: `apv1`
1610 ///
1611 /// Specification: _OpenAPV_
1612 pub const APV1: SampleEntryCode = SampleEntryCode::new(*b"apv1");
1613}
1614/// Return the handler type for a box code that appears inside a sample entry, if one is defined.
1615pub fn sample_entry_box_handler(code: BoxCode) -> Option<HandlerCode> {
1616 match code {
1617 BoxCode::THREE_SIB => Some(HandlerCode::VIDE),
1618 BoxCode::SIX_VPC => Some(HandlerCode::VOLV),
1619 BoxCode::A3DC => Some(HandlerCode::VIDE),
1620 BoxCode::AUXI => Some(HandlerCode::VIDE),
1621 BoxCode::AV1C => Some(HandlerCode::VIDE),
1622 BoxCode::AVCC => Some(HandlerCode::VIDE),
1623 BoxCode::BTRT => None,
1624 BoxCode::CCLV => Some(HandlerCode::VIDE),
1625 BoxCode::CCST => Some(HandlerCode::VIDE),
1626 BoxCode::CHNL => Some(HandlerCode::SOUN),
1627 BoxCode::CLAP => Some(HandlerCode::VIDE),
1628 BoxCode::CLLI => Some(HandlerCode::VIDE),
1629 BoxCode::COLR => Some(HandlerCode::VIDE),
1630 BoxCode::COLL => Some(HandlerCode::VIDE),
1631 BoxCode::DAC3 => Some(HandlerCode::SOUN),
1632 BoxCode::DAC4 => Some(HandlerCode::SOUN),
1633 BoxCode::DEC3 => Some(HandlerCode::SOUN),
1634 BoxCode::DFLA => Some(HandlerCode::SOUN),
1635 BoxCode::DHEC => Some(HandlerCode::VIDE),
1636 BoxCode::DMIX => Some(HandlerCode::SOUN),
1637 BoxCode::DMLP => Some(HandlerCode::SOUN),
1638 BoxCode::DVCC => Some(HandlerCode::VIDE),
1639 BoxCode::DVVC => Some(HandlerCode::VIDE),
1640 BoxCode::DVWC => Some(HandlerCode::VIDE),
1641 BoxCode::ECAM => Some(HandlerCode::VIDE),
1642 BoxCode::ESDS => None,
1643 BoxCode::EVCC => Some(HandlerCode::VIDE),
1644 BoxCode::EVSC => Some(HandlerCode::VIDE),
1645 BoxCode::FIEL => Some(HandlerCode::VIDE),
1646 BoxCode::HVCC => Some(HandlerCode::VIDE),
1647 BoxCode::HVTC => Some(HandlerCode::VIDE),
1648 BoxCode::ICAM => Some(HandlerCode::VIDE),
1649 BoxCode::JPGC => Some(HandlerCode::PICT),
1650 BoxCode::LEQI => Some(HandlerCode::SOUN),
1651 BoxCode::LHVC => Some(HandlerCode::VIDE),
1652 BoxCode::M4DS => None,
1653 BoxCode::MAEI => Some(HandlerCode::SOUN),
1654 BoxCode::MAEM => Some(HandlerCode::SOUN),
1655 BoxCode::MDCV => Some(HandlerCode::VIDE),
1656 BoxCode::MHAC => Some(HandlerCode::SOUN),
1657 BoxCode::MHAD => Some(HandlerCode::SOUN),
1658 BoxCode::MHAP => Some(HandlerCode::SOUN),
1659 BoxCode::MVCC => Some(HandlerCode::VIDE),
1660 BoxCode::MVCP => Some(HandlerCode::VIDE),
1661 BoxCode::MVDC => Some(HandlerCode::VIDE),
1662 BoxCode::PASP => Some(HandlerCode::VIDE),
1663 BoxCode::PDC1 => Some(HandlerCode::SOUN),
1664 BoxCode::PDI1 => Some(HandlerCode::SOUN),
1665 BoxCode::PRMR => Some(HandlerCode::VIDE),
1666 BoxCode::QLIF => Some(HandlerCode::VIDE),
1667 BoxCode::SCRB => Some(HandlerCode::VIDE),
1668 BoxCode::SEIB => Some(HandlerCode::VIDE),
1669 BoxCode::SILB => Some(HandlerCode::META),
1670 BoxCode::SMDM => Some(HandlerCode::VIDE),
1671 BoxCode::SRAT => Some(HandlerCode::SOUN),
1672 BoxCode::SVCC => Some(HandlerCode::VIDE),
1673 BoxCode::SVCP => Some(HandlerCode::VIDE),
1674 BoxCode::SVMC => Some(HandlerCode::META),
1675 BoxCode::TXTC => Some(HandlerCode::TEXT),
1676 BoxCode::UDC1 => Some(HandlerCode::SOUN),
1677 BoxCode::UDC2 => Some(HandlerCode::SOUN),
1678 BoxCode::UDEX => Some(HandlerCode::SOUN),
1679 BoxCode::UDI1 => Some(HandlerCode::SOUN),
1680 BoxCode::UDI2 => Some(HandlerCode::SOUN),
1681 BoxCode::UEQC => Some(HandlerCode::SOUN),
1682 BoxCode::UEQI => Some(HandlerCode::SOUN),
1683 BoxCode::URII => Some(HandlerCode::META),
1684 BoxCode::V3CC => Some(HandlerCode::VOLV),
1685 BoxCode::V3TC => Some(HandlerCode::VOLV),
1686 BoxCode::VEXU => Some(HandlerCode::VIDE),
1687 BoxCode::VPCC => Some(HandlerCode::VIDE),
1688 BoxCode::VSIB => Some(HandlerCode::VIDE),
1689 BoxCode::VTTC => Some(HandlerCode::TEXT),
1690 BoxCode::VVNC => Some(HandlerCode::VIDE),
1691 BoxCode::VVCC => Some(HandlerCode::VIDE),
1692 BoxCode::VWID => Some(HandlerCode::VIDE),
1693 BoxCode::VLAB => Some(HandlerCode::TEXT),
1694 BoxCode::CUVV => Some(HandlerCode::VIDE),
1695 BoxCode::CMPD => Some(HandlerCode::VIDE),
1696 BoxCode::UNCC => Some(HandlerCode::VIDE),
1697 BoxCode::CPAL => Some(HandlerCode::VIDE),
1698 BoxCode::CPAT => Some(HandlerCode::VIDE),
1699 BoxCode::CLEV => Some(HandlerCode::VIDE),
1700 BoxCode::SPLZ => Some(HandlerCode::VIDE),
1701 BoxCode::SNUC => Some(HandlerCode::VIDE),
1702 BoxCode::SBPM => Some(HandlerCode::VIDE),
1703 BoxCode::CLOC => Some(HandlerCode::VIDE),
1704 BoxCode::FPAC => Some(HandlerCode::VIDE),
1705 BoxCode::DISI => Some(HandlerCode::VIDE),
1706 BoxCode::PCMC => Some(HandlerCode::SOUN),
1707 BoxCode::LVCC => Some(HandlerCode::VIDE),
1708 BoxCode::ACXD => Some(HandlerCode::SOUN),
1709 BoxCode::DCA3 => Some(HandlerCode::SOUN),
1710 BoxCode::APVC => Some(HandlerCode::VIDE),
1711 BoxCode::AMVE => Some(HandlerCode::VIDE),
1712 BoxCode::ALMO => Some(HandlerCode::VIDE),
1713 _ => None,
1714 }
1715}
1716impl BoxCode {
1717 /// Compressed movie fragment
1718 ///
1719 /// FourCC: `!mof`
1720 ///
1721 /// Specification: _ISO_
1722 pub const COMPRESSED_MOF: BoxCode = BoxCode::new(*b"!mof");
1723 /// Compressed movie
1724 ///
1725 /// FourCC: `!mov`
1726 ///
1727 /// Specification: _ISO_
1728 pub const COMPRESSED_MOV: BoxCode = BoxCode::new(*b"!mov");
1729 /// Compressed segment index
1730 ///
1731 /// FourCC: `!six`
1732 ///
1733 /// Specification: _ISO_
1734 pub const COMPRESSED_SIX: BoxCode = BoxCode::new(*b"!six");
1735 /// Compressed subsegment index
1736 ///
1737 /// FourCC: `!ssx`
1738 ///
1739 /// Specification: _ISO_
1740 pub const COMPRESSED_SSX: BoxCode = BoxCode::new(*b"!ssx");
1741 /// 2D region quality ranking
1742 ///
1743 /// FourCC: `2dqr`
1744 ///
1745 /// Specification: _OMAF_
1746 pub const TWO_DQR: BoxCode = BoxCode::new(*b"2dqr");
1747 /// spatial relationship 2D source
1748 ///
1749 /// FourCC: `2dss`
1750 ///
1751 /// Specification: _OMAF_
1752 pub const TWO_DSS: BoxCode = BoxCode::new(*b"2dss");
1753 /// MVDDepthResolutionBox
1754 ///
1755 /// FourCC: `3dpr`
1756 ///
1757 /// Specification: _NALu Video_
1758 pub const THREE_DPR: BoxCode = BoxCode::new(*b"3dpr");
1759 /// MVD Scalability Information SEI Message Box
1760 ///
1761 /// FourCC: `3sib`
1762 ///
1763 /// Specification: _NALu Video_
1764 ///
1765 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1766 pub const THREE_SIB: BoxCode = BoxCode::new(*b"3sib");
1767 /// Viewport Configuration
1768 ///
1769 /// FourCC: `6vpC`
1770 ///
1771 /// Specification: _V3C-SYS_
1772 ///
1773 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1774 pub const SIX_VPC: BoxCode = BoxCode::new(*b"6vpC");
1775 /// Exif Metadata
1776 ///
1777 /// FourCC: `Exif`
1778 ///
1779 /// Specification: _JPXS_
1780 pub const EXIF: BoxCode = BoxCode::new(*b"Exif");
1781 /// ID3 version 2 container
1782 ///
1783 /// FourCC: `ID32`
1784 ///
1785 /// Specification: _id3v2_
1786 pub const ID32: BoxCode = BoxCode::new(*b"ID32");
1787 /// JPEG XL Signature
1788 ///
1789 /// FourCC: `JXL `
1790 ///
1791 /// Specification: _JPEG XL_
1792 pub const JXL: BoxCode = BoxCode::new(*b"JXL ");
1793 /// JPEG XS Signature
1794 ///
1795 /// FourCC: `JXS `
1796 ///
1797 /// Specification: _JPXS_
1798 pub const JXS: BoxCode = BoxCode::new(*b"JXS ");
1799 /// Mastering Display Metadata Box
1800 ///
1801 /// FourCC: `SmDm`
1802 ///
1803 /// Specification: _VPxx_
1804 ///
1805 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1806 pub const SMDM: BoxCode = BoxCode::new(*b"SmDm");
1807 /// Unique Identifier Technology Solution
1808 ///
1809 /// FourCC: `UITS`
1810 ///
1811 /// Specification: _Universal Music Group_
1812 pub const UITS: BoxCode = BoxCode::new(*b"UITS");
1813 /// A3DConfigurationBox
1814 ///
1815 /// FourCC: `a3dC`
1816 ///
1817 /// Specification: _NALu Video_
1818 ///
1819 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1820 pub const A3DC: BoxCode = BoxCode::new(*b"a3dC");
1821 /// Decoder-specific info for Auro-Cx audio
1822 ///
1823 /// FourCC: `acxd`
1824 ///
1825 /// Specification: _Auro_
1826 ///
1827 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1828 pub const ACXD: BoxCode = BoxCode::new(*b"acxd");
1829 /// description of the content for accessibility purposes (similar to the HTML alt attribute); formatted as for the cprt user-data item
1830 ///
1831 /// FourCC: `ades`
1832 ///
1833 /// Specification: _Apple_
1834 pub const ADES: BoxCode = BoxCode::new(*b"ades");
1835 /// audio element description
1836 ///
1837 /// FourCC: `aedb`
1838 ///
1839 /// Specification: _ISO_
1840 pub const AEDB: BoxCode = BoxCode::new(*b"aedb");
1841 /// audio element box
1842 ///
1843 /// FourCC: `aelm`
1844 ///
1845 /// Specification: _ISO_
1846 pub const AELM: BoxCode = BoxCode::new(*b"aelm");
1847 /// audio element positioning interactivity polar box
1848 ///
1849 /// FourCC: `aepp`
1850 ///
1851 /// Specification: _ISO_
1852 pub const AEPP: BoxCode = BoxCode::new(*b"aepp");
1853 /// audio element prominence interactivity box
1854 ///
1855 /// FourCC: `aepr`
1856 ///
1857 /// Specification: _ISO_
1858 pub const AEPR: BoxCode = BoxCode::new(*b"aepr");
1859 /// audio element selection box
1860 ///
1861 /// FourCC: `aesb`
1862 ///
1863 /// Specification: _ISO_
1864 pub const AESB: BoxCode = BoxCode::new(*b"aesb");
1865 /// audio element selection description box
1866 ///
1867 /// FourCC: `aesd`
1868 ///
1869 /// Specification: _ISO_
1870 pub const AESD: BoxCode = BoxCode::new(*b"aesd");
1871 /// Asset information to identify, license and play
1872 ///
1873 /// FourCC: `ainf`
1874 ///
1875 /// Specification: _DECE_
1876 pub const AINF: BoxCode = BoxCode::new(*b"ainf");
1877 /// Album title and track number for media
1878 ///
1879 /// FourCC: `albm`
1880 ///
1881 /// Specification: _3GPP_
1882 pub const ALBM: BoxCode = BoxCode::new(*b"albm");
1883 /// Alpha mode (straight vs premultiplied alpha) signaling
1884 ///
1885 /// FourCC: `almo`
1886 ///
1887 /// Specification: _Apple_
1888 ///
1889 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1890 pub const ALMO: BoxCode = BoxCode::new(*b"almo");
1891 /// Album loudness base
1892 ///
1893 /// FourCC: `alou`
1894 ///
1895 /// Specification: _ISO_
1896 pub const ALOU: BoxCode = BoxCode::new(*b"alou");
1897 /// Ambient viewing environment
1898 ///
1899 /// FourCC: `amve`
1900 ///
1901 /// Specification: _ISO_
1902 ///
1903 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1904 pub const AMVE: BoxCode = BoxCode::new(*b"amve");
1905 /// Name of the camera angle through which the clip was shot
1906 ///
1907 /// FourCC: `angl`
1908 ///
1909 /// Specification: _Apple_
1910 pub const ANGL: BoxCode = BoxCode::new(*b"angl");
1911 /// APV Codec Configuration Box
1912 ///
1913 /// FourCC: `apvC`
1914 ///
1915 /// Specification: _OpenAPV_
1916 ///
1917 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1918 pub const APVC: BoxCode = BoxCode::new(*b"apvC");
1919 /// audio rendering indication
1920 ///
1921 /// FourCC: `ardi`
1922 ///
1923 /// Specification: _ISO_
1924 pub const ARDI: BoxCode = BoxCode::new(*b"ardi");
1925 /// alternative startup sequence properties
1926 ///
1927 /// FourCC: `assp`
1928 ///
1929 /// Specification: _ISO_
1930 pub const ASSP: BoxCode = BoxCode::new(*b"assp");
1931 /// Author of the media
1932 ///
1933 /// FourCC: `auth`
1934 ///
1935 /// Specification: _3GPP_
1936 pub const AUTH: BoxCode = BoxCode::new(*b"auth");
1937 /// Auxiliary track type information
1938 ///
1939 /// FourCC: `auxi`
1940 ///
1941 /// Specification: _HEIF_
1942 ///
1943 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1944 pub const AUXI: BoxCode = BoxCode::new(*b"auxi");
1945 /// AOM Video Codec Configuration
1946 ///
1947 /// FourCC: `av1C`
1948 ///
1949 /// Specification: _AV1-ISOBMFF_
1950 ///
1951 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1952 pub const AV1C: BoxCode = BoxCode::new(*b"av1C");
1953 /// AVC Configuration
1954 ///
1955 /// FourCC: `avcC`
1956 ///
1957 /// Specification: _NALu Video_
1958 ///
1959 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
1960 pub const AVCC: BoxCode = BoxCode::new(*b"avcC");
1961 /// AVC NAL Unit Storage Box
1962 ///
1963 /// FourCC: `avcn`
1964 ///
1965 /// Specification: _DECE_
1966 pub const AVCN: BoxCode = BoxCode::new(*b"avcn");
1967 /// Box Index
1968 ///
1969 /// FourCC: `bidx`
1970 ///
1971 /// Specification: _ISO-Partial_
1972 pub const BIDX: BoxCode = BoxCode::new(*b"bidx");
1973 /// Base location and purchase location for license acquisition
1974 ///
1975 /// FourCC: `bloc`
1976 ///
1977 /// Specification: _DECE_
1978 pub const BLOC: BoxCode = BoxCode::new(*b"bloc");
1979 /// Buffer Model Description
1980 ///
1981 /// FourCC: `bmdm`
1982 ///
1983 /// Specification: _JPXS_
1984 pub const BMDM: BoxCode = BoxCode::new(*b"bmdm");
1985 /// Bits per component
1986 ///
1987 /// FourCC: `bpcc`
1988 ///
1989 /// Specification: _JPEG2000_
1990 pub const BPCC: BoxCode = BoxCode::new(*b"bpcc");
1991 /// Brotli-compressed box
1992 ///
1993 /// FourCC: `brob`
1994 ///
1995 /// Specification: _JPEG XL_
1996 pub const BROB: BoxCode = BoxCode::new(*b"brob");
1997 /// Bit-rate information
1998 ///
1999 /// FourCC: `btrt`
2000 ///
2001 /// Specification: _ISO_
2002 ///
2003 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2004 pub const BTRT: BoxCode = BoxCode::new(*b"btrt");
2005 /// Buffering information
2006 ///
2007 /// FourCC: `buff`
2008 ///
2009 /// Specification: _NALu Video_
2010 pub const BUFF: BoxCode = BoxCode::new(*b"buff");
2011 /// binary XML container
2012 ///
2013 /// FourCC: `bxml`
2014 ///
2015 /// Specification: _ISO_
2016 pub const BXML: BoxCode = BoxCode::new(*b"bxml");
2017 /// OMA DRM Content ID
2018 ///
2019 /// FourCC: `ccid`
2020 ///
2021 /// Specification: _OMA DRM 2.1_
2022 pub const CCID: BoxCode = BoxCode::new(*b"ccid");
2023 /// Content colour volume
2024 ///
2025 /// FourCC: `cclv`
2026 ///
2027 /// Specification: _ISO_
2028 ///
2029 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2030 pub const CCLV: BoxCode = BoxCode::new(*b"cclv");
2031 /// Coding constraints box
2032 ///
2033 /// FourCC: `ccst`
2034 ///
2035 /// Specification: _HEIF_
2036 ///
2037 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2038 pub const CCST: BoxCode = BoxCode::new(*b"ccst");
2039 /// type and ordering of the components within the codestream
2040 ///
2041 /// FourCC: `cdef`
2042 ///
2043 /// Specification: _JPEG2000_
2044 pub const CDEF: BoxCode = BoxCode::new(*b"cdef");
2045 /// Channel layout
2046 ///
2047 /// FourCC: `chnl`
2048 ///
2049 /// Specification: _ISO_
2050 ///
2051 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2052 pub const CHNL: BoxCode = BoxCode::new(*b"chnl");
2053 /// complete track information
2054 ///
2055 /// FourCC: `cinf`
2056 ///
2057 /// Specification: _ISO_
2058 pub const CINF: BoxCode = BoxCode::new(*b"cinf");
2059 /// Clean aperture
2060 ///
2061 /// FourCC: `clap`
2062 ///
2063 /// Specification: _ISO_
2064 ///
2065 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2066 pub const CLAP: BoxCode = BoxCode::new(*b"clap");
2067 /// Component Reference Level
2068 ///
2069 /// FourCC: `clev`
2070 ///
2071 /// Specification: _UNCV_
2072 ///
2073 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2074 pub const CLEV: BoxCode = BoxCode::new(*b"clev");
2075 /// Name of the clip file
2076 ///
2077 /// FourCC: `clfn`
2078 ///
2079 /// Specification: _Apple_
2080 pub const CLFN: BoxCode = BoxCode::new(*b"clfn");
2081 /// Identifier of the clip
2082 ///
2083 /// FourCC: `clid`
2084 ///
2085 /// Specification: _Apple_
2086 pub const CLID: BoxCode = BoxCode::new(*b"clid");
2087 /// Visual clipping region container
2088 ///
2089 /// FourCC: `clip`
2090 ///
2091 /// Specification: _QT_
2092 pub const CLIP: BoxCode = BoxCode::new(*b"clip");
2093 /// Content Light Level
2094 ///
2095 /// FourCC: `clli`
2096 ///
2097 /// Specification: _ISO_
2098 ///
2099 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2100 pub const CLLI: BoxCode = BoxCode::new(*b"clli");
2101 /// Chroma Location
2102 ///
2103 /// FourCC: `cloc`
2104 ///
2105 /// Specification: _UNCV_
2106 ///
2107 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2108 pub const CLOC: BoxCode = BoxCode::new(*b"cloc");
2109 /// Classification of the media
2110 ///
2111 /// FourCC: `clsf`
2112 ///
2113 /// Specification: _3GPP_
2114 pub const CLSF: BoxCode = BoxCode::new(*b"clsf");
2115 /// mapping between a palette and codestream components
2116 ///
2117 /// FourCC: `cmap`
2118 ///
2119 /// Specification: _JPEG2000_
2120 pub const CMAP: BoxCode = BoxCode::new(*b"cmap");
2121 /// Identifier of the camera
2122 ///
2123 /// FourCC: `cmid`
2124 ///
2125 /// Specification: _Apple_
2126 pub const CMID: BoxCode = BoxCode::new(*b"cmid");
2127 /// Name that identifies the camera
2128 ///
2129 /// FourCC: `cmnm`
2130 ///
2131 /// Specification: _Apple_
2132 pub const CMNM: BoxCode = BoxCode::new(*b"cmnm");
2133 /// Component Definition
2134 ///
2135 /// FourCC: `cmpd`
2136 ///
2137 /// Specification: _UNCV_
2138 ///
2139 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2140 pub const CMPD: BoxCode = BoxCode::new(*b"cmpd");
2141 /// 64-bit chunk offset
2142 ///
2143 /// FourCC: `co64`
2144 ///
2145 /// Specification: _ISO_
2146 pub const CO64: BoxCode = BoxCode::new(*b"co64");
2147 /// composition information
2148 ///
2149 /// FourCC: `coif`
2150 ///
2151 /// Specification: _OMAF_
2152 pub const COIF: BoxCode = BoxCode::new(*b"coif");
2153 /// Content Information Box
2154 ///
2155 /// FourCC: `coin`
2156 ///
2157 /// Specification: _DECE_
2158 pub const COIN: BoxCode = BoxCode::new(*b"coin");
2159 /// Name of the collection from which the media comes
2160 ///
2161 /// FourCC: `coll`
2162 ///
2163 /// Specification: _3GPP_
2164 ///
2165 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2166 pub const COLL: BoxCode = BoxCode::new(*b"coll");
2167 /// specifies the colourspace of the image
2168 ///
2169 /// FourCC: `colr`
2170 ///
2171 /// Specification: _JPEG2000_
2172 ///
2173 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2174 pub const COLR: BoxCode = BoxCode::new(*b"colr");
2175 /// coverage information
2176 ///
2177 /// FourCC: `covi`
2178 ///
2179 /// Specification: _OMAF_
2180 pub const COVI: BoxCode = BoxCode::new(*b"covi");
2181 /// Component Palette Configuration
2182 ///
2183 /// FourCC: `cpal`
2184 ///
2185 /// Specification: _UNCV_
2186 ///
2187 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2188 pub const CPAL: BoxCode = BoxCode::new(*b"cpal");
2189 /// Component Pattern Definition
2190 ///
2191 /// FourCC: `cpat`
2192 ///
2193 /// Specification: _UNCV_
2194 ///
2195 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2196 pub const CPAT: BoxCode = BoxCode::new(*b"cpat");
2197 /// copyright etc.
2198 ///
2199 /// FourCC: `cprt`
2200 ///
2201 /// Specification: _ISO_
2202 pub const CPRT: BoxCode = BoxCode::new(*b"cprt");
2203 /// Visual clipping region definition
2204 ///
2205 /// FourCC: `crgn`
2206 ///
2207 /// Specification: _QT_
2208 pub const CRGN: BoxCode = BoxCode::new(*b"crgn");
2209 /// reserved for ClockReferenceStream header
2210 ///
2211 /// FourCC: `crhd`
2212 ///
2213 /// Specification: _MP4v2_
2214 pub const CRHD: BoxCode = BoxCode::new(*b"crhd");
2215 /// Compact sample to group used in QuickTime File Format
2216 ///
2217 /// FourCC: `csgm`
2218 ///
2219 /// Specification: _QT_
2220 pub const CSGM: BoxCode = BoxCode::new(*b"csgm");
2221 /// compact sample to group
2222 ///
2223 /// FourCC: `csgp`
2224 ///
2225 /// Specification: _ISO_
2226 pub const CSGP: BoxCode = BoxCode::new(*b"csgp");
2227 /// composition to decode timeline mapping
2228 ///
2229 /// FourCC: `cslg`
2230 ///
2231 /// Specification: _ISO_
2232 pub const CSLG: BoxCode = BoxCode::new(*b"cslg");
2233 /// corrected wall clock start time
2234 ///
2235 /// FourCC: `cstb`
2236 ///
2237 /// Specification: _ONVIF_
2238 pub const CSTB: BoxCode = BoxCode::new(*b"cstb");
2239 /// Track color-table
2240 ///
2241 /// FourCC: `ctab`
2242 ///
2243 /// Specification: _QT_
2244 pub const CTAB: BoxCode = BoxCode::new(*b"ctab");
2245 /// (composition) time to sample
2246 ///
2247 /// FourCC: `ctts`
2248 ///
2249 /// Specification: _ISO_
2250 pub const CTTS: BoxCode = BoxCode::new(*b"ctts");
2251 /// HDR Vivid Configuration
2252 ///
2253 /// FourCC: `cuvv`
2254 ///
2255 /// Specification: _UWA_
2256 ///
2257 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2258 pub const CUVV: BoxCode = BoxCode::new(*b"cuvv");
2259 /// OMA DRM Cover URI
2260 ///
2261 /// FourCC: `cvru`
2262 ///
2263 /// Specification: _OMA DRM 2.1_
2264 pub const CVRU: BoxCode = BoxCode::new(*b"cvru");
2265 /// Decoder specific info for AC-3 audio
2266 ///
2267 /// FourCC: `dac3`
2268 ///
2269 /// Specification: _ETSI AC-3_
2270 ///
2271 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2272 pub const DAC3: BoxCode = BoxCode::new(*b"dac3");
2273 /// Decoder specific info for AC-4 audio
2274 ///
2275 /// FourCC: `dac4`
2276 ///
2277 /// Specification: _ETSI AC-4_
2278 ///
2279 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2280 pub const DAC4: BoxCode = BoxCode::new(*b"dac4");
2281 /// Date and time, formatted according to ISO 8601, when the content was created. For clips captured by recording devices, this is typically the date and time when the clip’s recording started.
2282 ///
2283 /// FourCC: `date`
2284 ///
2285 /// Specification: _Apple_
2286 pub const DATE: BoxCode = BoxCode::new(*b"date");
2287 /// Decoder configuration for AVS3-P3 Codec
2288 ///
2289 /// FourCC: `dca3`
2290 ///
2291 /// Specification: _T-AI-109.7_
2292 ///
2293 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2294 pub const DCA3: BoxCode = BoxCode::new(*b"dca3");
2295 /// Marlin DCF Duration, user-data atom type
2296 ///
2297 /// FourCC: `dcfD`
2298 ///
2299 /// Specification: _OMArlin_
2300 pub const DCFD: BoxCode = BoxCode::new(*b"dcfD");
2301 /// Decoder specific info for Enhanced AC-3 audio
2302 ///
2303 /// FourCC: `dec3`
2304 ///
2305 /// Specification: _ETSI AC-3_
2306 ///
2307 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2308 pub const DEC3: BoxCode = BoxCode::new(*b"dec3");
2309 /// Free Lossless Audio Codec (FLAC) specific data
2310 ///
2311 /// FourCC: `dfLa`
2312 ///
2313 /// Specification: _FLAC_
2314 ///
2315 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2316 pub const DFLA: BoxCode = BoxCode::new(*b"dfLa");
2317 /// Default HEVC extractor constructor box
2318 ///
2319 /// FourCC: `dhec`
2320 ///
2321 /// Specification: _NALu Video_
2322 ///
2323 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2324 pub const DHEC: BoxCode = BoxCode::new(*b"dhec");
2325 /// Data Integrity Hash
2326 ///
2327 /// FourCC: `dihd`
2328 ///
2329 /// Specification: _ISO-Partial_
2330 pub const DIHD: BoxCode = BoxCode::new(*b"dihd");
2331 /// data information box, container
2332 ///
2333 /// FourCC: `dinf`
2334 ///
2335 /// Specification: _ISO_
2336 pub const DINF: BoxCode = BoxCode::new(*b"dinf");
2337 /// Data Integrity
2338 ///
2339 /// FourCC: `dint`
2340 ///
2341 /// Specification: _ISO-Partial_
2342 pub const DINT: BoxCode = BoxCode::new(*b"dint");
2343 /// Disparity Information
2344 ///
2345 /// FourCC: `disi`
2346 ///
2347 /// Specification: _UNCV_
2348 ///
2349 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2350 pub const DISI: BoxCode = BoxCode::new(*b"disi");
2351 /// Downmix instructions
2352 ///
2353 /// FourCC: `dmix`
2354 ///
2355 /// Specification: _ISO_
2356 ///
2357 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2358 pub const DMIX: BoxCode = BoxCode::new(*b"dmix");
2359 /// Decoder specific info for MLP audio
2360 ///
2361 /// FourCC: `dmlp`
2362 ///
2363 /// Specification: _Dolby MLP_
2364 ///
2365 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2366 pub const DMLP: BoxCode = BoxCode::new(*b"dmlp");
2367 /// Mastering Display Metadata
2368 ///
2369 /// FourCC: `dmon`
2370 ///
2371 /// Specification: _JPXS_
2372 pub const DMON: BoxCode = BoxCode::new(*b"dmon");
2373 /// data reference box, declares source(s) of media data in track
2374 ///
2375 /// FourCC: `dref`
2376 ///
2377 /// Specification: _ISO_
2378 pub const DREF: BoxCode = BoxCode::new(*b"dref");
2379 /// Media description
2380 ///
2381 /// FourCC: `dscp`
2382 ///
2383 /// Specification: _3GPP_
2384 pub const DSCP: BoxCode = BoxCode::new(*b"dscp");
2385 /// DVB Sample Group Description Box
2386 ///
2387 /// FourCC: `dsgd`
2388 ///
2389 /// Specification: _DVB_
2390 pub const DSGD: BoxCode = BoxCode::new(*b"dsgd");
2391 /// DVB Sample to Group Box
2392 ///
2393 /// FourCC: `dstg`
2394 ///
2395 /// Specification: _DVB_
2396 pub const DSTG: BoxCode = BoxCode::new(*b"dstg");
2397 /// Dolby Vision Configuration
2398 ///
2399 /// FourCC: `dvcC`
2400 ///
2401 /// Specification: _Dolby Vision_
2402 ///
2403 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2404 pub const DVCC: BoxCode = BoxCode::new(*b"dvcC");
2405 /// Dolby Vision Extended Configuration
2406 ///
2407 /// FourCC: `dvvC`
2408 ///
2409 /// Specification: _Dolby Vision_
2410 ///
2411 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2412 pub const DVVC: BoxCode = BoxCode::new(*b"dvvC");
2413 /// Dolby Vision Extended Configuration 2
2414 ///
2415 /// FourCC: `dvwC`
2416 ///
2417 /// Specification: _Dolby Vision_
2418 ///
2419 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2420 pub const DVWC: BoxCode = BoxCode::new(*b"dvwC");
2421 /// Extrinsic camera parameters
2422 ///
2423 /// FourCC: `ecam`
2424 ///
2425 /// Specification: _NALu Video_
2426 ///
2427 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2428 pub const ECAM: BoxCode = BoxCode::new(*b"ecam");
2429 /// edit list container
2430 ///
2431 /// FourCC: `edts`
2432 ///
2433 /// Specification: _ISO_
2434 pub const EDTS: BoxCode = BoxCode::new(*b"edts");
2435 /// Extended Language Tag
2436 ///
2437 /// FourCC: `elng`
2438 ///
2439 /// Specification: _QT_
2440 pub const ELNG: BoxCode = BoxCode::new(*b"elng");
2441 /// an edit list
2442 ///
2443 /// FourCC: `elst`
2444 ///
2445 /// Specification: _ISO_
2446 pub const ELST: BoxCode = BoxCode::new(*b"elst");
2447 /// event message
2448 ///
2449 /// FourCC: `emsg`
2450 ///
2451 /// Specification: _DASH_
2452 pub const EMSG: BoxCode = BoxCode::new(*b"emsg");
2453 /// Elementary stream descriptor
2454 ///
2455 /// FourCC: `esds`
2456 ///
2457 /// Specification: _MP4v2_
2458 ///
2459 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2460 pub const ESDS: BoxCode = BoxCode::new(*b"esds");
2461 /// extended type and type combination
2462 ///
2463 /// FourCC: `etyp`
2464 ///
2465 /// Specification: _ISO_
2466 pub const ETYP: BoxCode = BoxCode::new(*b"etyp");
2467 /// EVC configuration
2468 ///
2469 /// FourCC: `evcC`
2470 ///
2471 /// Specification: _NALu Video_
2472 ///
2473 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2474 pub const EVCC: BoxCode = BoxCode::new(*b"evcC");
2475 /// Configuration for EVC slice component track
2476 ///
2477 /// FourCC: `evsC`
2478 ///
2479 /// Specification: _NALu Video_
2480 ///
2481 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2482 pub const EVSC: BoxCode = BoxCode::new(*b"evsC");
2483 /// Event information
2484 ///
2485 /// FourCC: `evti`
2486 ///
2487 /// Specification: _ATSC 3.0 A337_
2488 pub const EVTI: BoxCode = BoxCode::new(*b"evti");
2489 /// File delivery information (item info extension)
2490 ///
2491 /// FourCC: `fdel`
2492 ///
2493 /// Specification: _ISO_
2494 pub const FDEL: BoxCode = BoxCode::new(*b"fdel");
2495 /// FEC Informatiom
2496 ///
2497 /// FourCC: `feci`
2498 ///
2499 /// Specification: _ISO_
2500 pub const FECI: BoxCode = BoxCode::new(*b"feci");
2501 /// FEC Reservoir
2502 ///
2503 /// FourCC: `fecr`
2504 ///
2505 /// Specification: _ISO_
2506 pub const FECR: BoxCode = BoxCode::new(*b"fecr");
2507 /// Box File Index
2508 ///
2509 /// FourCC: `fidx`
2510 ///
2511 /// Specification: _ISO-Partial_
2512 pub const FIDX: BoxCode = BoxCode::new(*b"fidx");
2513 /// Field Coding
2514 ///
2515 /// FourCC: `fiel`
2516 ///
2517 /// Specification: _MJ2_
2518 ///
2519 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2520 pub const FIEL: BoxCode = BoxCode::new(*b"fiel");
2521 /// FD Item Information
2522 ///
2523 /// FourCC: `fiin`
2524 ///
2525 /// Specification: _ISO_
2526 pub const FIIN: BoxCode = BoxCode::new(*b"fiin");
2527 /// File Reservoir
2528 ///
2529 /// FourCC: `fire`
2530 ///
2531 /// Specification: _ISO_
2532 pub const FIRE: BoxCode = BoxCode::new(*b"fire");
2533 /// fisheye omnidirectional video
2534 ///
2535 /// FourCC: `fovd`
2536 ///
2537 /// Specification: _OMAF_
2538 pub const FOVD: BoxCode = BoxCode::new(*b"fovd");
2539 /// fisheye video essential info
2540 ///
2541 /// FourCC: `fovi`
2542 ///
2543 /// Specification: _OMAF_
2544 pub const FOVI: BoxCode = BoxCode::new(*b"fovi");
2545 /// Frame Packing Information
2546 ///
2547 /// FourCC: `fpac`
2548 ///
2549 /// Specification: _UNCV_
2550 ///
2551 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2552 pub const FPAC: BoxCode = BoxCode::new(*b"fpac");
2553 /// File Partition
2554 ///
2555 /// FourCC: `fpar`
2556 ///
2557 /// Specification: _ISO_
2558 pub const FPAR: BoxCode = BoxCode::new(*b"fpar");
2559 /// free space
2560 ///
2561 /// FourCC: `free`
2562 ///
2563 /// Specification: _ISO_
2564 pub const FREE: BoxCode = BoxCode::new(*b"free");
2565 /// original format box
2566 ///
2567 /// FourCC: `frma`
2568 ///
2569 /// Specification: _ISO_
2570 pub const FRMA: BoxCode = BoxCode::new(*b"frma");
2571 /// Front Part
2572 ///
2573 /// FourCC: `frpa`
2574 ///
2575 /// Specification: _ISO-Partial_
2576 pub const FRPA: BoxCode = BoxCode::new(*b"frpa");
2577 /// file type and compatibility
2578 ///
2579 /// FourCC: `ftyp`
2580 ///
2581 /// Specification: _ISO_
2582 pub const FTYP: BoxCode = BoxCode::new(*b"ftyp");
2583 /// fisheye video supplemental info
2584 ///
2585 /// FourCC: `fvsi`
2586 ///
2587 /// Specification: _OMAF_
2588 pub const FVSI: BoxCode = BoxCode::new(*b"fvsi");
2589 /// Group ID to name
2590 ///
2591 /// FourCC: `gitn`
2592 ///
2593 /// Specification: _ISO_
2594 pub const GITN: BoxCode = BoxCode::new(*b"gitn");
2595 /// Media genre
2596 ///
2597 /// FourCC: `gnre`
2598 ///
2599 /// Specification: _3GPP_
2600 pub const GNRE: BoxCode = BoxCode::new(*b"gnre");
2601 /// OMA DRM Group ID
2602 ///
2603 /// FourCC: `grpi`
2604 ///
2605 /// Specification: _OMA DRM 2.0_
2606 pub const GRPI: BoxCode = BoxCode::new(*b"grpi");
2607 /// Groups list box
2608 ///
2609 /// FourCC: `grpl`
2610 ///
2611 /// Specification: _ISO_
2612 pub const GRPL: BoxCode = BoxCode::new(*b"grpl");
2613 /// handler, declares the media (handler) type
2614 ///
2615 /// FourCC: `hdlr`
2616 ///
2617 /// Specification: _ISO_
2618 pub const HDLR: BoxCode = BoxCode::new(*b"hdlr");
2619 /// hint information
2620 ///
2621 /// FourCC: `hinf`
2622 ///
2623 /// Specification: _ISO_
2624 pub const HINF: BoxCode = BoxCode::new(*b"hinf");
2625 /// hint media header, overall information (hint track only)
2626 ///
2627 /// FourCC: `hmhd`
2628 ///
2629 /// Specification: _ISO_
2630 pub const HMHD: BoxCode = BoxCode::new(*b"hmhd");
2631 /// Hint information
2632 ///
2633 /// FourCC: `hnti`
2634 ///
2635 /// Specification: _ISO_
2636 pub const HNTI: BoxCode = BoxCode::new(*b"hnti");
2637 /// Hipix Rich Picture (user-data or meta-data)
2638 ///
2639 /// FourCC: `hpix`
2640 ///
2641 /// Specification: _Hipix_
2642 pub const HPIX: BoxCode = BoxCode::new(*b"hpix");
2643 /// HEVC Configuration
2644 ///
2645 /// FourCC: `hvcC`
2646 ///
2647 /// Specification: _NALu Video_
2648 ///
2649 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2650 pub const HVCC: BoxCode = BoxCode::new(*b"hvcC");
2651 /// HEVC Tile Configuration
2652 ///
2653 /// FourCC: `hvtC`
2654 ///
2655 /// Specification: _NALu Video_
2656 ///
2657 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2658 pub const HVTC: BoxCode = BoxCode::new(*b"hvtC");
2659 /// Intrinsic camera parameters
2660 ///
2661 /// FourCC: `icam`
2662 ///
2663 /// Specification: _NALu Video_
2664 ///
2665 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2666 pub const ICAM: BoxCode = BoxCode::new(*b"icam");
2667 /// OMA DRM Icon URI
2668 ///
2669 /// FourCC: `icnu`
2670 ///
2671 /// Specification: _OMA DRM 2.0_
2672 pub const ICNU: BoxCode = BoxCode::new(*b"icnu");
2673 /// Item data
2674 ///
2675 /// FourCC: `idat`
2676 ///
2677 /// Specification: _ISO_
2678 pub const IDAT: BoxCode = BoxCode::new(*b"idat");
2679 /// Image Header
2680 ///
2681 /// FourCC: `ihdr`
2682 ///
2683 /// Specification: _JPEG2000_
2684 pub const IHDR: BoxCode = BoxCode::new(*b"ihdr");
2685 /// item information
2686 ///
2687 /// FourCC: `iinf`
2688 ///
2689 /// Specification: _ISO_
2690 pub const IINF: BoxCode = BoxCode::new(*b"iinf");
2691 /// item location
2692 ///
2693 /// FourCC: `iloc`
2694 ///
2695 /// Specification: _ISO_
2696 pub const ILOC: BoxCode = BoxCode::new(*b"iloc");
2697 /// Track input map definition
2698 ///
2699 /// FourCC: `imap`
2700 ///
2701 /// Specification: _QT_
2702 pub const IMAP: BoxCode = BoxCode::new(*b"imap");
2703 /// Identified media data
2704 ///
2705 /// FourCC: `imda`
2706 ///
2707 /// Specification: _ISO_
2708 pub const IMDA: BoxCode = BoxCode::new(*b"imda");
2709 /// IPMP Information box
2710 ///
2711 /// FourCC: `imif`
2712 ///
2713 /// Specification: _ISO_
2714 pub const IMIF: BoxCode = BoxCode::new(*b"imif");
2715 /// Item information entry
2716 ///
2717 /// FourCC: `infe`
2718 ///
2719 /// Specification: _ISO_
2720 pub const INFE: BoxCode = BoxCode::new(*b"infe");
2721 /// OMA DRM Info URL
2722 ///
2723 /// FourCC: `infu`
2724 ///
2725 /// Specification: _OMA DRM 2.0_
2726 pub const INFU: BoxCode = BoxCode::new(*b"infu");
2727 /// Object Descriptor container box
2728 ///
2729 /// FourCC: `iods`
2730 ///
2731 /// Specification: _MP4v2_
2732 pub const IODS: BoxCode = BoxCode::new(*b"iods");
2733 /// ItemPropertyContainerBox
2734 ///
2735 /// FourCC: `ipco`
2736 ///
2737 /// Specification: _ISO_
2738 pub const IPCO: BoxCode = BoxCode::new(*b"ipco");
2739 /// reserved for IPMP Stream header
2740 ///
2741 /// FourCC: `iphd`
2742 ///
2743 /// Specification: _MP4v2_
2744 pub const IPHD: BoxCode = BoxCode::new(*b"iphd");
2745 /// ItemPropertyAssociation
2746 ///
2747 /// FourCC: `ipma`
2748 ///
2749 /// Specification: _ISO_
2750 pub const IPMA: BoxCode = BoxCode::new(*b"ipma");
2751 /// IPMP Control Box
2752 ///
2753 /// FourCC: `ipmc`
2754 ///
2755 /// Specification: _ISO_
2756 pub const IPMC: BoxCode = BoxCode::new(*b"ipmc");
2757 /// item protection
2758 ///
2759 /// FourCC: `ipro`
2760 ///
2761 /// Specification: _ISO_
2762 pub const IPRO: BoxCode = BoxCode::new(*b"ipro");
2763 /// Item Properties Box
2764 ///
2765 /// FourCC: `iprp`
2766 ///
2767 /// Specification: _ISO_
2768 pub const IPRP: BoxCode = BoxCode::new(*b"iprp");
2769 /// Item reference
2770 ///
2771 /// FourCC: `iref`
2772 ///
2773 /// Specification: _ISO_
2774 pub const IREF: BoxCode = BoxCode::new(*b"iref");
2775 /// SVC region of interest box
2776 ///
2777 /// FourCC: `iroi`
2778 ///
2779 /// Specification: _NALu Video_
2780 pub const IROI: BoxCode = BoxCode::new(*b"iroi");
2781 /// JPEG 2000 header info
2782 ///
2783 /// FourCC: `j2kH`
2784 ///
2785 /// Specification: _J2KHEIF_
2786 pub const J2KH: BoxCode = BoxCode::new(*b"j2kH");
2787 /// JPEG 2000 prefix
2788 ///
2789 /// FourCC: `j2kP`
2790 ///
2791 /// Specification: _J2KHEIF_
2792 pub const J2KP: BoxCode = BoxCode::new(*b"j2kP");
2793 /// JPEG 2000 Signature
2794 ///
2795 /// FourCC: `jP `
2796 ///
2797 /// Specification: _JPEG2000_
2798 pub const JP: BoxCode = BoxCode::new(*b"jP ");
2799 /// JPEG bitstream reconstruction data
2800 ///
2801 /// FourCC: `jbrd`
2802 ///
2803 /// Specification: _JPEG XL_
2804 pub const JBRD: BoxCode = BoxCode::new(*b"jbrd");
2805 /// JPEG 2000 contiguous codestream
2806 ///
2807 /// FourCC: `jp2c`
2808 ///
2809 /// Specification: _JPEG2000_
2810 pub const JP2C: BoxCode = BoxCode::new(*b"jp2c");
2811 /// Header
2812 ///
2813 /// FourCC: `jp2h`
2814 ///
2815 /// Specification: _JPEG2000_
2816 pub const JP2H: BoxCode = BoxCode::new(*b"jp2h");
2817 /// intellectual property information
2818 ///
2819 /// FourCC: `jp2i`
2820 ///
2821 /// Specification: _JPEG2000_
2822 pub const JP2I: BoxCode = BoxCode::new(*b"jp2i");
2823 /// JPEG Configuration
2824 ///
2825 /// FourCC: `jpgC`
2826 ///
2827 /// Specification: _HEIF_
2828 ///
2829 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2830 pub const JPGC: BoxCode = BoxCode::new(*b"jpgC");
2831 /// JPEG XS Video Transport Parameter
2832 ///
2833 /// FourCC: `jptp`
2834 ///
2835 /// Specification: _JPXS_
2836 pub const JPTP: BoxCode = BoxCode::new(*b"jptp");
2837 /// JPEG XS Video Information
2838 ///
2839 /// FourCC: `jpvi`
2840 ///
2841 /// Specification: _JPXS_
2842 pub const JPVI: BoxCode = BoxCode::new(*b"jpvi");
2843 /// JPEG XS Video Support
2844 ///
2845 /// FourCC: `jpvs`
2846 ///
2847 /// Specification: _JPXS_
2848 pub const JPVS: BoxCode = BoxCode::new(*b"jpvs");
2849 /// JPEG Universal Metadata Box Format (JUMBF)
2850 ///
2851 /// FourCC: `jumb`
2852 ///
2853 /// Specification: _JPEG Systems_
2854 pub const JUMB: BoxCode = BoxCode::new(*b"jumb");
2855 /// JPEG XL Codestream
2856 ///
2857 /// FourCC: `jxlc`
2858 ///
2859 /// Specification: _JPEG XL_
2860 pub const JXLC: BoxCode = BoxCode::new(*b"jxlc");
2861 /// JPEG XL Frame Index
2862 ///
2863 /// FourCC: `jxli`
2864 ///
2865 /// Specification: _JPEG XL_
2866 pub const JXLI: BoxCode = BoxCode::new(*b"jxli");
2867 /// JPEG XL Level
2868 ///
2869 /// FourCC: `jxll`
2870 ///
2871 /// Specification: _JPEG XL_
2872 pub const JXLL: BoxCode = BoxCode::new(*b"jxll");
2873 /// JPEG XL Partial Codestream
2874 ///
2875 /// FourCC: `jxlp`
2876 ///
2877 /// Specification: _JPEG XL_
2878 pub const JXLP: BoxCode = BoxCode::new(*b"jxlp");
2879 /// JPEG XS Profile and Level
2880 ///
2881 /// FourCC: `jxpl`
2882 ///
2883 /// Specification: _JPXS_
2884 pub const JXPL: BoxCode = BoxCode::new(*b"jxpl");
2885 /// Track kind
2886 ///
2887 /// FourCC: `kind`
2888 ///
2889 /// Specification: _ISO_
2890 pub const KIND: BoxCode = BoxCode::new(*b"kind");
2891 /// Compressed visual track matte
2892 ///
2893 /// FourCC: `kmat`
2894 ///
2895 /// Specification: _QT_
2896 pub const KMAT: BoxCode = BoxCode::new(*b"kmat");
2897 /// Media keywords
2898 ///
2899 /// FourCC: `kywd`
2900 ///
2901 /// Specification: _3GPP_
2902 pub const KYWD: BoxCode = BoxCode::new(*b"kywd");
2903 /// Label box
2904 ///
2905 /// FourCC: `labl`
2906 ///
2907 /// Specification: _ISO_
2908 pub const LABL: BoxCode = BoxCode::new(*b"labl");
2909 /// Tier dependency box
2910 ///
2911 /// FourCC: `ldep`
2912 ///
2913 /// Specification: _NALu Video_
2914 pub const LDEP: BoxCode = BoxCode::new(*b"ldep");
2915 /// Loudness equalization instructions
2916 ///
2917 /// FourCC: `leqi`
2918 ///
2919 /// Specification: _DRC_
2920 ///
2921 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2922 pub const LEQI: BoxCode = BoxCode::new(*b"leqi");
2923 /// Leval assignment
2924 ///
2925 /// FourCC: `leva`
2926 ///
2927 /// Specification: _ISO_
2928 pub const LEVA: BoxCode = BoxCode::new(*b"leva");
2929 /// Layered HEVC Configuration
2930 ///
2931 /// FourCC: `lhvC`
2932 ///
2933 /// Specification: _NALu Video_
2934 ///
2935 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2936 pub const LHVC: BoxCode = BoxCode::new(*b"lhvC");
2937 /// Track pre-load definitions
2938 ///
2939 /// FourCC: `load`
2940 ///
2941 /// Specification: _QT_
2942 pub const LOAD: BoxCode = BoxCode::new(*b"load");
2943 /// Media location information
2944 ///
2945 /// FourCC: `loci`
2946 ///
2947 /// Specification: _3GPP_
2948 pub const LOCI: BoxCode = BoxCode::new(*b"loci");
2949 /// Looping behavior
2950 ///
2951 /// FourCC: `loop`
2952 ///
2953 /// Specification: _WhatsApp_
2954 pub const LOOP: BoxCode = BoxCode::new(*b"loop");
2955 /// OMA DRM Lyrics URI
2956 ///
2957 /// FourCC: `lrcu`
2958 ///
2959 /// Specification: _OMA DRM 2.1_
2960 pub const LRCU: BoxCode = BoxCode::new(*b"lrcu");
2961 /// Track loudness container
2962 ///
2963 /// FourCC: `ludt`
2964 ///
2965 /// Specification: _ISO_
2966 pub const LUDT: BoxCode = BoxCode::new(*b"ludt");
2967 /// LCEVC configuration
2968 ///
2969 /// FourCC: `lvcC`
2970 ///
2971 /// Specification: _NALu Video_
2972 ///
2973 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2974 pub const LVCC: BoxCode = BoxCode::new(*b"lvcC");
2975 /// MPEG-4 descriptors
2976 ///
2977 /// FourCC: `m4ds`
2978 ///
2979 /// Specification: _NALu Video_
2980 ///
2981 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2982 pub const M4DS: BoxCode = BoxCode::new(*b"m4ds");
2983 /// reserved for MPEG7Stream header
2984 ///
2985 /// FourCC: `m7hd`
2986 ///
2987 /// Specification: _MP4v2_
2988 pub const M7HD: BoxCode = BoxCode::new(*b"m7hd");
2989 /// MPEG-H Audio scene information
2990 ///
2991 /// FourCC: `maeI`
2992 ///
2993 /// Specification: _MPEG-H_
2994 ///
2995 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
2996 pub const MAEI: BoxCode = BoxCode::new(*b"maeI");
2997 /// MPEG-H Audio multi-stream signalling
2998 ///
2999 /// FourCC: `maeM`
3000 ///
3001 /// Specification: _MPEG-H_
3002 ///
3003 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3004 pub const MAEM: BoxCode = BoxCode::new(*b"maeM");
3005 /// Manufacturer name of the camera
3006 ///
3007 /// FourCC: `manu`
3008 ///
3009 /// Specification: _Apple_
3010 pub const MANU: BoxCode = BoxCode::new(*b"manu");
3011 /// Visual track matte for compositing
3012 ///
3013 /// FourCC: `matt`
3014 ///
3015 /// Specification: _QT_
3016 pub const MATT: BoxCode = BoxCode::new(*b"matt");
3017 /// MD5IntegrityBox
3018 ///
3019 /// FourCC: `md5i`
3020 ///
3021 /// Specification: _HEIF_
3022 pub const MD5I: BoxCode = BoxCode::new(*b"md5i");
3023 /// media data container
3024 ///
3025 /// FourCC: `mdat`
3026 ///
3027 /// Specification: _ISO_
3028 pub const MDAT: BoxCode = BoxCode::new(*b"mdat");
3029 /// mastering display colour volume
3030 ///
3031 /// FourCC: `mdcv`
3032 ///
3033 /// Specification: _ISO_
3034 ///
3035 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3036 pub const MDCV: BoxCode = BoxCode::new(*b"mdcv");
3037 /// media header, overall information about the media
3038 ///
3039 /// FourCC: `mdhd`
3040 ///
3041 /// Specification: _ISO_
3042 pub const MDHD: BoxCode = BoxCode::new(*b"mdhd");
3043 /// container for the media information in a track
3044 ///
3045 /// FourCC: `mdia`
3046 ///
3047 /// Specification: _ISO_
3048 pub const MDIA: BoxCode = BoxCode::new(*b"mdia");
3049 /// Mutable DRM information
3050 ///
3051 /// FourCC: `mdri`
3052 ///
3053 /// Specification: _OMA DRM 2.0_
3054 pub const MDRI: BoxCode = BoxCode::new(*b"mdri");
3055 /// additional metadata container
3056 ///
3057 /// FourCC: `meco`
3058 ///
3059 /// Specification: _ISO_
3060 pub const MECO: BoxCode = BoxCode::new(*b"meco");
3061 /// movie extends header box
3062 ///
3063 /// FourCC: `mehd`
3064 ///
3065 /// Specification: _ISO_
3066 pub const MEHD: BoxCode = BoxCode::new(*b"mehd");
3067 /// media offset
3068 ///
3069 /// FourCC: `meof`
3070 ///
3071 /// Specification: _OMAF_
3072 pub const MEOF: BoxCode = BoxCode::new(*b"meof");
3073 /// metabox relation
3074 ///
3075 /// FourCC: `mere`
3076 ///
3077 /// Specification: _ISO_
3078 pub const MERE: BoxCode = BoxCode::new(*b"mere");
3079 /// mesh box
3080 ///
3081 /// FourCC: `mesh`
3082 ///
3083 /// Specification: _OMAF_
3084 pub const MESH: BoxCode = BoxCode::new(*b"mesh");
3085 /// Metadata container
3086 ///
3087 /// FourCC: `meta`
3088 ///
3089 /// Specification: _ISO_
3090 pub const META: BoxCode = BoxCode::new(*b"meta");
3091 /// movie fragment header
3092 ///
3093 /// FourCC: `mfhd`
3094 ///
3095 /// Specification: _ISO_
3096 pub const MFHD: BoxCode = BoxCode::new(*b"mfhd");
3097 /// Movie fragment random access
3098 ///
3099 /// FourCC: `mfra`
3100 ///
3101 /// Specification: _ISO_
3102 pub const MFRA: BoxCode = BoxCode::new(*b"mfra");
3103 /// Movie fragment random access offset
3104 ///
3105 /// FourCC: `mfro`
3106 ///
3107 /// Specification: _ISO_
3108 pub const MFRO: BoxCode = BoxCode::new(*b"mfro");
3109 /// MPEG-H Audio Decoder Configuration
3110 ///
3111 /// FourCC: `mhaC`
3112 ///
3113 /// Specification: _MPEG-H_
3114 ///
3115 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3116 pub const MHAC: BoxCode = BoxCode::new(*b"mhaC");
3117 /// MPEG-H Audio dynamic range control and loudness
3118 ///
3119 /// FourCC: `mhaD`
3120 ///
3121 /// Specification: _MPEG-H_
3122 ///
3123 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3124 pub const MHAD: BoxCode = BoxCode::new(*b"mhaD");
3125 /// MPEG-H Audio profile and level compatibility set
3126 ///
3127 /// FourCC: `mhaP`
3128 ///
3129 /// Specification: _MPEG-H_
3130 ///
3131 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3132 pub const MHAP: BoxCode = BoxCode::new(*b"mhaP");
3133 /// media information container
3134 ///
3135 /// FourCC: `minf`
3136 ///
3137 /// Specification: _ISO_
3138 pub const MINF: BoxCode = BoxCode::new(*b"minf");
3139 /// The MinimizedImageBox provides a more compact representation of the MetaBox for a subset of use cases
3140 ///
3141 /// FourCC: `mini`
3142 ///
3143 /// Specification: _HEIF_
3144 pub const MINI: BoxCode = BoxCode::new(*b"mini");
3145 /// reserved for MPEG-J Stream header
3146 ///
3147 /// FourCC: `mjhd`
3148 ///
3149 /// Specification: _MP4v2_
3150 pub const MJHD: BoxCode = BoxCode::new(*b"mjhd");
3151 /// multimap video
3152 ///
3153 /// FourCC: `mmvi`
3154 ///
3155 /// Specification: _V3C-SYS_
3156 pub const MMVI: BoxCode = BoxCode::new(*b"mmvi");
3157 /// Model name of the camera
3158 ///
3159 /// FourCC: `modl`
3160 ///
3161 /// Specification: _Apple_
3162 pub const MODL: BoxCode = BoxCode::new(*b"modl");
3163 /// movie fragment
3164 ///
3165 /// FourCC: `moof`
3166 ///
3167 /// Specification: _ISO_
3168 pub const MOOF: BoxCode = BoxCode::new(*b"moof");
3169 /// container for all the meta-data
3170 ///
3171 /// FourCC: `moov`
3172 ///
3173 /// Specification: _ISO_
3174 pub const MOOV: BoxCode = BoxCode::new(*b"moov");
3175 /// mesh omnidirectional video
3176 ///
3177 /// FourCC: `movd`
3178 ///
3179 /// Specification: _OMAF_
3180 pub const MOVD: BoxCode = BoxCode::new(*b"movd");
3181 /// MVC sub track view box
3182 ///
3183 /// FourCC: `mstv`
3184 ///
3185 /// Specification: _NALu Video_
3186 pub const MSTV: BoxCode = BoxCode::new(*b"mstv");
3187 /// MVC configuration
3188 ///
3189 /// FourCC: `mvcC`
3190 ///
3191 /// Specification: _NALu Video_
3192 ///
3193 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3194 pub const MVCC: BoxCode = BoxCode::new(*b"mvcC");
3195 /// MVC priority assignment
3196 ///
3197 /// FourCC: `mvcP`
3198 ///
3199 /// Specification: _NALu Video_
3200 ///
3201 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3202 pub const MVCP: BoxCode = BoxCode::new(*b"mvcP");
3203 /// Multiview group
3204 ///
3205 /// FourCC: `mvcg`
3206 ///
3207 /// Specification: _NALu Video_
3208 pub const MVCG: BoxCode = BoxCode::new(*b"mvcg");
3209 /// Multiview Information
3210 ///
3211 /// FourCC: `mvci`
3212 ///
3213 /// Specification: _NALu Video_
3214 pub const MVCI: BoxCode = BoxCode::new(*b"mvci");
3215 /// MVCDConfigurationBox
3216 ///
3217 /// FourCC: `mvdC`
3218 ///
3219 /// Specification: _NALu Video_
3220 ///
3221 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3222 pub const MVDC: BoxCode = BoxCode::new(*b"mvdC");
3223 /// movie extends box
3224 ///
3225 /// FourCC: `mvex`
3226 ///
3227 /// Specification: _ISO_
3228 pub const MVEX: BoxCode = BoxCode::new(*b"mvex");
3229 /// movie header, overall declarations
3230 ///
3231 /// FourCC: `mvhd`
3232 ///
3233 /// Specification: _ISO_
3234 pub const MVHD: BoxCode = BoxCode::new(*b"mvhd");
3235 /// Multiview Relation Attribute
3236 ///
3237 /// FourCC: `mvra`
3238 ///
3239 /// Specification: _NALu Video_
3240 pub const MVRA: BoxCode = BoxCode::new(*b"mvra");
3241 /// Null media header, overall information (some tracks only)
3242 ///
3243 /// FourCC: `nmhd`
3244 ///
3245 /// Specification: _ISO_
3246 pub const NMHD: BoxCode = BoxCode::new(*b"nmhd");
3247 /// reserved for ObjectContentInfoStream header
3248 ///
3249 /// FourCC: `ochd`
3250 ///
3251 /// Specification: _MP4v2_
3252 pub const OCHD: BoxCode = BoxCode::new(*b"ochd");
3253 /// OMA DRM Access Unit Format
3254 ///
3255 /// FourCC: `odaf`
3256 ///
3257 /// Specification: _OMA DRM 2.0_
3258 pub const ODAF: BoxCode = BoxCode::new(*b"odaf");
3259 /// OMA DRM Content Object
3260 ///
3261 /// FourCC: `odda`
3262 ///
3263 /// Specification: _OMA DRM 2.0_
3264 pub const ODDA: BoxCode = BoxCode::new(*b"odda");
3265 /// reserved for ObjectDescriptorStream header
3266 ///
3267 /// FourCC: `odhd`
3268 ///
3269 /// Specification: _MP4v2_
3270 pub const ODHD: BoxCode = BoxCode::new(*b"odhd");
3271 /// OMA DRM Discrete Media Headers
3272 ///
3273 /// FourCC: `odhe`
3274 ///
3275 /// Specification: _OMA DRM 2.0_
3276 pub const ODHE: BoxCode = BoxCode::new(*b"odhe");
3277 /// OMA DRM Rights Object
3278 ///
3279 /// FourCC: `odrb`
3280 ///
3281 /// Specification: _OMA DRM 2.0_
3282 pub const ODRB: BoxCode = BoxCode::new(*b"odrb");
3283 /// OMA DRM Container
3284 ///
3285 /// FourCC: `odrm`
3286 ///
3287 /// Specification: _OMA DRM 2.0_
3288 pub const ODRM: BoxCode = BoxCode::new(*b"odrm");
3289 /// OMA DRM Transaction Tracking
3290 ///
3291 /// FourCC: `odtt`
3292 ///
3293 /// Specification: _OMA DRM 2.0_
3294 pub const ODTT: BoxCode = BoxCode::new(*b"odtt");
3295 /// OMA DRM Common headers
3296 ///
3297 /// FourCC: `ohdr`
3298 ///
3299 /// Specification: _OMA DRM 2.0_
3300 pub const OHDR: BoxCode = BoxCode::new(*b"ohdr");
3301 /// Orientation information
3302 ///
3303 /// FourCC: `orie`
3304 ///
3305 /// Specification: _3GPP_
3306 pub const ORIE: BoxCode = BoxCode::new(*b"orie");
3307 /// OMAF timed text configuration
3308 ///
3309 /// FourCC: `otcf`
3310 ///
3311 /// Specification: _OMAF_
3312 pub const OTCF: BoxCode = BoxCode::new(*b"otcf");
3313 /// Original file type
3314 ///
3315 /// FourCC: `otyp`
3316 ///
3317 /// Specification: _ISO_
3318 pub const OTYP: BoxCode = BoxCode::new(*b"otyp");
3319 /// overlay configuration
3320 ///
3321 /// FourCC: `ovly`
3322 ///
3323 /// Specification: _OMAF_
3324 pub const OVLY: BoxCode = BoxCode::new(*b"ovly");
3325 /// sample padding bits
3326 ///
3327 /// FourCC: `padb`
3328 ///
3329 /// Specification: _ISO_
3330 pub const PADB: BoxCode = BoxCode::new(*b"padb");
3331 /// Partition Entry
3332 ///
3333 /// FourCC: `paen`
3334 ///
3335 /// Specification: _ISO_
3336 pub const PAEN: BoxCode = BoxCode::new(*b"paen");
3337 /// Pixel aspect ratio
3338 ///
3339 /// FourCC: `pasp`
3340 ///
3341 /// Specification: _ISO_
3342 ///
3343 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3344 pub const PASP: BoxCode = BoxCode::new(*b"pasp");
3345 /// palette which maps a single component in index space to a multiple- component image
3346 ///
3347 /// FourCC: `pclr`
3348 ///
3349 /// Specification: _JPEG2000_
3350 pub const PCLR: BoxCode = BoxCode::new(*b"pclr");
3351 /// Uncompressed audio PCM configuration
3352 ///
3353 /// FourCC: `pcmC`
3354 ///
3355 /// Specification: _ISO-UNCA_
3356 ///
3357 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3358 pub const PCMC: BoxCode = BoxCode::new(*b"pcmC");
3359 /// Partial Data
3360 ///
3361 /// FourCC: `pdat`
3362 ///
3363 /// Specification: _ISO-Partial_
3364 pub const PDAT: BoxCode = BoxCode::new(*b"pdat");
3365 /// Parametric DRC coefficients
3366 ///
3367 /// FourCC: `pdc1`
3368 ///
3369 /// Specification: _DRC_
3370 ///
3371 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3372 pub const PDC1: BoxCode = BoxCode::new(*b"pdc1");
3373 /// Parametric DRC instructions
3374 ///
3375 /// FourCC: `pdi1`
3376 ///
3377 /// Specification: _DRC_
3378 ///
3379 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3380 pub const PDI1: BoxCode = BoxCode::new(*b"pdi1");
3381 /// Progressive download information
3382 ///
3383 /// FourCC: `pdin`
3384 ///
3385 /// Specification: _ISO_
3386 pub const PDIN: BoxCode = BoxCode::new(*b"pdin");
3387 /// Media performer name
3388 ///
3389 /// FourCC: `perf`
3390 ///
3391 /// Specification: _3GPP_
3392 pub const PERF: BoxCode = BoxCode::new(*b"perf");
3393 /// Partial File Header
3394 ///
3395 /// FourCC: `pfhd`
3396 ///
3397 /// Specification: _ISO-Partial_
3398 pub const PFHD: BoxCode = BoxCode::new(*b"pfhd");
3399 /// Partial File
3400 ///
3401 /// FourCC: `pfil`
3402 ///
3403 /// Specification: _ISO-Partial_
3404 pub const PFIL: BoxCode = BoxCode::new(*b"pfil");
3405 /// primary item reference
3406 ///
3407 /// FourCC: `pitm`
3408 ///
3409 /// Specification: _ISO_
3410 pub const PITM: BoxCode = BoxCode::new(*b"pitm");
3411 /// Partial Segment Location
3412 ///
3413 /// FourCC: `ploc`
3414 ///
3415 /// Specification: _ISO-Partial_
3416 pub const PLOC: BoxCode = BoxCode::new(*b"ploc");
3417 /// Preview container
3418 ///
3419 /// FourCC: `pnot`
3420 ///
3421 /// Specification: _QT_
3422 pub const PNOT: BoxCode = BoxCode::new(*b"pnot");
3423 /// projected omnidirectional video
3424 ///
3425 /// FourCC: `povd`
3426 ///
3427 /// Specification: _OMAF_
3428 pub const POVD: BoxCode = BoxCode::new(*b"povd");
3429 /// projection format
3430 ///
3431 /// FourCC: `prfr`
3432 ///
3433 /// Specification: _OMAF_
3434 pub const PRFR: BoxCode = BoxCode::new(*b"prfr");
3435 /// Producer reference time
3436 ///
3437 /// FourCC: `prft`
3438 ///
3439 /// Specification: _ISO_
3440 pub const PRFT: BoxCode = BoxCode::new(*b"prft");
3441 /// Production metadata box
3442 ///
3443 /// FourCC: `prmd`
3444 ///
3445 /// Specification: _Youtube_
3446 pub const PRMD: BoxCode = BoxCode::new(*b"prmd");
3447 /// Production metadata reference box
3448 ///
3449 /// FourCC: `prmr`
3450 ///
3451 /// Specification: _Youtube_
3452 ///
3453 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3454 pub const PRMR: BoxCode = BoxCode::new(*b"prmr");
3455 /// Partial Segment
3456 ///
3457 /// FourCC: `pseg`
3458 ///
3459 /// Specification: _ISO-Partial_
3460 pub const PSEG: BoxCode = BoxCode::new(*b"pseg");
3461 /// Partial Segment Header
3462 ///
3463 /// FourCC: `pshd`
3464 ///
3465 /// Specification: _ISO-Partial_
3466 pub const PSHD: BoxCode = BoxCode::new(*b"pshd");
3467 /// Protection system specific header
3468 ///
3469 /// FourCC: `pssh`
3470 ///
3471 /// Specification: _ISO Common Encryption_
3472 pub const PSSH: BoxCode = BoxCode::new(*b"pssh");
3473 /// Partial Top Level Entry
3474 ///
3475 /// FourCC: `ptle`
3476 ///
3477 /// Specification: _ISO-Partial_
3478 pub const PTLE: BoxCode = BoxCode::new(*b"ptle");
3479 /// Layer quality assignments
3480 ///
3481 /// FourCC: `qlif`
3482 ///
3483 /// Specification: _NALu Video_
3484 ///
3485 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3486 pub const QLIF: BoxCode = BoxCode::new(*b"qlif");
3487 /// Name of the tape reel
3488 ///
3489 /// FourCC: `reel`
3490 ///
3491 /// Specification: _Apple_
3492 pub const REEL: BoxCode = BoxCode::new(*b"reel");
3493 /// grid resolution
3494 ///
3495 /// FourCC: `res `
3496 ///
3497 /// Specification: _JPEG2000_
3498 pub const RES: BoxCode = BoxCode::new(*b"res ");
3499 /// grid resolution at which the image was captured
3500 ///
3501 /// FourCC: `resc`
3502 ///
3503 /// Specification: _JPEG2000_
3504 pub const RESC: BoxCode = BoxCode::new(*b"resc");
3505 /// default grid resolution at which the image should be displayed
3506 ///
3507 /// FourCC: `resd`
3508 ///
3509 /// Specification: _JPEG2000_
3510 pub const RESD: BoxCode = BoxCode::new(*b"resd");
3511 /// restricted scheme information box
3512 ///
3513 /// FourCC: `rinf`
3514 ///
3515 /// Specification: _ISO_
3516 pub const RINF: BoxCode = BoxCode::new(*b"rinf");
3517 /// sphere region configuration
3518 ///
3519 /// FourCC: `rosc`
3520 ///
3521 /// Specification: _OMAF_
3522 pub const ROSC: BoxCode = BoxCode::new(*b"rosc");
3523 /// rotation box
3524 ///
3525 /// FourCC: `rotn`
3526 ///
3527 /// Specification: _OMAF_
3528 pub const ROTN: BoxCode = BoxCode::new(*b"rotn");
3529 /// SVC rect region box
3530 ///
3531 /// FourCC: `rrgn`
3532 ///
3533 /// Specification: _NALu Video_
3534 pub const RRGN: BoxCode = BoxCode::new(*b"rrgn");
3535 /// Redundant Sample Original Timing
3536 ///
3537 /// FourCC: `rsot`
3538 ///
3539 /// Specification: _ISO_
3540 pub const RSOT: BoxCode = BoxCode::new(*b"rsot");
3541 /// Media rating
3542 ///
3543 /// FourCC: `rtng`
3544 ///
3545 /// Specification: _3GPP_
3546 pub const RTNG: BoxCode = BoxCode::new(*b"rtng");
3547 /// recommended viewport information
3548 ///
3549 /// FourCC: `rvif`
3550 ///
3551 /// Specification: _OMAF_
3552 pub const RVIF: BoxCode = BoxCode::new(*b"rvif");
3553 /// region-wise packing
3554 ///
3555 /// FourCC: `rwpk`
3556 ///
3557 /// Specification: _OMAF_
3558 pub const RWPK: BoxCode = BoxCode::new(*b"rwpk");
3559 /// Sample auxiliary information offsets
3560 ///
3561 /// FourCC: `saio`
3562 ///
3563 /// Specification: _ISO_
3564 pub const SAIO: BoxCode = BoxCode::new(*b"saio");
3565 /// Sample auxiliary information sizes
3566 ///
3567 /// FourCC: `saiz`
3568 ///
3569 /// Specification: _ISO_
3570 pub const SAIZ: BoxCode = BoxCode::new(*b"saiz");
3571 /// Sample to Group box
3572 ///
3573 /// FourCC: `sbgp`
3574 ///
3575 /// Specification: _ISO_
3576 pub const SBGP: BoxCode = BoxCode::new(*b"sbgp");
3577 /// Sensor Bad Pixels Map
3578 ///
3579 /// FourCC: `sbpm`
3580 ///
3581 /// Specification: _UNCV_
3582 ///
3583 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3584 pub const SBPM: BoxCode = BoxCode::new(*b"sbpm");
3585 /// Name of the scene for which the clip was shot
3586 ///
3587 /// FourCC: `scen`
3588 ///
3589 /// Specification: _Apple_
3590 pub const SCEN: BoxCode = BoxCode::new(*b"scen");
3591 /// scheme information box
3592 ///
3593 /// FourCC: `schi`
3594 ///
3595 /// Specification: _ISO_
3596 pub const SCHI: BoxCode = BoxCode::new(*b"schi");
3597 /// scheme type box
3598 ///
3599 /// FourCC: `schm`
3600 ///
3601 /// Specification: _ISO_
3602 pub const SCHM: BoxCode = BoxCode::new(*b"schm");
3603 /// Scramble scheme information
3604 ///
3605 /// FourCC: `scrb`
3606 ///
3607 /// Specification: _ISO_
3608 ///
3609 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3610 pub const SCRB: BoxCode = BoxCode::new(*b"scrb");
3611 /// Sample dependency
3612 ///
3613 /// FourCC: `sdep`
3614 ///
3615 /// Specification: _NALu Video_
3616 pub const SDEP: BoxCode = BoxCode::new(*b"sdep");
3617 /// reserved for SceneDescriptionStream header
3618 ///
3619 /// FourCC: `sdhd`
3620 ///
3621 /// Specification: _MP4v2_
3622 pub const SDHD: BoxCode = BoxCode::new(*b"sdhd");
3623 /// SDP information
3624 ///
3625 /// FourCC: `sdp `
3626 ///
3627 /// Specification: _ISO_
3628 pub const SDP: BoxCode = BoxCode::new(*b"sdp ");
3629 /// Independent and Disposable Samples Box
3630 ///
3631 /// FourCC: `sdtp`
3632 ///
3633 /// Specification: _ISO_
3634 pub const SDTP: BoxCode = BoxCode::new(*b"sdtp");
3635 /// SD Profile Box
3636 ///
3637 /// FourCC: `sdvp`
3638 ///
3639 /// Specification: _SDV_
3640 pub const SDVP: BoxCode = BoxCode::new(*b"sdvp");
3641 /// file delivery session group
3642 ///
3643 /// FourCC: `segr`
3644 ///
3645 /// Specification: _ISO_
3646 pub const SEGR: BoxCode = BoxCode::new(*b"segr");
3647 /// Scalability information
3648 ///
3649 /// FourCC: `seib`
3650 ///
3651 /// Specification: _NALu Video_
3652 ///
3653 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3654 pub const SEIB: BoxCode = BoxCode::new(*b"seib");
3655 /// SEI information box
3656 ///
3657 /// FourCC: `seii`
3658 ///
3659 /// Specification: _NALu Video_
3660 pub const SEII: BoxCode = BoxCode::new(*b"seii");
3661 /// Sample specific encryption data
3662 ///
3663 /// FourCC: `senc`
3664 ///
3665 /// Specification: _ISO Common Encryption_
3666 pub const SENC: BoxCode = BoxCode::new(*b"senc");
3667 /// Sample group definition box
3668 ///
3669 /// FourCC: `sgpd`
3670 ///
3671 /// Specification: _ISO_
3672 pub const SGPD: BoxCode = BoxCode::new(*b"sgpd");
3673 /// Name that identifies the shot
3674 ///
3675 /// FourCC: `shot`
3676 ///
3677 /// Specification: _Apple_
3678 pub const SHOT: BoxCode = BoxCode::new(*b"shot");
3679 /// Segment Index Box
3680 ///
3681 /// FourCC: `sidx`
3682 ///
3683 /// Specification: _ISO_
3684 pub const SIDX: BoxCode = BoxCode::new(*b"sidx");
3685 /// Scheme ID list Box
3686 ///
3687 /// FourCC: `silb`
3688 ///
3689 /// Specification: _Event Message_
3690 ///
3691 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3692 pub const SILB: BoxCode = BoxCode::new(*b"silb");
3693 /// protection scheme information box
3694 ///
3695 /// FourCC: `sinf`
3696 ///
3697 /// Specification: _ISO_
3698 pub const SINF: BoxCode = BoxCode::new(*b"sinf");
3699 /// free space
3700 ///
3701 /// FourCC: `skip`
3702 ///
3703 /// Specification: _ISO_
3704 pub const SKIP: BoxCode = BoxCode::new(*b"skip");
3705 /// Serial number of the camera
3706 ///
3707 /// FourCC: `slno`
3708 ///
3709 /// Specification: _Apple_
3710 pub const SLNO: BoxCode = BoxCode::new(*b"slno");
3711 /// sound media header, overall information (sound track only)
3712 ///
3713 /// FourCC: `smhd`
3714 ///
3715 /// Specification: _ISO_
3716 pub const SMHD: BoxCode = BoxCode::new(*b"smhd");
3717 /// Sensor Non-Uniformity Correction
3718 ///
3719 /// FourCC: `snuc`
3720 ///
3721 /// Specification: _UNCV_
3722 ///
3723 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3724 pub const SNUC: BoxCode = BoxCode::new(*b"snuc");
3725 /// Sample packing information box
3726 ///
3727 /// FourCC: `spki`
3728 ///
3729 /// Specification: _ISO_
3730 pub const SPKI: BoxCode = BoxCode::new(*b"spki");
3731 /// Polarization Pattern Definition
3732 ///
3733 /// FourCC: `splz`
3734 ///
3735 /// Specification: _UNCV_
3736 ///
3737 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3738 pub const SPLZ: BoxCode = BoxCode::new(*b"splz");
3739 /// sub-picture region
3740 ///
3741 /// FourCC: `sprg`
3742 ///
3743 /// Specification: _OMAF_
3744 pub const SPRG: BoxCode = BoxCode::new(*b"sprg");
3745 /// Sampling rate
3746 ///
3747 /// FourCC: `srat`
3748 ///
3749 /// Specification: _ISO_
3750 ///
3751 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3752 pub const SRAT: BoxCode = BoxCode::new(*b"srat");
3753 /// System Renewability Message
3754 ///
3755 /// FourCC: `srmb`
3756 ///
3757 /// Specification: _DVB_
3758 pub const SRMB: BoxCode = BoxCode::new(*b"srmb");
3759 /// System Renewability Message container
3760 ///
3761 /// FourCC: `srmc`
3762 ///
3763 /// Specification: _DVB_
3764 pub const SRMC: BoxCode = BoxCode::new(*b"srmc");
3765 /// STRP Process
3766 ///
3767 /// FourCC: `srpp`
3768 ///
3769 /// Specification: _ISO_
3770 pub const SRPP: BoxCode = BoxCode::new(*b"srpp");
3771 /// sphere region quality ranking
3772 ///
3773 /// FourCC: `srqr`
3774 ///
3775 /// Specification: _OMAF_
3776 pub const SRQR: BoxCode = BoxCode::new(*b"srqr");
3777 /// Sub-sample index
3778 ///
3779 /// FourCC: `ssix`
3780 ///
3781 /// Specification: _ISO_
3782 pub const SSIX: BoxCode = BoxCode::new(*b"ssix");
3783 /// Sub-sample Reference Table Box
3784 ///
3785 /// FourCC: `ssrt`
3786 ///
3787 /// Specification: _ISO_
3788 pub const SSRT: BoxCode = BoxCode::new(*b"ssrt");
3789 /// SVC sub track layer box
3790 ///
3791 /// FourCC: `sstl`
3792 ///
3793 /// Specification: _NALu Video_
3794 pub const SSTL: BoxCode = BoxCode::new(*b"sstl");
3795 /// sample table box, container for the time/space map
3796 ///
3797 /// FourCC: `stbl`
3798 ///
3799 /// Specification: _ISO_
3800 pub const STBL: BoxCode = BoxCode::new(*b"stbl");
3801 /// chunk offset, partial data-offset information
3802 ///
3803 /// FourCC: `stco`
3804 ///
3805 /// Specification: _ISO_
3806 pub const STCO: BoxCode = BoxCode::new(*b"stco");
3807 /// sample degradation priority
3808 ///
3809 /// FourCC: `stdp`
3810 ///
3811 /// Specification: _ISO_
3812 pub const STDP: BoxCode = BoxCode::new(*b"stdp");
3813 /// Subtitle Media Header Box
3814 ///
3815 /// FourCC: `sthd`
3816 ///
3817 /// Specification: _ISO_
3818 pub const STHD: BoxCode = BoxCode::new(*b"sthd");
3819 /// MVC sub track multiview group box
3820 ///
3821 /// FourCC: `stmg`
3822 ///
3823 /// Specification: _NALu Video_
3824 pub const STMG: BoxCode = BoxCode::new(*b"stmg");
3825 /// Sub-track definition
3826 ///
3827 /// FourCC: `strd`
3828 ///
3829 /// Specification: _ISO_
3830 pub const STRD: BoxCode = BoxCode::new(*b"strd");
3831 /// Sub-track information
3832 ///
3833 /// FourCC: `stri`
3834 ///
3835 /// Specification: _ISO_
3836 pub const STRI: BoxCode = BoxCode::new(*b"stri");
3837 /// Sub track information
3838 ///
3839 /// FourCC: `strk`
3840 ///
3841 /// Specification: _ISO_
3842 pub const STRK: BoxCode = BoxCode::new(*b"strk");
3843 /// sample-to-chunk, partial data-offset information
3844 ///
3845 /// FourCC: `stsc`
3846 ///
3847 /// Specification: _ISO_
3848 pub const STSC: BoxCode = BoxCode::new(*b"stsc");
3849 /// sample descriptions (codec types, initialization etc.)
3850 ///
3851 /// FourCC: `stsd`
3852 ///
3853 /// Specification: _ISO_
3854 pub const STSD: BoxCode = BoxCode::new(*b"stsd");
3855 /// Sub-track sample grouping
3856 ///
3857 /// FourCC: `stsg`
3858 ///
3859 /// Specification: _ISO_
3860 pub const STSG: BoxCode = BoxCode::new(*b"stsg");
3861 /// shadow sync sample table
3862 ///
3863 /// FourCC: `stsh`
3864 ///
3865 /// Specification: _ISO_
3866 pub const STSH: BoxCode = BoxCode::new(*b"stsh");
3867 /// sync sample table (random access points)
3868 ///
3869 /// FourCC: `stss`
3870 ///
3871 /// Specification: _ISO_
3872 pub const STSS: BoxCode = BoxCode::new(*b"stss");
3873 /// sample sizes (framing)
3874 ///
3875 /// FourCC: `stsz`
3876 ///
3877 /// Specification: _ISO_
3878 pub const STSZ: BoxCode = BoxCode::new(*b"stsz");
3879 /// Sub track tier box
3880 ///
3881 /// FourCC: `stti`
3882 ///
3883 /// Specification: _NALu Video_
3884 pub const STTI: BoxCode = BoxCode::new(*b"stti");
3885 /// (decoding) time-to-sample
3886 ///
3887 /// FourCC: `stts`
3888 ///
3889 /// Specification: _ISO_
3890 pub const STTS: BoxCode = BoxCode::new(*b"stts");
3891 /// Stereo Video Box
3892 ///
3893 /// FourCC: `stvi`
3894 ///
3895 /// Specification: _ISO_
3896 pub const STVI: BoxCode = BoxCode::new(*b"stvi");
3897 /// Segment Type Box
3898 ///
3899 /// FourCC: `styp`
3900 ///
3901 /// Specification: _ISO_
3902 pub const STYP: BoxCode = BoxCode::new(*b"styp");
3903 /// compact sample sizes (framing)
3904 ///
3905 /// FourCC: `stz2`
3906 ///
3907 /// Specification: _ISO_
3908 pub const STZ2: BoxCode = BoxCode::new(*b"stz2");
3909 /// Sub-sample information
3910 ///
3911 /// FourCC: `subs`
3912 ///
3913 /// Specification: _ISO_
3914 pub const SUBS: BoxCode = BoxCode::new(*b"subs");
3915 /// signer identity information
3916 ///
3917 /// FourCC: `suep`
3918 ///
3919 /// Specification: _ONVIF_
3920 pub const SUEP: BoxCode = BoxCode::new(*b"suep");
3921 /// supplemental surveillance meta information
3922 ///
3923 /// FourCC: `sumi`
3924 ///
3925 /// Specification: _MPEG-VSAF_
3926 pub const SUMI: BoxCode = BoxCode::new(*b"sumi");
3927 /// Source URL
3928 ///
3929 /// FourCC: `surl`
3930 ///
3931 /// Specification: _ISO-Partial_
3932 pub const SURL: BoxCode = BoxCode::new(*b"surl");
3933 /// SVC configuration
3934 ///
3935 /// FourCC: `svcC`
3936 ///
3937 /// Specification: _NALu Video_
3938 ///
3939 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3940 pub const SVCC: BoxCode = BoxCode::new(*b"svcC");
3941 /// SVC priority assignments
3942 ///
3943 /// FourCC: `svcP`
3944 ///
3945 /// Specification: _NALu Video_
3946 ///
3947 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3948 pub const SVCP: BoxCode = BoxCode::new(*b"svcP");
3949 /// SVC dependency range
3950 ///
3951 /// FourCC: `svdr`
3952 ///
3953 /// Specification: _NALu Video_
3954 pub const SVDR: BoxCode = BoxCode::new(*b"svdr");
3955 /// Initial parameter sets box for tiers
3956 ///
3957 /// FourCC: `svip`
3958 ///
3959 /// Specification: _NALu Video_
3960 pub const SVIP: BoxCode = BoxCode::new(*b"svip");
3961 /// SVC information configuration
3962 ///
3963 /// FourCC: `svmC`
3964 ///
3965 /// Specification: _NALu Video_
3966 ///
3967 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
3968 pub const SVMC: BoxCode = BoxCode::new(*b"svmC");
3969 /// Priority range
3970 ///
3971 /// FourCC: `svpr`
3972 ///
3973 /// Specification: _NALu Video_
3974 pub const SVPR: BoxCode = BoxCode::new(*b"svpr");
3975 /// Name and version number of the software that generated this movie
3976 ///
3977 /// FourCC: `swre`
3978 ///
3979 /// Specification: _Apple_
3980 pub const SWRE: BoxCode = BoxCode::new(*b"swre");
3981 /// Multiview Group Relation
3982 ///
3983 /// FourCC: `swtc`
3984 ///
3985 /// Specification: _NALu Video_
3986 pub const SWTC: BoxCode = BoxCode::new(*b"swtc");
3987 /// Track Encryption
3988 ///
3989 /// FourCC: `tenc`
3990 ///
3991 /// Specification: _ISO Common Encryption_
3992 pub const TENC: BoxCode = BoxCode::new(*b"tenc");
3993 /// Track fragment adjustment box
3994 ///
3995 /// FourCC: `tfad`
3996 ///
3997 /// Specification: _3GPP_
3998 pub const TFAD: BoxCode = BoxCode::new(*b"tfad");
3999 /// Track fragment decode time
4000 ///
4001 /// FourCC: `tfdt`
4002 ///
4003 /// Specification: _ISO_
4004 pub const TFDT: BoxCode = BoxCode::new(*b"tfdt");
4005 /// Track fragment header
4006 ///
4007 /// FourCC: `tfhd`
4008 ///
4009 /// Specification: _ISO_
4010 pub const TFHD: BoxCode = BoxCode::new(*b"tfhd");
4011 /// Track fragment media adjustment box
4012 ///
4013 /// FourCC: `tfma`
4014 ///
4015 /// Specification: _3GPP_
4016 pub const TFMA: BoxCode = BoxCode::new(*b"tfma");
4017 /// Track fragment radom access
4018 ///
4019 /// FourCC: `tfra`
4020 ///
4021 /// Specification: _ISO_
4022 pub const TFRA: BoxCode = BoxCode::new(*b"tfra");
4023 /// Thumbnail image of the media
4024 ///
4025 /// FourCC: `thmb`
4026 ///
4027 /// Specification: _3GPP_
4028 pub const THMB: BoxCode = BoxCode::new(*b"thmb");
4029 /// Tier Bit rate
4030 ///
4031 /// FourCC: `tibr`
4032 ///
4033 /// Specification: _NALu Video_
4034 pub const TIBR: BoxCode = BoxCode::new(*b"tibr");
4035 /// Tier Information
4036 ///
4037 /// FourCC: `tiri`
4038 ///
4039 /// Specification: _NALu Video_
4040 pub const TIRI: BoxCode = BoxCode::new(*b"tiri");
4041 /// Media title
4042 ///
4043 /// FourCC: `titl`
4044 ///
4045 /// Specification: _3GPP_
4046 pub const TITL: BoxCode = BoxCode::new(*b"titl");
4047 /// Track header, overall information about the track
4048 ///
4049 /// FourCC: `tkhd`
4050 ///
4051 /// Specification: _ISO_
4052 pub const TKHD: BoxCode = BoxCode::new(*b"tkhd");
4053 /// Track loudness base
4054 ///
4055 /// FourCC: `tlou`
4056 ///
4057 /// Specification: _ISO_
4058 pub const TLOU: BoxCode = BoxCode::new(*b"tlou");
4059 /// Track fragment
4060 ///
4061 /// FourCC: `traf`
4062 ///
4063 /// Specification: _ISO_
4064 pub const TRAF: BoxCode = BoxCode::new(*b"traf");
4065 /// container for an individual track or stream
4066 ///
4067 /// FourCC: `trak`
4068 ///
4069 /// Specification: _ISO_
4070 pub const TRAK: BoxCode = BoxCode::new(*b"trak");
4071 /// SVC lightweight transcoding
4072 ///
4073 /// FourCC: `tran`
4074 ///
4075 /// Specification: _NALu Video_
4076 pub const TRAN: BoxCode = BoxCode::new(*b"tran");
4077 /// track reference container
4078 ///
4079 /// FourCC: `tref`
4080 ///
4081 /// Specification: _ISO_
4082 pub const TREF: BoxCode = BoxCode::new(*b"tref");
4083 /// track extension properties
4084 ///
4085 /// FourCC: `trep`
4086 ///
4087 /// Specification: _ISO_
4088 pub const TREP: BoxCode = BoxCode::new(*b"trep");
4089 /// track extends defaults
4090 ///
4091 /// FourCC: `trex`
4092 ///
4093 /// Specification: _ISO_
4094 pub const TREX: BoxCode = BoxCode::new(*b"trex");
4095 /// Track grouping information
4096 ///
4097 /// FourCC: `trgr`
4098 ///
4099 /// Specification: _ISO_
4100 pub const TRGR: BoxCode = BoxCode::new(*b"trgr");
4101 /// Facilitates random access and trick play modes
4102 ///
4103 /// FourCC: `trik`
4104 ///
4105 /// Specification: _DECE_
4106 pub const TRIK: BoxCode = BoxCode::new(*b"trik");
4107 /// track fragment run
4108 ///
4109 /// FourCC: `trun`
4110 ///
4111 /// Specification: _ISO_
4112 pub const TRUN: BoxCode = BoxCode::new(*b"trun");
4113 /// Track selection
4114 ///
4115 /// FourCC: `tsel`
4116 ///
4117 /// Specification: _ISO_
4118 pub const TSEL: BoxCode = BoxCode::new(*b"tsel");
4119 /// TileSubTrackGroupBox
4120 ///
4121 /// FourCC: `tstb`
4122 ///
4123 /// Specification: _NALu Video_
4124 pub const TSTB: BoxCode = BoxCode::new(*b"tstb");
4125 /// track type and compatibility
4126 ///
4127 /// FourCC: `ttyp`
4128 ///
4129 /// Specification: _ISO_
4130 pub const TTYP: BoxCode = BoxCode::new(*b"ttyp");
4131 /// Text stream configuration
4132 ///
4133 /// FourCC: `txtC`
4134 ///
4135 /// Specification: _ISO_
4136 ///
4137 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4138 pub const TXTC: BoxCode = BoxCode::new(*b"txtC");
4139 /// type and-combination
4140 ///
4141 /// FourCC: `tyco`
4142 ///
4143 /// Specification: _ISO_
4144 pub const TYCO: BoxCode = BoxCode::new(*b"tyco");
4145 /// Basic DRC coefficients
4146 ///
4147 /// FourCC: `udc1`
4148 ///
4149 /// Specification: _DRC_
4150 ///
4151 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4152 pub const UDC1: BoxCode = BoxCode::new(*b"udc1");
4153 /// Unified DRC coefficients
4154 ///
4155 /// FourCC: `udc2`
4156 ///
4157 /// Specification: _DRC_
4158 ///
4159 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4160 pub const UDC2: BoxCode = BoxCode::new(*b"udc2");
4161 /// Unified DRC configuration extension
4162 ///
4163 /// FourCC: `udex`
4164 ///
4165 /// Specification: _DRC_
4166 ///
4167 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4168 pub const UDEX: BoxCode = BoxCode::new(*b"udex");
4169 /// Basic DRC instructions
4170 ///
4171 /// FourCC: `udi1`
4172 ///
4173 /// Specification: _DRC_
4174 ///
4175 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4176 pub const UDI1: BoxCode = BoxCode::new(*b"udi1");
4177 /// Unified DRC instructions
4178 ///
4179 /// FourCC: `udi2`
4180 ///
4181 /// Specification: _DRC_
4182 ///
4183 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4184 pub const UDI2: BoxCode = BoxCode::new(*b"udi2");
4185 /// user-data
4186 ///
4187 /// FourCC: `udta`
4188 ///
4189 /// Specification: _ISO_
4190 pub const UDTA: BoxCode = BoxCode::new(*b"udta");
4191 /// Equalization coefficients
4192 ///
4193 /// FourCC: `ueqc`
4194 ///
4195 /// Specification: _DRC_
4196 ///
4197 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4198 pub const UEQC: BoxCode = BoxCode::new(*b"ueqc");
4199 /// Equalization instructions
4200 ///
4201 /// FourCC: `ueqi`
4202 ///
4203 /// Specification: _DRC_
4204 ///
4205 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4206 pub const UEQI: BoxCode = BoxCode::new(*b"ueqi");
4207 /// a tool by which a vendor may provide access to additional information associated with a UUID
4208 ///
4209 /// FourCC: `uinf`
4210 ///
4211 /// Specification: _JPEG2000_
4212 pub const UINF: BoxCode = BoxCode::new(*b"uinf");
4213 /// a list of UUID’s
4214 ///
4215 /// FourCC: `ulst`
4216 ///
4217 /// Specification: _JPEG2000_
4218 pub const ULST: BoxCode = BoxCode::new(*b"ulst");
4219 /// Uncompressed Frame Configuration
4220 ///
4221 /// FourCC: `uncC`
4222 ///
4223 /// Specification: _UNCV_
4224 ///
4225 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4226 pub const UNCC: BoxCode = BoxCode::new(*b"uncC");
4227 /// User 'star' rating of the media
4228 ///
4229 /// FourCC: `urat`
4230 ///
4231 /// Specification: _3GPP_
4232 pub const URAT: BoxCode = BoxCode::new(*b"urat");
4233 /// URI Information
4234 ///
4235 /// FourCC: `uriI`
4236 ///
4237 /// Specification: _ISO_
4238 ///
4239 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4240 pub const URII: BoxCode = BoxCode::new(*b"uriI");
4241 /// a URL
4242 ///
4243 /// FourCC: `url `
4244 ///
4245 /// Specification: _JPEG2000_
4246 pub const URL: BoxCode = BoxCode::new(*b"url ");
4247 /// user-extension box
4248 ///
4249 /// FourCC: `uuid`
4250 ///
4251 /// Specification: _ISO_
4252 pub const UUID: BoxCode = BoxCode::new(*b"uuid");
4253 /// V3C Configuration
4254 ///
4255 /// FourCC: `v3cC`
4256 ///
4257 /// Specification: _V3C-SYS_
4258 ///
4259 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4260 pub const V3CC: BoxCode = BoxCode::new(*b"v3cC");
4261 /// V3C spatial region collection
4262 ///
4263 /// FourCC: `v3sc`
4264 ///
4265 /// Specification: _V3C-SYS_
4266 pub const V3SC: BoxCode = BoxCode::new(*b"v3sc");
4267 /// V3C Atlas Tile Configuration
4268 ///
4269 /// FourCC: `v3tC`
4270 ///
4271 /// Specification: _V3C-SYS_
4272 ///
4273 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4274 pub const V3TC: BoxCode = BoxCode::new(*b"v3tC");
4275 /// Video Extended Usage
4276 ///
4277 /// FourCC: `vexu`
4278 ///
4279 /// Specification: _Apple_
4280 ///
4281 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4282 pub const VEXU: BoxCode = BoxCode::new(*b"vexu");
4283 /// View priority Box
4284 ///
4285 /// FourCC: `vipr`
4286 ///
4287 /// Specification: _NALu Video_
4288 pub const VIPR: BoxCode = BoxCode::new(*b"vipr");
4289 /// WebVTT Source Label
4290 ///
4291 /// FourCC: `vlab`
4292 ///
4293 /// Specification: _ISO-Text_
4294 ///
4295 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4296 pub const VLAB: BoxCode = BoxCode::new(*b"vlab");
4297 /// video media header, overall information (video track only)
4298 ///
4299 /// FourCC: `vmhd`
4300 ///
4301 /// Specification: _ISO_
4302 pub const VMHD: BoxCode = BoxCode::new(*b"vmhd");
4303 /// Volumetric media bounding box
4304 ///
4305 /// FourCC: `vpbb`
4306 ///
4307 /// Specification: _V3C-SYS_
4308 pub const VPBB: BoxCode = BoxCode::new(*b"vpbb");
4309 /// VP9 Codec Configuration
4310 ///
4311 /// FourCC: `vpcC`
4312 ///
4313 /// Specification: _VPxx_
4314 ///
4315 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4316 pub const VPCC: BoxCode = BoxCode::new(*b"vpcC");
4317 /// View scalability information
4318 ///
4319 /// FourCC: `vsib`
4320 ///
4321 /// Specification: _NALu Video_
4322 ///
4323 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4324 pub const VSIB: BoxCode = BoxCode::new(*b"vsib");
4325 /// viewing space
4326 ///
4327 /// FourCC: `vssn`
4328 ///
4329 /// Specification: _OMAF_
4330 pub const VSSN: BoxCode = BoxCode::new(*b"vssn");
4331 /// WebVTTConfigurationBox
4332 ///
4333 /// FourCC: `vttC`
4334 ///
4335 /// Specification: _ISO-Text_
4336 ///
4337 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4338 pub const VTTC: BoxCode = BoxCode::new(*b"vttC");
4339 /// V3C unit header
4340 ///
4341 /// FourCC: `vunt`
4342 ///
4343 /// Specification: _V3C-SYS_
4344 pub const VUNT: BoxCode = BoxCode::new(*b"vunt");
4345 /// VVC video configuration
4346 ///
4347 /// FourCC: `vvcC`
4348 ///
4349 /// Specification: _NALu Video_
4350 ///
4351 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4352 pub const VVCC: BoxCode = BoxCode::new(*b"vvcC");
4353 /// volumetric visual media header
4354 ///
4355 /// FourCC: `vvhd`
4356 ///
4357 /// Specification: _ISO_
4358 pub const VVHD: BoxCode = BoxCode::new(*b"vvhd");
4359 /// VVC Network Abstraction Layer unit configuration
4360 ///
4361 /// FourCC: `vvnC`
4362 ///
4363 /// Specification: _NALu Video_
4364 ///
4365 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4366 pub const VVNC: BoxCode = BoxCode::new(*b"vvnC");
4367 /// Multiview Scene Information
4368 ///
4369 /// FourCC: `vwdi`
4370 ///
4371 /// Specification: _NALu Video_
4372 pub const VWDI: BoxCode = BoxCode::new(*b"vwdi");
4373 /// View identifier
4374 ///
4375 /// FourCC: `vwid`
4376 ///
4377 /// Specification: _NALu Video_
4378 ///
4379 /// This box appears inside sample entries. Use [`sample_entry_box_handler`] to look up the handler type.
4380 pub const VWID: BoxCode = BoxCode::new(*b"vwid");
4381 /// Expansion space reservation
4382 ///
4383 /// FourCC: `wide`
4384 ///
4385 /// Specification: _QT_
4386 pub const WIDE: BoxCode = BoxCode::new(*b"wide");
4387 /// segment position in the watermark pattern
4388 ///
4389 /// FourCC: `wmpi`
4390 ///
4391 /// Specification: _DASH-IF watermarking_
4392 pub const WMPI: BoxCode = BoxCode::new(*b"wmpi");
4393 /// a tool by which vendors can add XML formatted information
4394 ///
4395 /// FourCC: `xml `
4396 ///
4397 /// Specification: _JPEG2000_
4398 pub const XML: BoxCode = BoxCode::new(*b"xml ");
4399 /// Year when media was recorded
4400 ///
4401 /// FourCC: `yrrc`
4402 ///
4403 /// Specification: _3GPP_
4404 pub const YRRC: BoxCode = BoxCode::new(*b"yrrc");
4405}
4406impl BoxCode {
4407 /// Return a human-readable description for this box code, if one is known.
4408 pub fn description(&self) -> Option<&'static str> {
4409 match *self {
4410 BoxCode::COMPRESSED_MOF => Some("Compressed movie fragment"),
4411 BoxCode::COMPRESSED_MOV => Some("Compressed movie"),
4412 BoxCode::COMPRESSED_SIX => Some("Compressed segment index"),
4413 BoxCode::COMPRESSED_SSX => Some("Compressed subsegment index"),
4414 BoxCode::TWO_DQR => Some("2D region quality ranking"),
4415 BoxCode::TWO_DSS => Some("spatial relationship 2D source"),
4416 BoxCode::THREE_DPR => Some("MVDDepthResolutionBox"),
4417 BoxCode::THREE_SIB => Some("MVD Scalability Information SEI Message Box"),
4418 BoxCode::SIX_VPC => Some("Viewport Configuration"),
4419 BoxCode::EXIF => Some("Exif Metadata"),
4420 BoxCode::ID32 => Some("ID3 version 2 container"),
4421 BoxCode::JXL => Some("JPEG XL Signature"),
4422 BoxCode::JXS => Some("JPEG XS Signature"),
4423 BoxCode::SMDM => Some("Mastering Display Metadata Box"),
4424 BoxCode::UITS => Some("Unique Identifier Technology Solution"),
4425 BoxCode::A3DC => Some("A3DConfigurationBox"),
4426 BoxCode::ACXD => Some("Decoder-specific info for Auro-Cx audio"),
4427 BoxCode::ADES => {
4428 Some(
4429 "description of the content for accessibility purposes (similar to the HTML alt attribute); formatted as for the cprt user-data item",
4430 )
4431 }
4432 BoxCode::AEDB => Some("audio element description"),
4433 BoxCode::AELM => Some("audio element box"),
4434 BoxCode::AEPP => Some("audio element positioning interactivity polar box"),
4435 BoxCode::AEPR => Some("audio element prominence interactivity box"),
4436 BoxCode::AESB => Some("audio element selection box"),
4437 BoxCode::AESD => Some("audio element selection description box"),
4438 BoxCode::AINF => Some("Asset information to identify, license and play"),
4439 BoxCode::ALBM => Some("Album title and track number for media"),
4440 BoxCode::ALMO => {
4441 Some("Alpha mode (straight vs premultiplied alpha) signaling")
4442 }
4443 BoxCode::ALOU => Some("Album loudness base"),
4444 BoxCode::AMVE => Some("Ambient viewing environment"),
4445 BoxCode::ANGL => {
4446 Some("Name of the camera angle through which the clip was shot")
4447 }
4448 BoxCode::APVC => Some("APV Codec Configuration Box"),
4449 BoxCode::ARDI => Some("audio rendering indication"),
4450 BoxCode::ASSP => Some("alternative startup sequence properties"),
4451 BoxCode::AUTH => Some("Author of the media"),
4452 BoxCode::AUXI => Some("Auxiliary track type information"),
4453 BoxCode::AV1C => Some("AOM Video Codec Configuration"),
4454 BoxCode::AVCC => Some("AVC Configuration"),
4455 BoxCode::AVCN => Some("AVC NAL Unit Storage Box"),
4456 BoxCode::BIDX => Some("Box Index"),
4457 BoxCode::BLOC => {
4458 Some("Base location and purchase location for license acquisition")
4459 }
4460 BoxCode::BMDM => Some("Buffer Model Description"),
4461 BoxCode::BPCC => Some("Bits per component"),
4462 BoxCode::BROB => Some("Brotli-compressed box"),
4463 BoxCode::BTRT => Some("Bit-rate information"),
4464 BoxCode::BUFF => Some("Buffering information"),
4465 BoxCode::BXML => Some("binary XML container"),
4466 BoxCode::CCID => Some("OMA DRM Content ID"),
4467 BoxCode::CCLV => Some("Content colour volume"),
4468 BoxCode::CCST => Some("Coding constraints box"),
4469 BoxCode::CDEF => {
4470 Some("type and ordering of the components within the codestream")
4471 }
4472 BoxCode::CHNL => Some("Channel layout"),
4473 BoxCode::CINF => Some("complete track information"),
4474 BoxCode::CLAP => Some("Clean aperture"),
4475 BoxCode::CLEV => Some("Component Reference Level"),
4476 BoxCode::CLFN => Some("Name of the clip file"),
4477 BoxCode::CLID => Some("Identifier of the clip"),
4478 BoxCode::CLIP => Some("Visual clipping region container"),
4479 BoxCode::CLLI => Some("Content Light Level"),
4480 BoxCode::CLOC => Some("Chroma Location"),
4481 BoxCode::CLSF => Some("Classification of the media"),
4482 BoxCode::CMAP => Some("mapping between a palette and codestream components"),
4483 BoxCode::CMID => Some("Identifier of the camera"),
4484 BoxCode::CMNM => Some("Name that identifies the camera"),
4485 BoxCode::CMPD => Some("Component Definition"),
4486 BoxCode::CO64 => Some("64-bit chunk offset"),
4487 BoxCode::COIF => Some("composition information"),
4488 BoxCode::COIN => Some("Content Information Box"),
4489 BoxCode::COLL => Some("Name of the collection from which the media comes"),
4490 BoxCode::COLR => Some("specifies the colourspace of the image"),
4491 BoxCode::COVI => Some("coverage information"),
4492 BoxCode::CPAL => Some("Component Palette Configuration"),
4493 BoxCode::CPAT => Some("Component Pattern Definition"),
4494 BoxCode::CPRT => Some("copyright etc."),
4495 BoxCode::CRGN => Some("Visual clipping region definition"),
4496 BoxCode::CRHD => Some("reserved for ClockReferenceStream header"),
4497 BoxCode::CSGM => {
4498 Some("Compact sample to group used in QuickTime File Format")
4499 }
4500 BoxCode::CSGP => Some("compact sample to group"),
4501 BoxCode::CSLG => Some("composition to decode timeline mapping"),
4502 BoxCode::CSTB => Some("corrected wall clock start time"),
4503 BoxCode::CTAB => Some("Track color-table"),
4504 BoxCode::CTTS => Some("(composition) time to sample"),
4505 BoxCode::CUVV => Some("HDR Vivid Configuration"),
4506 BoxCode::CVRU => Some("OMA DRM Cover URI"),
4507 BoxCode::DAC3 => Some("Decoder specific info for AC-3 audio"),
4508 BoxCode::DAC4 => Some("Decoder specific info for AC-4 audio"),
4509 BoxCode::DATE => {
4510 Some(
4511 "Date and time, formatted according to ISO 8601, when the content was created. For clips captured by recording devices, this is typically the date and time when the clip’s recording started.",
4512 )
4513 }
4514 BoxCode::DCA3 => Some("Decoder configuration for AVS3-P3 Codec"),
4515 BoxCode::DCFD => Some("Marlin DCF Duration, user-data atom type"),
4516 BoxCode::DEC3 => Some("Decoder specific info for Enhanced AC-3 audio"),
4517 BoxCode::DFLA => Some("Free Lossless Audio Codec (FLAC) specific data"),
4518 BoxCode::DHEC => Some("Default HEVC extractor constructor box"),
4519 BoxCode::DIHD => Some("Data Integrity Hash"),
4520 BoxCode::DINF => Some("data information box, container"),
4521 BoxCode::DINT => Some("Data Integrity"),
4522 BoxCode::DISI => Some("Disparity Information"),
4523 BoxCode::DMIX => Some("Downmix instructions"),
4524 BoxCode::DMLP => Some("Decoder specific info for MLP audio"),
4525 BoxCode::DMON => Some("Mastering Display Metadata"),
4526 BoxCode::DREF => {
4527 Some("data reference box, declares source(s) of media data in track")
4528 }
4529 BoxCode::DSCP => Some("Media description"),
4530 BoxCode::DSGD => Some("DVB Sample Group Description Box"),
4531 BoxCode::DSTG => Some("DVB Sample to Group Box"),
4532 BoxCode::DVCC => Some("Dolby Vision Configuration"),
4533 BoxCode::DVVC => Some("Dolby Vision Extended Configuration"),
4534 BoxCode::DVWC => Some("Dolby Vision Extended Configuration 2"),
4535 BoxCode::ECAM => Some("Extrinsic camera parameters"),
4536 BoxCode::EDTS => Some("edit list container"),
4537 BoxCode::ELNG => Some("Extended Language Tag"),
4538 BoxCode::ELST => Some("an edit list"),
4539 BoxCode::EMSG => Some("event message"),
4540 BoxCode::ESDS => Some("Elementary stream descriptor"),
4541 BoxCode::ETYP => Some("extended type and type combination"),
4542 BoxCode::EVCC => Some("EVC configuration"),
4543 BoxCode::EVSC => Some("Configuration for EVC slice component track"),
4544 BoxCode::EVTI => Some("Event information"),
4545 BoxCode::FDEL => Some("File delivery information (item info extension)"),
4546 BoxCode::FECI => Some("FEC Informatiom"),
4547 BoxCode::FECR => Some("FEC Reservoir"),
4548 BoxCode::FIDX => Some("Box File Index"),
4549 BoxCode::FIEL => Some("Field Coding"),
4550 BoxCode::FIIN => Some("FD Item Information"),
4551 BoxCode::FIRE => Some("File Reservoir"),
4552 BoxCode::FOVD => Some("fisheye omnidirectional video"),
4553 BoxCode::FOVI => Some("fisheye video essential info"),
4554 BoxCode::FPAC => Some("Frame Packing Information"),
4555 BoxCode::FPAR => Some("File Partition"),
4556 BoxCode::FREE => Some("free space"),
4557 BoxCode::FRMA => Some("original format box"),
4558 BoxCode::FRPA => Some("Front Part"),
4559 BoxCode::FTYP => Some("file type and compatibility"),
4560 BoxCode::FVSI => Some("fisheye video supplemental info"),
4561 BoxCode::GITN => Some("Group ID to name"),
4562 BoxCode::GNRE => Some("Media genre"),
4563 BoxCode::GRPI => Some("OMA DRM Group ID"),
4564 BoxCode::GRPL => Some("Groups list box"),
4565 BoxCode::HDLR => Some("handler, declares the media (handler) type"),
4566 BoxCode::HINF => Some("hint information"),
4567 BoxCode::HMHD => {
4568 Some("hint media header, overall information (hint track only)")
4569 }
4570 BoxCode::HNTI => Some("Hint information"),
4571 BoxCode::HPIX => Some("Hipix Rich Picture (user-data or meta-data)"),
4572 BoxCode::HVCC => Some("HEVC Configuration"),
4573 BoxCode::HVTC => Some("HEVC Tile Configuration"),
4574 BoxCode::ICAM => Some("Intrinsic camera parameters"),
4575 BoxCode::ICNU => Some("OMA DRM Icon URI"),
4576 BoxCode::IDAT => Some("Item data"),
4577 BoxCode::IHDR => Some("Image Header"),
4578 BoxCode::IINF => Some("item information"),
4579 BoxCode::ILOC => Some("item location"),
4580 BoxCode::IMAP => Some("Track input map definition"),
4581 BoxCode::IMDA => Some("Identified media data"),
4582 BoxCode::IMIF => Some("IPMP Information box"),
4583 BoxCode::INFE => Some("Item information entry"),
4584 BoxCode::INFU => Some("OMA DRM Info URL"),
4585 BoxCode::IODS => Some("Object Descriptor container box"),
4586 BoxCode::IPCO => Some("ItemPropertyContainerBox"),
4587 BoxCode::IPHD => Some("reserved for IPMP Stream header"),
4588 BoxCode::IPMA => Some("ItemPropertyAssociation"),
4589 BoxCode::IPMC => Some("IPMP Control Box"),
4590 BoxCode::IPRO => Some("item protection"),
4591 BoxCode::IPRP => Some("Item Properties Box"),
4592 BoxCode::IREF => Some("Item reference"),
4593 BoxCode::IROI => Some("SVC region of interest box"),
4594 BoxCode::J2KH => Some("JPEG 2000 header info"),
4595 BoxCode::J2KP => Some("JPEG 2000 prefix"),
4596 BoxCode::JP => Some("JPEG 2000 Signature"),
4597 BoxCode::JBRD => Some("JPEG bitstream reconstruction data"),
4598 BoxCode::JP2C => Some("JPEG 2000 contiguous codestream"),
4599 BoxCode::JP2H => Some("Header"),
4600 BoxCode::JP2I => Some("intellectual property information"),
4601 BoxCode::JPGC => Some("JPEG Configuration"),
4602 BoxCode::JPTP => Some("JPEG XS Video Transport Parameter"),
4603 BoxCode::JPVI => Some("JPEG XS Video Information"),
4604 BoxCode::JPVS => Some("JPEG XS Video Support"),
4605 BoxCode::JUMB => Some("JPEG Universal Metadata Box Format (JUMBF)"),
4606 BoxCode::JXLC => Some("JPEG XL Codestream"),
4607 BoxCode::JXLI => Some("JPEG XL Frame Index"),
4608 BoxCode::JXLL => Some("JPEG XL Level"),
4609 BoxCode::JXLP => Some("JPEG XL Partial Codestream"),
4610 BoxCode::JXPL => Some("JPEG XS Profile and Level"),
4611 BoxCode::KIND => Some("Track kind"),
4612 BoxCode::KMAT => Some("Compressed visual track matte"),
4613 BoxCode::KYWD => Some("Media keywords"),
4614 BoxCode::LABL => Some("Label box"),
4615 BoxCode::LDEP => Some("Tier dependency box"),
4616 BoxCode::LEQI => Some("Loudness equalization instructions"),
4617 BoxCode::LEVA => Some("Leval assignment"),
4618 BoxCode::LHVC => Some("Layered HEVC Configuration"),
4619 BoxCode::LOAD => Some("Track pre-load definitions"),
4620 BoxCode::LOCI => Some("Media location information"),
4621 BoxCode::LOOP => Some("Looping behavior"),
4622 BoxCode::LRCU => Some("OMA DRM Lyrics URI"),
4623 BoxCode::LUDT => Some("Track loudness container"),
4624 BoxCode::LVCC => Some("LCEVC configuration"),
4625 BoxCode::M4DS => Some("MPEG-4 descriptors"),
4626 BoxCode::M7HD => Some("reserved for MPEG7Stream header"),
4627 BoxCode::MAEI => Some("MPEG-H Audio scene information"),
4628 BoxCode::MAEM => Some("MPEG-H Audio multi-stream signalling"),
4629 BoxCode::MANU => Some("Manufacturer name of the camera"),
4630 BoxCode::MATT => Some("Visual track matte for compositing"),
4631 BoxCode::MD5I => Some("MD5IntegrityBox"),
4632 BoxCode::MDAT => Some("media data container"),
4633 BoxCode::MDCV => Some("mastering display colour volume"),
4634 BoxCode::MDHD => Some("media header, overall information about the media"),
4635 BoxCode::MDIA => Some("container for the media information in a track"),
4636 BoxCode::MDRI => Some("Mutable DRM information"),
4637 BoxCode::MECO => Some("additional metadata container"),
4638 BoxCode::MEHD => Some("movie extends header box"),
4639 BoxCode::MEOF => Some("media offset"),
4640 BoxCode::MERE => Some("metabox relation"),
4641 BoxCode::MESH => Some("mesh box"),
4642 BoxCode::META => Some("Metadata container"),
4643 BoxCode::MFHD => Some("movie fragment header"),
4644 BoxCode::MFRA => Some("Movie fragment random access"),
4645 BoxCode::MFRO => Some("Movie fragment random access offset"),
4646 BoxCode::MHAC => Some("MPEG-H Audio Decoder Configuration"),
4647 BoxCode::MHAD => Some("MPEG-H Audio dynamic range control and loudness"),
4648 BoxCode::MHAP => Some("MPEG-H Audio profile and level compatibility set"),
4649 BoxCode::MINF => Some("media information container"),
4650 BoxCode::MINI => {
4651 Some(
4652 "The MinimizedImageBox provides a more compact representation of the MetaBox for a subset of use cases",
4653 )
4654 }
4655 BoxCode::MJHD => Some("reserved for MPEG-J Stream header"),
4656 BoxCode::MMVI => Some("multimap video"),
4657 BoxCode::MODL => Some("Model name of the camera"),
4658 BoxCode::MOOF => Some("movie fragment"),
4659 BoxCode::MOOV => Some("container for all the meta-data"),
4660 BoxCode::MOVD => Some("mesh omnidirectional video"),
4661 BoxCode::MSTV => Some("MVC sub track view box"),
4662 BoxCode::MVCC => Some("MVC configuration"),
4663 BoxCode::MVCP => Some("MVC priority assignment"),
4664 BoxCode::MVCG => Some("Multiview group"),
4665 BoxCode::MVCI => Some("Multiview Information"),
4666 BoxCode::MVDC => Some("MVCDConfigurationBox"),
4667 BoxCode::MVEX => Some("movie extends box"),
4668 BoxCode::MVHD => Some("movie header, overall declarations"),
4669 BoxCode::MVRA => Some("Multiview Relation Attribute"),
4670 BoxCode::NMHD => {
4671 Some("Null media header, overall information (some tracks only)")
4672 }
4673 BoxCode::OCHD => Some("reserved for ObjectContentInfoStream header"),
4674 BoxCode::ODAF => Some("OMA DRM Access Unit Format"),
4675 BoxCode::ODDA => Some("OMA DRM Content Object"),
4676 BoxCode::ODHD => Some("reserved for ObjectDescriptorStream header"),
4677 BoxCode::ODHE => Some("OMA DRM Discrete Media Headers"),
4678 BoxCode::ODRB => Some("OMA DRM Rights Object"),
4679 BoxCode::ODRM => Some("OMA DRM Container"),
4680 BoxCode::ODTT => Some("OMA DRM Transaction Tracking"),
4681 BoxCode::OHDR => Some("OMA DRM Common headers"),
4682 BoxCode::ORIE => Some("Orientation information"),
4683 BoxCode::OTCF => Some("OMAF timed text configuration"),
4684 BoxCode::OTYP => Some("Original file type"),
4685 BoxCode::OVLY => Some("overlay configuration"),
4686 BoxCode::PADB => Some("sample padding bits"),
4687 BoxCode::PAEN => Some("Partition Entry"),
4688 BoxCode::PASP => Some("Pixel aspect ratio"),
4689 BoxCode::PCLR => {
4690 Some(
4691 "palette which maps a single component in index space to a multiple- component image",
4692 )
4693 }
4694 BoxCode::PCMC => Some("Uncompressed audio PCM configuration"),
4695 BoxCode::PDAT => Some("Partial Data"),
4696 BoxCode::PDC1 => Some("Parametric DRC coefficients"),
4697 BoxCode::PDI1 => Some("Parametric DRC instructions"),
4698 BoxCode::PDIN => Some("Progressive download information"),
4699 BoxCode::PERF => Some("Media performer name"),
4700 BoxCode::PFHD => Some("Partial File Header"),
4701 BoxCode::PFIL => Some("Partial File"),
4702 BoxCode::PITM => Some("primary item reference"),
4703 BoxCode::PLOC => Some("Partial Segment Location"),
4704 BoxCode::PNOT => Some("Preview container"),
4705 BoxCode::POVD => Some("projected omnidirectional video"),
4706 BoxCode::PRFR => Some("projection format"),
4707 BoxCode::PRFT => Some("Producer reference time"),
4708 BoxCode::PRMD => Some("Production metadata box"),
4709 BoxCode::PRMR => Some("Production metadata reference box"),
4710 BoxCode::PSEG => Some("Partial Segment"),
4711 BoxCode::PSHD => Some("Partial Segment Header"),
4712 BoxCode::PSSH => Some("Protection system specific header"),
4713 BoxCode::PTLE => Some("Partial Top Level Entry"),
4714 BoxCode::QLIF => Some("Layer quality assignments"),
4715 BoxCode::REEL => Some("Name of the tape reel"),
4716 BoxCode::RES => Some("grid resolution"),
4717 BoxCode::RESC => Some("grid resolution at which the image was captured"),
4718 BoxCode::RESD => {
4719 Some("default grid resolution at which the image should be displayed")
4720 }
4721 BoxCode::RINF => Some("restricted scheme information box"),
4722 BoxCode::ROSC => Some("sphere region configuration"),
4723 BoxCode::ROTN => Some("rotation box"),
4724 BoxCode::RRGN => Some("SVC rect region box"),
4725 BoxCode::RSOT => Some("Redundant Sample Original Timing"),
4726 BoxCode::RTNG => Some("Media rating"),
4727 BoxCode::RVIF => Some("recommended viewport information"),
4728 BoxCode::RWPK => Some("region-wise packing"),
4729 BoxCode::SAIO => Some("Sample auxiliary information offsets"),
4730 BoxCode::SAIZ => Some("Sample auxiliary information sizes"),
4731 BoxCode::SBGP => Some("Sample to Group box"),
4732 BoxCode::SBPM => Some("Sensor Bad Pixels Map"),
4733 BoxCode::SCEN => Some("Name of the scene for which the clip was shot"),
4734 BoxCode::SCHI => Some("scheme information box"),
4735 BoxCode::SCHM => Some("scheme type box"),
4736 BoxCode::SCRB => Some("Scramble scheme information"),
4737 BoxCode::SDEP => Some("Sample dependency"),
4738 BoxCode::SDHD => Some("reserved for SceneDescriptionStream header"),
4739 BoxCode::SDP => Some("SDP information"),
4740 BoxCode::SDTP => Some("Independent and Disposable Samples Box"),
4741 BoxCode::SDVP => Some("SD Profile Box"),
4742 BoxCode::SEGR => Some("file delivery session group"),
4743 BoxCode::SEIB => Some("Scalability information"),
4744 BoxCode::SEII => Some("SEI information box"),
4745 BoxCode::SENC => Some("Sample specific encryption data"),
4746 BoxCode::SGPD => Some("Sample group definition box"),
4747 BoxCode::SHOT => Some("Name that identifies the shot"),
4748 BoxCode::SIDX => Some("Segment Index Box"),
4749 BoxCode::SILB => Some("Scheme ID list Box"),
4750 BoxCode::SINF => Some("protection scheme information box"),
4751 BoxCode::SKIP => Some("free space"),
4752 BoxCode::SLNO => Some("Serial number of the camera"),
4753 BoxCode::SMHD => {
4754 Some("sound media header, overall information (sound track only)")
4755 }
4756 BoxCode::SNUC => Some("Sensor Non-Uniformity Correction"),
4757 BoxCode::SPKI => Some("Sample packing information box"),
4758 BoxCode::SPLZ => Some("Polarization Pattern Definition"),
4759 BoxCode::SPRG => Some("sub-picture region"),
4760 BoxCode::SRAT => Some("Sampling rate"),
4761 BoxCode::SRMB => Some("System Renewability Message"),
4762 BoxCode::SRMC => Some("System Renewability Message container"),
4763 BoxCode::SRPP => Some("STRP Process"),
4764 BoxCode::SRQR => Some("sphere region quality ranking"),
4765 BoxCode::SSIX => Some("Sub-sample index"),
4766 BoxCode::SSRT => Some("Sub-sample Reference Table Box"),
4767 BoxCode::SSTL => Some("SVC sub track layer box"),
4768 BoxCode::STBL => Some("sample table box, container for the time/space map"),
4769 BoxCode::STCO => Some("chunk offset, partial data-offset information"),
4770 BoxCode::STDP => Some("sample degradation priority"),
4771 BoxCode::STHD => Some("Subtitle Media Header Box"),
4772 BoxCode::STMG => Some("MVC sub track multiview group box"),
4773 BoxCode::STRD => Some("Sub-track definition"),
4774 BoxCode::STRI => Some("Sub-track information"),
4775 BoxCode::STRK => Some("Sub track information"),
4776 BoxCode::STSC => Some("sample-to-chunk, partial data-offset information"),
4777 BoxCode::STSD => {
4778 Some("sample descriptions (codec types, initialization etc.)")
4779 }
4780 BoxCode::STSG => Some("Sub-track sample grouping"),
4781 BoxCode::STSH => Some("shadow sync sample table"),
4782 BoxCode::STSS => Some("sync sample table (random access points)"),
4783 BoxCode::STSZ => Some("sample sizes (framing)"),
4784 BoxCode::STTI => Some("Sub track tier box"),
4785 BoxCode::STTS => Some("(decoding) time-to-sample"),
4786 BoxCode::STVI => Some("Stereo Video Box"),
4787 BoxCode::STYP => Some("Segment Type Box"),
4788 BoxCode::STZ2 => Some("compact sample sizes (framing)"),
4789 BoxCode::SUBS => Some("Sub-sample information"),
4790 BoxCode::SUEP => Some("signer identity information"),
4791 BoxCode::SUMI => Some("supplemental surveillance meta information"),
4792 BoxCode::SURL => Some("Source URL"),
4793 BoxCode::SVCC => Some("SVC configuration"),
4794 BoxCode::SVCP => Some("SVC priority assignments"),
4795 BoxCode::SVDR => Some("SVC dependency range"),
4796 BoxCode::SVIP => Some("Initial parameter sets box for tiers"),
4797 BoxCode::SVMC => Some("SVC information configuration"),
4798 BoxCode::SVPR => Some("Priority range"),
4799 BoxCode::SWRE => {
4800 Some("Name and version number of the software that generated this movie")
4801 }
4802 BoxCode::SWTC => Some("Multiview Group Relation"),
4803 BoxCode::TENC => Some("Track Encryption"),
4804 BoxCode::TFAD => Some("Track fragment adjustment box"),
4805 BoxCode::TFDT => Some("Track fragment decode time"),
4806 BoxCode::TFHD => Some("Track fragment header"),
4807 BoxCode::TFMA => Some("Track fragment media adjustment box"),
4808 BoxCode::TFRA => Some("Track fragment radom access"),
4809 BoxCode::THMB => Some("Thumbnail image of the media"),
4810 BoxCode::TIBR => Some("Tier Bit rate"),
4811 BoxCode::TIRI => Some("Tier Information"),
4812 BoxCode::TITL => Some("Media title"),
4813 BoxCode::TKHD => Some("Track header, overall information about the track"),
4814 BoxCode::TLOU => Some("Track loudness base"),
4815 BoxCode::TRAF => Some("Track fragment"),
4816 BoxCode::TRAK => Some("container for an individual track or stream"),
4817 BoxCode::TRAN => Some("SVC lightweight transcoding"),
4818 BoxCode::TREF => Some("track reference container"),
4819 BoxCode::TREP => Some("track extension properties"),
4820 BoxCode::TREX => Some("track extends defaults"),
4821 BoxCode::TRGR => Some("Track grouping information"),
4822 BoxCode::TRIK => Some("Facilitates random access and trick play modes"),
4823 BoxCode::TRUN => Some("track fragment run"),
4824 BoxCode::TSEL => Some("Track selection"),
4825 BoxCode::TSTB => Some("TileSubTrackGroupBox"),
4826 BoxCode::TTYP => Some("track type and compatibility"),
4827 BoxCode::TXTC => Some("Text stream configuration"),
4828 BoxCode::TYCO => Some("type and-combination"),
4829 BoxCode::UDC1 => Some("Basic DRC coefficients"),
4830 BoxCode::UDC2 => Some("Unified DRC coefficients"),
4831 BoxCode::UDEX => Some("Unified DRC configuration extension"),
4832 BoxCode::UDI1 => Some("Basic DRC instructions"),
4833 BoxCode::UDI2 => Some("Unified DRC instructions"),
4834 BoxCode::UDTA => Some("user-data"),
4835 BoxCode::UEQC => Some("Equalization coefficients"),
4836 BoxCode::UEQI => Some("Equalization instructions"),
4837 BoxCode::UINF => {
4838 Some(
4839 "a tool by which a vendor may provide access to additional information associated with a UUID",
4840 )
4841 }
4842 BoxCode::ULST => Some("a list of UUID’s"),
4843 BoxCode::UNCC => Some("Uncompressed Frame Configuration"),
4844 BoxCode::URAT => Some("User 'star' rating of the media"),
4845 BoxCode::URII => Some("URI Information"),
4846 BoxCode::URL => Some("a URL"),
4847 BoxCode::UUID => Some("user-extension box"),
4848 BoxCode::V3CC => Some("V3C Configuration"),
4849 BoxCode::V3SC => Some("V3C spatial region collection"),
4850 BoxCode::V3TC => Some("V3C Atlas Tile Configuration"),
4851 BoxCode::VEXU => Some("Video Extended Usage"),
4852 BoxCode::VIPR => Some("View priority Box"),
4853 BoxCode::VLAB => Some("WebVTT Source Label"),
4854 BoxCode::VMHD => {
4855 Some("video media header, overall information (video track only)")
4856 }
4857 BoxCode::VPBB => Some("Volumetric media bounding box"),
4858 BoxCode::VPCC => Some("VP9 Codec Configuration"),
4859 BoxCode::VSIB => Some("View scalability information"),
4860 BoxCode::VSSN => Some("viewing space"),
4861 BoxCode::VTTC => Some("WebVTTConfigurationBox"),
4862 BoxCode::VUNT => Some("V3C unit header"),
4863 BoxCode::VVCC => Some("VVC video configuration"),
4864 BoxCode::VVHD => Some("volumetric visual media header"),
4865 BoxCode::VVNC => Some("VVC Network Abstraction Layer unit configuration"),
4866 BoxCode::VWDI => Some("Multiview Scene Information"),
4867 BoxCode::VWID => Some("View identifier"),
4868 BoxCode::WIDE => Some("Expansion space reservation"),
4869 BoxCode::WMPI => Some("segment position in the watermark pattern"),
4870 BoxCode::XML => {
4871 Some("a tool by which vendors can add XML formatted information")
4872 }
4873 BoxCode::YRRC => Some("Year when media was recorded"),
4874 _ => None,
4875 }
4876 }
4877}
4878impl ObjectTypeIdentifier {
4879 /// Forbidden
4880 ///
4881 /// Type value: `0x00`
4882 pub const FORBIDDEN: ObjectTypeIdentifier = ObjectTypeIdentifier(0x00);
4883 /// Systems ISO/IEC 14496-1
4884 ///
4885 /// Type value: `0x01`
4886 ///
4887 /// Specification: _MPEG-4_
4888 pub const SYSTEMS_ISO_IEC_14496_1: ObjectTypeIdentifier = ObjectTypeIdentifier(0x01);
4889 /// Systems ISO/IEC 14496-1
4890 ///
4891 /// Type value: `0x02`
4892 ///
4893 /// Specification: _MPEG-4_
4894 pub const SYSTEMS_ISO_IEC_14496_1_BIFS_V_2_CONFIG: ObjectTypeIdentifier = ObjectTypeIdentifier(
4895 0x02,
4896 );
4897 /// Interaction Stream
4898 ///
4899 /// Type value: `0x03`
4900 ///
4901 /// Specification: _MPEG-4_
4902 pub const INTERACTION_STREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(0x03);
4903 /// Extended BIFS
4904 ///
4905 /// Type value: `0x04`
4906 ///
4907 /// Specification: _MPEG-4_
4908 pub const EXTENDED_BIFS: ObjectTypeIdentifier = ObjectTypeIdentifier(0x04);
4909 /// AFX Stream
4910 ///
4911 /// Type value: `0x05`
4912 ///
4913 /// Specification: _MPEG-4_
4914 pub const AFX_STREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(0x05);
4915 /// Font Data Stream
4916 ///
4917 /// Type value: `0x06`
4918 ///
4919 /// Specification: _MPEG-4_
4920 pub const FONT_DATA_STREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(0x06);
4921 /// Synthetised Texture
4922 ///
4923 /// Type value: `0x07`
4924 ///
4925 /// Specification: _MPEG-4_
4926 pub const SYNTHETISED_TEXTURE: ObjectTypeIdentifier = ObjectTypeIdentifier(0x07);
4927 /// Text Stream
4928 ///
4929 /// Type value: `0x08`
4930 ///
4931 /// Specification: _MPEG-4_
4932 pub const TEXT_STREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(0x08);
4933 /// LASeR Stream
4934 ///
4935 /// Type value: `0x09`
4936 ///
4937 /// Specification: _MPEG-4_
4938 pub const LA_SE_R_STREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(0x09);
4939 /// Simple Aggregation Format Stream
4940 ///
4941 /// Type value: `0x0A`
4942 ///
4943 /// Specification: _MPEG-4_
4944 pub const SIMPLE_AGGREGATION_FORMAT_STREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(
4945 0x0A,
4946 );
4947 /// Visual ISO/IEC 14496-2
4948 ///
4949 /// Type value: `0x20`
4950 ///
4951 /// Specification: _MPEG-4_
4952 pub const VISUAL_ISO_IEC_14496_2: ObjectTypeIdentifier = ObjectTypeIdentifier(0x20);
4953 /// Visual ITU-T Recommendation H.264 | ISO/IEC 14496-10
4954 ///
4955 /// Type value: `0x21`
4956 ///
4957 /// Specification: _MPEG-4_
4958 pub const VISUAL_ITU_T_RECOMMENDATION_H_264_ISO_IEC_14496_10: ObjectTypeIdentifier = ObjectTypeIdentifier(
4959 0x21,
4960 );
4961 /// Parameter Sets for ITU-T Recommendation H.264 | ISO/IEC 14496-10
4962 ///
4963 /// Type value: `0x22`
4964 ///
4965 /// Specification: _MPEG-4_
4966 pub const PARAMETER_SETS_FOR_ITU_T_RECOMMENDATION_H_264_ISO_IEC_14496_10: ObjectTypeIdentifier = ObjectTypeIdentifier(
4967 0x22,
4968 );
4969 /// Visual ISO/IEC 23008-2 | ITU-T Recommendation H.265
4970 ///
4971 /// Type value: `0x23`
4972 ///
4973 /// Specification: _MPEG-4_
4974 pub const VISUAL_ISO_IEC_23008_2_ITU_T_RECOMMENDATION_H_265: ObjectTypeIdentifier = ObjectTypeIdentifier(
4975 0x23,
4976 );
4977 /// Audio ISO/IEC 14496-3
4978 ///
4979 /// Type value: `0x40`
4980 ///
4981 /// Specification: _MPEG-4_
4982 pub const AUDIO_ISO_IEC_14496_3: ObjectTypeIdentifier = ObjectTypeIdentifier(0x40);
4983 /// Visual ISO/IEC 13818-2 Simple Profile
4984 ///
4985 /// Type value: `0x60`
4986 ///
4987 /// Specification: _MPEG-4_
4988 pub const VISUAL_ISO_IEC_13818_2_SIMPLE_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
4989 0x60,
4990 );
4991 /// Visual ISO/IEC 13818-2 Main Profile
4992 ///
4993 /// Type value: `0x61`
4994 ///
4995 /// Specification: _MPEG-4_
4996 pub const VISUAL_ISO_IEC_13818_2_MAIN_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
4997 0x61,
4998 );
4999 /// Visual ISO/IEC 13818-2 SNR Profile
5000 ///
5001 /// Type value: `0x62`
5002 ///
5003 /// Specification: _MPEG-4_
5004 pub const VISUAL_ISO_IEC_13818_2_SNR_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5005 0x62,
5006 );
5007 /// Visual ISO/IEC 13818-2 Spatial Profile
5008 ///
5009 /// Type value: `0x63`
5010 ///
5011 /// Specification: _MPEG-4_
5012 pub const VISUAL_ISO_IEC_13818_2_SPATIAL_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5013 0x63,
5014 );
5015 /// Visual ISO/IEC 13818-2 High Profile
5016 ///
5017 /// Type value: `0x64`
5018 ///
5019 /// Specification: _MPEG-4_
5020 pub const VISUAL_ISO_IEC_13818_2_HIGH_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5021 0x64,
5022 );
5023 /// Visual ISO/IEC 13818-2 422 Profile
5024 ///
5025 /// Type value: `0x65`
5026 ///
5027 /// Specification: _MPEG-4_
5028 pub const VISUAL_ISO_IEC_13818_2_422_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5029 0x65,
5030 );
5031 /// Audio ISO/IEC 13818-7 Main Profile
5032 ///
5033 /// Type value: `0x66`
5034 ///
5035 /// Specification: _MPEG-4_
5036 pub const AUDIO_ISO_IEC_13818_7_MAIN_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5037 0x66,
5038 );
5039 /// Audio ISO/IEC 13818-7 LowComplexity Profile
5040 ///
5041 /// Type value: `0x67`
5042 ///
5043 /// Specification: _MPEG-4_
5044 pub const AUDIO_ISO_IEC_13818_7_LOW_COMPLEXITY_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5045 0x67,
5046 );
5047 /// Audio ISO/IEC 13818-7 Scaleable Sampling Rate Profile
5048 ///
5049 /// Type value: `0x68`
5050 ///
5051 /// Specification: _MPEG-4_
5052 pub const AUDIO_ISO_IEC_13818_7_SCALEABLE_SAMPLING_RATE_PROFILE: ObjectTypeIdentifier = ObjectTypeIdentifier(
5053 0x68,
5054 );
5055 /// Audio ISO/IEC 13818-3
5056 ///
5057 /// Type value: `0x69`
5058 ///
5059 /// Specification: _MPEG-4_
5060 pub const AUDIO_ISO_IEC_13818_3: ObjectTypeIdentifier = ObjectTypeIdentifier(0x69);
5061 /// Visual ISO/IEC 11172-2
5062 ///
5063 /// Type value: `0x6A`
5064 ///
5065 /// Specification: _MPEG-4_
5066 pub const VISUAL_ISO_IEC_11172_2: ObjectTypeIdentifier = ObjectTypeIdentifier(0x6A);
5067 /// Audio ISO/IEC 11172-3
5068 ///
5069 /// Type value: `0x6B`
5070 ///
5071 /// Specification: _MPEG-4_
5072 pub const AUDIO_ISO_IEC_11172_3: ObjectTypeIdentifier = ObjectTypeIdentifier(0x6B);
5073 /// Visual ISO/IEC 10918-1
5074 ///
5075 /// Type value: `0x6C`
5076 ///
5077 /// Specification: _MPEG-4_
5078 pub const VISUAL_ISO_IEC_10918_1: ObjectTypeIdentifier = ObjectTypeIdentifier(0x6C);
5079 /// Portable Network Graphics
5080 ///
5081 /// Type value: `0x6D`
5082 ///
5083 /// Specification: _PNG_
5084 pub const PORTABLE_NETWORK_GRAPHICS: ObjectTypeIdentifier = ObjectTypeIdentifier(
5085 0x6D,
5086 );
5087 /// Visual ISO/IEC 15444-1
5088 ///
5089 /// Type value: `0x6E`
5090 ///
5091 /// Specification: _MPEG-4_
5092 pub const VISUAL_ISO_IEC_15444_1: ObjectTypeIdentifier = ObjectTypeIdentifier(0x6E);
5093 /// EVRC Voice
5094 ///
5095 /// Type value: `0xA0`
5096 ///
5097 /// Specification: _3GPP2_
5098 pub const EVRC_VOICE: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA0);
5099 /// SMV Voice
5100 ///
5101 /// Type value: `0xA1`
5102 ///
5103 /// Specification: _3GPP2_
5104 pub const SMV_VOICE: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA1);
5105 /// 3GPP2 Compact Multimedia Format
5106 ///
5107 /// Type value: `0xA2`
5108 ///
5109 /// Specification: _3GPP2_
5110 pub const THREE_GPP_2_COMPACT_MULTIMEDIA_FORMAT: ObjectTypeIdentifier = ObjectTypeIdentifier(
5111 0xA2,
5112 );
5113 /// SMPTE VC-1 Video
5114 ///
5115 /// Type value: `0xA3`
5116 ///
5117 /// Specification: _SMPTE_
5118 pub const SMPTE_VC_1_VIDEO: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA3);
5119 /// Dirac Video Coder
5120 ///
5121 /// Type value: `0xA4`
5122 ///
5123 /// Specification: _Dirac_
5124 pub const DIRAC_VIDEO_CODER: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA4);
5125 /// DRA Audio
5126 ///
5127 /// Type value: `0xA7`
5128 ///
5129 /// Specification: _DRA_
5130 pub const DRA_AUDIO: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA7);
5131 /// ITU G.719 Audio
5132 ///
5133 /// Type value: `0xA8`
5134 ///
5135 /// Specification: _ITU G.719_
5136 pub const ITU_G_719_AUDIO: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA8);
5137 /// Core Substream
5138 ///
5139 /// Type value: `0xA9`
5140 ///
5141 /// Specification: _DTS-HD_
5142 pub const CORE_SUBSTREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(0xA9);
5143 /// Core Substream + Extension Substream
5144 ///
5145 /// Type value: `0xAA`
5146 ///
5147 /// Specification: _DTS-HD_
5148 pub const CORE_SUBSTREAM_EXTENSION_SUBSTREAM: ObjectTypeIdentifier = ObjectTypeIdentifier(
5149 0xAA,
5150 );
5151 /// Extension Substream containing only XLL
5152 ///
5153 /// Type value: `0xAB`
5154 ///
5155 /// Specification: _DTS-HD_
5156 pub const EXTENSION_SUBSTREAM_CONTAINING_ONLY_XLL: ObjectTypeIdentifier = ObjectTypeIdentifier(
5157 0xAB,
5158 );
5159 /// Extension Substream containing only LBR
5160 ///
5161 /// Type value: `0xAC`
5162 ///
5163 /// Specification: _DTS-HD_
5164 pub const EXTENSION_SUBSTREAM_CONTAINING_ONLY_LBR: ObjectTypeIdentifier = ObjectTypeIdentifier(
5165 0xAC,
5166 );
5167 /// Opus audio
5168 ///
5169 /// Type value: `0xAD`
5170 ///
5171 /// Specification: _Opus_
5172 pub const OPUS_AUDIO: ObjectTypeIdentifier = ObjectTypeIdentifier(0xAD);
5173 /// Auro-Cx 3D audio
5174 ///
5175 /// Type value: `0xAF`
5176 ///
5177 /// Specification: _Auro_
5178 pub const AURO_CX_3_D_AUDIO: ObjectTypeIdentifier = ObjectTypeIdentifier(0xAF);
5179 /// RealVideo Codec 11
5180 ///
5181 /// Type value: `0xB0`
5182 ///
5183 /// Specification: _RealHD_
5184 pub const REAL_VIDEO_CODEC_11: ObjectTypeIdentifier = ObjectTypeIdentifier(0xB0);
5185 /// VP9 Video
5186 ///
5187 /// Type value: `0xB1`
5188 ///
5189 /// Specification: _VPxx_
5190 pub const VP_9_VIDEO: ObjectTypeIdentifier = ObjectTypeIdentifier(0xB1);
5191 /// DTS-UHD profile 2
5192 ///
5193 /// Type value: `0xB2`
5194 ///
5195 /// Specification: _DTS-UHD_
5196 pub const DTS_UHD_PROFILE_2: ObjectTypeIdentifier = ObjectTypeIdentifier(0xB2);
5197 /// DTS-UHD profile 3 or higher
5198 ///
5199 /// Type value: `0xB3`
5200 ///
5201 /// Specification: _DTS-UHD_
5202 pub const DTS_UHD_PROFILE_3_OR_HIGHER: ObjectTypeIdentifier = ObjectTypeIdentifier(
5203 0xB3,
5204 );
5205 /// 13K Voice
5206 ///
5207 /// Type value: `0xE1`
5208 ///
5209 /// Specification: _3GPP2_
5210 pub const ONE_3_K_VOICE: ObjectTypeIdentifier = ObjectTypeIdentifier(0xE1);
5211 /// no object type specified
5212 ///
5213 /// Type value: `0xFF`
5214 ///
5215 /// Specification: _MPEG-4_
5216 pub const NO_OBJECT_TYPE_SPECIFIED: ObjectTypeIdentifier = ObjectTypeIdentifier(
5217 0xFF,
5218 );
5219}
5220impl fmt::Debug for ObjectTypeIdentifier {
5221 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
5222 let label = match *self {
5223 ObjectTypeIdentifier::FORBIDDEN => "FORBIDDEN",
5224 ObjectTypeIdentifier::SYSTEMS_ISO_IEC_14496_1 => "SYSTEMS_ISO_IEC_14496_1",
5225 ObjectTypeIdentifier::SYSTEMS_ISO_IEC_14496_1_BIFS_V_2_CONFIG => {
5226 "SYSTEMS_ISO_IEC_14496_1_BIFS_V_2_CONFIG"
5227 }
5228 ObjectTypeIdentifier::INTERACTION_STREAM => "INTERACTION_STREAM",
5229 ObjectTypeIdentifier::EXTENDED_BIFS => "EXTENDED_BIFS",
5230 ObjectTypeIdentifier::AFX_STREAM => "AFX_STREAM",
5231 ObjectTypeIdentifier::FONT_DATA_STREAM => "FONT_DATA_STREAM",
5232 ObjectTypeIdentifier::SYNTHETISED_TEXTURE => "SYNTHETISED_TEXTURE",
5233 ObjectTypeIdentifier::TEXT_STREAM => "TEXT_STREAM",
5234 ObjectTypeIdentifier::LA_SE_R_STREAM => "LA_SE_R_STREAM",
5235 ObjectTypeIdentifier::SIMPLE_AGGREGATION_FORMAT_STREAM => {
5236 "SIMPLE_AGGREGATION_FORMAT_STREAM"
5237 }
5238 ObjectTypeIdentifier::VISUAL_ISO_IEC_14496_2 => "VISUAL_ISO_IEC_14496_2",
5239 ObjectTypeIdentifier::VISUAL_ITU_T_RECOMMENDATION_H_264_ISO_IEC_14496_10 => {
5240 "VISUAL_ITU_T_RECOMMENDATION_H_264_ISO_IEC_14496_10"
5241 }
5242 ObjectTypeIdentifier::PARAMETER_SETS_FOR_ITU_T_RECOMMENDATION_H_264_ISO_IEC_14496_10 => {
5243 "PARAMETER_SETS_FOR_ITU_T_RECOMMENDATION_H_264_ISO_IEC_14496_10"
5244 }
5245 ObjectTypeIdentifier::VISUAL_ISO_IEC_23008_2_ITU_T_RECOMMENDATION_H_265 => {
5246 "VISUAL_ISO_IEC_23008_2_ITU_T_RECOMMENDATION_H_265"
5247 }
5248 ObjectTypeIdentifier::AUDIO_ISO_IEC_14496_3 => "AUDIO_ISO_IEC_14496_3",
5249 ObjectTypeIdentifier::VISUAL_ISO_IEC_13818_2_SIMPLE_PROFILE => {
5250 "VISUAL_ISO_IEC_13818_2_SIMPLE_PROFILE"
5251 }
5252 ObjectTypeIdentifier::VISUAL_ISO_IEC_13818_2_MAIN_PROFILE => {
5253 "VISUAL_ISO_IEC_13818_2_MAIN_PROFILE"
5254 }
5255 ObjectTypeIdentifier::VISUAL_ISO_IEC_13818_2_SNR_PROFILE => {
5256 "VISUAL_ISO_IEC_13818_2_SNR_PROFILE"
5257 }
5258 ObjectTypeIdentifier::VISUAL_ISO_IEC_13818_2_SPATIAL_PROFILE => {
5259 "VISUAL_ISO_IEC_13818_2_SPATIAL_PROFILE"
5260 }
5261 ObjectTypeIdentifier::VISUAL_ISO_IEC_13818_2_HIGH_PROFILE => {
5262 "VISUAL_ISO_IEC_13818_2_HIGH_PROFILE"
5263 }
5264 ObjectTypeIdentifier::VISUAL_ISO_IEC_13818_2_422_PROFILE => {
5265 "VISUAL_ISO_IEC_13818_2_422_PROFILE"
5266 }
5267 ObjectTypeIdentifier::AUDIO_ISO_IEC_13818_7_MAIN_PROFILE => {
5268 "AUDIO_ISO_IEC_13818_7_MAIN_PROFILE"
5269 }
5270 ObjectTypeIdentifier::AUDIO_ISO_IEC_13818_7_LOW_COMPLEXITY_PROFILE => {
5271 "AUDIO_ISO_IEC_13818_7_LOW_COMPLEXITY_PROFILE"
5272 }
5273 ObjectTypeIdentifier::AUDIO_ISO_IEC_13818_7_SCALEABLE_SAMPLING_RATE_PROFILE => {
5274 "AUDIO_ISO_IEC_13818_7_SCALEABLE_SAMPLING_RATE_PROFILE"
5275 }
5276 ObjectTypeIdentifier::AUDIO_ISO_IEC_13818_3 => "AUDIO_ISO_IEC_13818_3",
5277 ObjectTypeIdentifier::VISUAL_ISO_IEC_11172_2 => "VISUAL_ISO_IEC_11172_2",
5278 ObjectTypeIdentifier::AUDIO_ISO_IEC_11172_3 => "AUDIO_ISO_IEC_11172_3",
5279 ObjectTypeIdentifier::VISUAL_ISO_IEC_10918_1 => "VISUAL_ISO_IEC_10918_1",
5280 ObjectTypeIdentifier::PORTABLE_NETWORK_GRAPHICS => {
5281 "PORTABLE_NETWORK_GRAPHICS"
5282 }
5283 ObjectTypeIdentifier::VISUAL_ISO_IEC_15444_1 => "VISUAL_ISO_IEC_15444_1",
5284 ObjectTypeIdentifier::EVRC_VOICE => "EVRC_VOICE",
5285 ObjectTypeIdentifier::SMV_VOICE => "SMV_VOICE",
5286 ObjectTypeIdentifier::THREE_GPP_2_COMPACT_MULTIMEDIA_FORMAT => {
5287 "THREE_GPP_2_COMPACT_MULTIMEDIA_FORMAT"
5288 }
5289 ObjectTypeIdentifier::SMPTE_VC_1_VIDEO => "SMPTE_VC_1_VIDEO",
5290 ObjectTypeIdentifier::DIRAC_VIDEO_CODER => "DIRAC_VIDEO_CODER",
5291 ObjectTypeIdentifier(0xA5) => "WITHDRAWN",
5292 ObjectTypeIdentifier(0xA6) => "WITHDRAWN",
5293 ObjectTypeIdentifier::DRA_AUDIO => "DRA_AUDIO",
5294 ObjectTypeIdentifier::ITU_G_719_AUDIO => "ITU_G_719_AUDIO",
5295 ObjectTypeIdentifier::CORE_SUBSTREAM => "CORE_SUBSTREAM",
5296 ObjectTypeIdentifier::CORE_SUBSTREAM_EXTENSION_SUBSTREAM => {
5297 "CORE_SUBSTREAM_EXTENSION_SUBSTREAM"
5298 }
5299 ObjectTypeIdentifier::EXTENSION_SUBSTREAM_CONTAINING_ONLY_XLL => {
5300 "EXTENSION_SUBSTREAM_CONTAINING_ONLY_XLL"
5301 }
5302 ObjectTypeIdentifier::EXTENSION_SUBSTREAM_CONTAINING_ONLY_LBR => {
5303 "EXTENSION_SUBSTREAM_CONTAINING_ONLY_LBR"
5304 }
5305 ObjectTypeIdentifier::OPUS_AUDIO => "OPUS_AUDIO",
5306 ObjectTypeIdentifier(0xAE) => "WITHDRAWN",
5307 ObjectTypeIdentifier::AURO_CX_3_D_AUDIO => "AURO_CX_3_D_AUDIO",
5308 ObjectTypeIdentifier::REAL_VIDEO_CODEC_11 => "REAL_VIDEO_CODEC_11",
5309 ObjectTypeIdentifier::VP_9_VIDEO => "VP_9_VIDEO",
5310 ObjectTypeIdentifier::DTS_UHD_PROFILE_2 => "DTS_UHD_PROFILE_2",
5311 ObjectTypeIdentifier::DTS_UHD_PROFILE_3_OR_HIGHER => {
5312 "DTS_UHD_PROFILE_3_OR_HIGHER"
5313 }
5314 ObjectTypeIdentifier(0xc0..=0xe0) => "USER_PRIVATE",
5315 ObjectTypeIdentifier::ONE_3_K_VOICE => "ONE_3_K_VOICE",
5316 ObjectTypeIdentifier(0xe2..=0xfe) => "USER_PRIVATE",
5317 ObjectTypeIdentifier::NO_OBJECT_TYPE_SPECIFIED => "NO_OBJECT_TYPE_SPECIFIED",
5318 ObjectTypeIdentifier(_) => "RESERVED",
5319 };
5320 write!(f, "{}({:#04x})", label, self.0)
5321 }
5322}
5323impl BrandCode {
5324 /// Single intra-coded picture
5325 ///
5326 /// FourCC: `1pic`
5327 ///
5328 /// Specification: _HEIF_
5329 pub const ONE_PIC: BrandCode = BrandCode::new(*b"1pic");
5330 /// 3GPP2
5331 ///
5332 /// FourCC: `3g2a`
5333 ///
5334 /// Specification: _3GPP2_
5335 pub const THREE_G2A: BrandCode = BrandCode::new(*b"3g2a");
5336 /// 3GPP Release 6 extended-presentation Profile
5337 ///
5338 /// FourCC: `3ge6`
5339 ///
5340 /// Specification: _3GPP_
5341 pub const THREE_GE6: BrandCode = BrandCode::new(*b"3ge6");
5342 /// 3GPP Release 7 extended-presentation Profile
5343 ///
5344 /// FourCC: `3ge7`
5345 ///
5346 /// Specification: _3GPP_
5347 pub const THREE_GE7: BrandCode = BrandCode::new(*b"3ge7");
5348 /// 3GPP Release 9 Extended Presentation Profile
5349 ///
5350 /// FourCC: `3ge9`
5351 ///
5352 /// Specification: _3GPP_
5353 pub const THREE_GE9: BrandCode = BrandCode::new(*b"3ge9");
5354 /// 3GPP Release 9 File-delivery Server Profile
5355 ///
5356 /// FourCC: `3gf9`
5357 ///
5358 /// Specification: _3GPP_
5359 pub const THREE_GF9: BrandCode = BrandCode::new(*b"3gf9");
5360 /// 3GPP Release 6 General Profile
5361 ///
5362 /// FourCC: `3gg6`
5363 ///
5364 /// Specification: _3GPP_
5365 pub const THREE_GG6: BrandCode = BrandCode::new(*b"3gg6");
5366 /// 3GPP Release 9 General Profile
5367 ///
5368 /// FourCC: `3gg9`
5369 ///
5370 /// Specification: _3GPP_
5371 pub const THREE_GG9: BrandCode = BrandCode::new(*b"3gg9");
5372 /// 3GPP Release 9 Adaptive Streaming Profile
5373 ///
5374 /// FourCC: `3gh9`
5375 ///
5376 /// Specification: _3GPP_
5377 pub const THREE_GH9: BrandCode = BrandCode::new(*b"3gh9");
5378 /// 3GPP Release 9 Media Segment Profile
5379 ///
5380 /// FourCC: `3gm9`
5381 ///
5382 /// Specification: _3GPP_
5383 pub const THREE_GM9: BrandCode = BrandCode::new(*b"3gm9");
5384 /// 3GPP Media Segment conforming to the Media Segment Format for 3GP DASH
5385 ///
5386 /// FourCC: `3gmA`
5387 ///
5388 /// Specification: _3GPP-DASH_
5389 pub const THREE_GMA: BrandCode = BrandCode::new(*b"3gmA");
5390 /// 3GPP Release 4
5391 ///
5392 /// FourCC: `3gp4`
5393 ///
5394 /// Specification: _3GPP_
5395 pub const THREE_GP4: BrandCode = BrandCode::new(*b"3gp4");
5396 /// 3GPP Release 5
5397 ///
5398 /// FourCC: `3gp5`
5399 ///
5400 /// Specification: _3GPP_
5401 pub const THREE_GP5: BrandCode = BrandCode::new(*b"3gp5");
5402 /// 3GPP Release 6 basic Profile
5403 ///
5404 /// FourCC: `3gp6`
5405 ///
5406 /// Specification: _3GPP_
5407 pub const THREE_GP6: BrandCode = BrandCode::new(*b"3gp6");
5408 /// 3GPP Release 7
5409 ///
5410 /// FourCC: `3gp7`
5411 ///
5412 /// Specification: _3GPP_
5413 pub const THREE_GP7: BrandCode = BrandCode::new(*b"3gp7");
5414 /// 3GPP Release 8
5415 ///
5416 /// FourCC: `3gp8`
5417 ///
5418 /// Specification: _3GPP_
5419 pub const THREE_GP8: BrandCode = BrandCode::new(*b"3gp8");
5420 /// 3GPP Release 9 Basic Profile
5421 ///
5422 /// FourCC: `3gp9`
5423 ///
5424 /// Specification: _3GPP_
5425 pub const THREE_GP9: BrandCode = BrandCode::new(*b"3gp9");
5426 /// 3GPP Release 6 progressive-download Profile
5427 ///
5428 /// FourCC: `3gr6`
5429 ///
5430 /// Specification: _3GPP_
5431 pub const THREE_GR6: BrandCode = BrandCode::new(*b"3gr6");
5432 /// 3GPP Release 9 Progressive DownloadProfile
5433 ///
5434 /// FourCC: `3gr9`
5435 ///
5436 /// Specification: _3GPP_
5437 pub const THREE_GR9: BrandCode = BrandCode::new(*b"3gr9");
5438 /// 3GPP Release 6 streaming-server Profile
5439 ///
5440 /// FourCC: `3gs6`
5441 ///
5442 /// Specification: _3GPP_
5443 pub const THREE_GS6: BrandCode = BrandCode::new(*b"3gs6");
5444 /// 3GPP Release 9 Streaming ServerProfile
5445 ///
5446 /// FourCC: `3gs9`
5447 ///
5448 /// Specification: _3GPP_
5449 pub const THREE_GS9: BrandCode = BrandCode::new(*b"3gs9");
5450 /// 3GPP Release 8 Media Stream Recording Profile
5451 ///
5452 /// FourCC: `3gt8`
5453 ///
5454 /// Specification: _3GPP_
5455 pub const THREE_GT8: BrandCode = BrandCode::new(*b"3gt8");
5456 /// 3GPP Release 9 Media Stream Recording Profile
5457 ///
5458 /// FourCC: `3gt9`
5459 ///
5460 /// Specification: _3GPP_
5461 pub const THREE_GT9: BrandCode = BrandCode::new(*b"3gt9");
5462 /// 3GPP TV over 3GPP services
5463 ///
5464 /// FourCC: `3gtv`
5465 ///
5466 /// Specification: _3GPP-TVP_
5467 pub const THREE_GTV: BrandCode = BrandCode::new(*b"3gtv");
5468 /// 3GPP VR Presentation
5469 ///
5470 /// FourCC: `3gvr`
5471 ///
5472 /// Specification: _3GPP-VR_
5473 pub const THREE_GVR: BrandCode = BrandCode::new(*b"3gvr");
5474 /// 3GPP VR Advanced Video Media Profile
5475 ///
5476 /// FourCC: `3vra`
5477 ///
5478 /// Specification: _3GPP-VR_
5479 pub const THREE_VRA: BrandCode = BrandCode::new(*b"3vra");
5480 /// 3GPP VR Basic Video Media Profile
5481 ///
5482 /// FourCC: `3vrb`
5483 ///
5484 /// Specification: _3GPP-VR_
5485 pub const THREE_VRB: BrandCode = BrandCode::new(*b"3vrb");
5486 /// 3GPP VR Main Video Media Profile
5487 ///
5488 /// FourCC: `3vrm`
5489 ///
5490 /// Specification: _3GPP-VR_
5491 pub const THREE_VRM: BrandCode = BrandCode::new(*b"3vrm");
5492 /// Advanced tiling OMAF video profile
5493 ///
5494 /// FourCC: `adti`
5495 ///
5496 /// Specification: _OMAF_
5497 pub const ADTI: BrandCode = BrandCode::new(*b"adti");
5498 /// ID3 metadata carried as timed metadata in CMAF
5499 ///
5500 /// FourCC: `aid3`
5501 ///
5502 /// Specification: _CMAF-ID3_
5503 pub const AID3: BrandCode = BrandCode::new(*b"aid3");
5504 /// ARRI Digital Camera
5505 ///
5506 /// FourCC: `ARRI`
5507 ///
5508 /// Specification: _ARRI_
5509 pub const ARRI: BrandCode = BrandCode::new(*b"ARRI");
5510 /// AOM Video Codec
5511 ///
5512 /// FourCC: `av01`
5513 ///
5514 /// Specification: _AV1-ISOBMFF_
5515 pub const AV01: BrandCode = BrandCode::new(*b"av01");
5516 /// Advanced Video Coding extensions
5517 ///
5518 /// FourCC: `avc1`
5519 ///
5520 /// Specification: _ISO_
5521 pub const AVC1: BrandCode = BrandCode::new(*b"avc1");
5522 /// AVC image and image collection brands
5523 ///
5524 /// FourCC: `avci`
5525 ///
5526 /// Specification: _HEIF_
5527 pub const AVCI: BrandCode = BrandCode::new(*b"avci");
5528 /// AVC image sequence brands
5529 ///
5530 /// FourCC: `avcs`
5531 ///
5532 /// Specification: _HEIF_
5533 pub const AVCS: BrandCode = BrandCode::new(*b"avcs");
5534 /// AVC-based viewport-dependent OMAF video profile
5535 ///
5536 /// FourCC: `avde`
5537 ///
5538 /// Specification: _OMAF_
5539 pub const AVDE: BrandCode = BrandCode::new(*b"avde");
5540 /// AV1 image format brand
5541 ///
5542 /// FourCC: `avif`
5543 ///
5544 /// Specification: _AVIF_
5545 pub const AVIF: BrandCode = BrandCode::new(*b"avif");
5546 /// AV1 intra-only brand
5547 ///
5548 /// FourCC: `avio`
5549 ///
5550 /// Specification: _AVIF_
5551 pub const AVIO: BrandCode = BrandCode::new(*b"avio");
5552 /// AV1 image sequence brand
5553 ///
5554 /// FourCC: `avis`
5555 ///
5556 /// Specification: _AVIF_
5557 pub const AVIS: BrandCode = BrandCode::new(*b"avis");
5558 /// Blinkbox Master File: H.264 video and 16-bit little-endian LPCM audio
5559 ///
5560 /// FourCC: `bbxm`
5561 ///
5562 /// Specification: _Blinkbox_
5563 pub const BBXM: BrandCode = BrandCode::new(*b"bbxm");
5564 /// Canon Digital Camera
5565 ///
5566 /// FourCC: `CAEP`
5567 ///
5568 /// Specification: _Canon_
5569 pub const CAEP: BrandCode = BrandCode::new(*b"CAEP");
5570 /// Convergent Designs
5571 ///
5572 /// FourCC: `CDes`
5573 ///
5574 /// Specification: _Convergent_
5575 pub const CDES: BrandCode = BrandCode::new(*b"CDes");
5576 /// CMAF Media Profile - AC-4 Main
5577 ///
5578 /// FourCC: `ca4m`
5579 ///
5580 /// Specification: _ETSI AC-4_
5581 pub const CA4M: BrandCode = BrandCode::new(*b"ca4m");
5582 /// CMAF Media Profile - AC-4 Single Stream
5583 ///
5584 /// FourCC: `ca4s`
5585 ///
5586 /// Specification: _ETSI AC-4_
5587 pub const CA4S: BrandCode = BrandCode::new(*b"ca4s");
5588 /// CMAF Media Profile - AAC Adaptive Audio
5589 ///
5590 /// FourCC: `caaa`
5591 ///
5592 /// Specification: _CMAF_
5593 pub const CAAA: BrandCode = BrandCode::new(*b"caaa");
5594 /// CMAF Media Profile - AAC Core
5595 ///
5596 /// FourCC: `caac`
5597 ///
5598 /// Specification: _CMAF_
5599 pub const CAAC: BrandCode = BrandCode::new(*b"caac");
5600 /// CMAF Media Profile for OMAF 3D audio baseline profile
5601 ///
5602 /// FourCC: `cabl`
5603 ///
5604 /// Specification: _OMAF_
5605 pub const CABL: BrandCode = BrandCode::new(*b"cabl");
5606 /// CMAF Media Profile - AAC multichannel adaptive audio
5607 ///
5608 /// FourCC: `cama`
5609 ///
5610 /// Specification: _CMAF_
5611 pub const CAMA: BrandCode = BrandCode::new(*b"cama");
5612 /// CMAF Media Profile - AAC multichannel audio
5613 ///
5614 /// FourCC: `camc`
5615 ///
5616 /// Specification: _CMAF_
5617 pub const CAMC: BrandCode = BrandCode::new(*b"camc");
5618 /// Casio Digital Camera
5619 ///
5620 /// FourCC: `caqv`
5621 ///
5622 /// Specification: _Casio_
5623 pub const CAQV: BrandCode = BrandCode::new(*b"caqv");
5624 /// CMAF Media Profile - MPEG-D USAC audio
5625 ///
5626 /// FourCC: `casu`
5627 ///
5628 /// Specification: _CMAF_
5629 pub const CASU: BrandCode = BrandCode::new(*b"casu");
5630 /// CMAF Supplemental Data - CEA-608/708
5631 ///
5632 /// FourCC: `ccea`
5633 ///
5634 /// Specification: _CMAF_
5635 pub const CCEA: BrandCode = BrandCode::new(*b"ccea");
5636 /// Common container file format
5637 ///
5638 /// FourCC: `ccff`
5639 ///
5640 /// Specification: _DECE_
5641 pub const CCFF: BrandCode = BrandCode::new(*b"ccff");
5642 /// CMAF Media Profile - HEVC HDR10 (chd1) with SCTE Dynamic Metadata app #1 (ST2094-10)
5643 ///
5644 /// FourCC: `cdm1`
5645 ///
5646 /// Specification: _SCTE-215-1-1b_
5647 pub const CDM1: BrandCode = BrandCode::new(*b"cdm1");
5648 /// CMAF Media Profile compatibility to HDR10+ (ST2094-40)
5649 ///
5650 /// FourCC: `cdm4`
5651 ///
5652 /// Specification: _SCTE-215-1-1b_
5653 pub const CDM4: BrandCode = BrandCode::new(*b"cdm4");
5654 /// CMAF Media Profile - Enhanced AC-3
5655 ///
5656 /// FourCC: `ceac`
5657 ///
5658 /// Specification: _ETSI AC-3_
5659 pub const CEAC: BrandCode = BrandCode::new(*b"ceac");
5660 /// CMAF Media Profile - AVC HD
5661 ///
5662 /// FourCC: `cfhd`
5663 ///
5664 /// Specification: _CMAF_
5665 pub const CFHD: BrandCode = BrandCode::new(*b"cfhd");
5666 /// CMAF Media Profile - AVC SD
5667 ///
5668 /// FourCC: `cfsd`
5669 ///
5670 /// Specification: _CMAF_
5671 pub const CFSD: BrandCode = BrandCode::new(*b"cfsd");
5672 /// CMAF Media Profile - HEVC HDR10
5673 ///
5674 /// FourCC: `chd1`
5675 ///
5676 /// Specification: _CMAF_
5677 pub const CHD1: BrandCode = BrandCode::new(*b"chd1");
5678 /// CMAF Media Profile - AVC HDHF
5679 ///
5680 /// FourCC: `chdf`
5681 ///
5682 /// Specification: _CMAF_
5683 pub const CHDF: BrandCode = BrandCode::new(*b"chdf");
5684 /// CMAF Media Profile for the HEVC-based viewport-dependent OMAF video profile
5685 ///
5686 /// FourCC: `chev`
5687 ///
5688 /// Specification: _OMAF_
5689 pub const CHEV: BrandCode = BrandCode::new(*b"chev");
5690 /// CMAF High frame rate Media Profile - HEVC HDR10H
5691 ///
5692 /// FourCC: `chd2`
5693 ///
5694 /// Specification: _CMAF_
5695 pub const CHD2: BrandCode = BrandCode::new(*b"chd2");
5696 /// CMAF Media Profile - HEVC HHD10
5697 ///
5698 /// FourCC: `chh1`
5699 ///
5700 /// Specification: _CMAF_
5701 pub const CHH1: BrandCode = BrandCode::new(*b"chh1");
5702 /// CMAF Media Profile - HEVC HHD8
5703 ///
5704 /// FourCC: `chhd`
5705 ///
5706 /// Specification: _CMAF_
5707 pub const CHHD: BrandCode = BrandCode::new(*b"chhd");
5708 /// CMAF Interlaced Media Profile - INT10
5709 ///
5710 /// FourCC: `cint`
5711 ///
5712 /// Specification: _CMAF_
5713 pub const CINT: BrandCode = BrandCode::new(*b"cint");
5714 /// CMAF Media Profile - HEVC HLG10
5715 ///
5716 /// FourCC: `clg1`
5717 ///
5718 /// Specification: _CMAF_
5719 pub const CLG1: BrandCode = BrandCode::new(*b"clg1");
5720 /// CMAF High frame rate Media Profile - HEVC HLG10H
5721 ///
5722 /// FourCC: `clg2`
5723 ///
5724 /// Specification: _CMAF_
5725 pub const CLG2: BrandCode = BrandCode::new(*b"clg2");
5726 /// CMAF Structural Brand
5727 ///
5728 /// FourCC: `cmf2`
5729 ///
5730 /// Specification: _CMAF_
5731 pub const CMF2: BrandCode = BrandCode::new(*b"cmf2");
5732 /// CMAF Structural Brand
5733 ///
5734 /// FourCC: `cmfc`
5735 ///
5736 /// Specification: _CMAF_
5737 pub const CMFC: BrandCode = BrandCode::new(*b"cmfc");
5738 /// CMAF Fragment Format
5739 ///
5740 /// FourCC: `cmff`
5741 ///
5742 /// Specification: _CMAF_
5743 pub const CMFF: BrandCode = BrandCode::new(*b"cmff");
5744 /// CMAF Chunk Format
5745 ///
5746 /// FourCC: `cmfl`
5747 ///
5748 /// Specification: _CMAF_
5749 pub const CMFL: BrandCode = BrandCode::new(*b"cmfl");
5750 /// CMAF Segment Format
5751 ///
5752 /// FourCC: `cmfs`
5753 ///
5754 /// Specification: _CMAF_
5755 pub const CMFS: BrandCode = BrandCode::new(*b"cmfs");
5756 /// CMAF Media Profile - MPEG-H 3D audio LC (mhm2)
5757 ///
5758 /// FourCC: `cmhm`
5759 ///
5760 /// Specification: _CMAF_
5761 pub const CMHM: BrandCode = BrandCode::new(*b"cmhm");
5762 /// CMAF Media Profile - MPEG-H 3D audio LC (mhm1)
5763 ///
5764 /// FourCC: `cmhs`
5765 ///
5766 /// Specification: _CMAF_
5767 pub const CMHS: BrandCode = BrandCode::new(*b"cmhs");
5768 /// Compressed boxes
5769 ///
5770 /// FourCC: `comp`
5771 ///
5772 /// Specification: _ISO_
5773 pub const COMP: BrandCode = BrandCode::new(*b"comp");
5774 /// CMAF Media Profile - Scalable HEVC media profile
5775 ///
5776 /// FourCC: `csh1`
5777 ///
5778 /// Specification: _CMAF_
5779 pub const CSH1: BrandCode = BrandCode::new(*b"csh1");
5780 /// CMAF Media Profile - HEVC UHD10
5781 ///
5782 /// FourCC: `cud1`
5783 ///
5784 /// Specification: _CMAF_
5785 pub const CUD1: BrandCode = BrandCode::new(*b"cud1");
5786 /// CMAF High frame rate Media Profile - HEVC UHD10H
5787 ///
5788 /// FourCC: `cud2`
5789 ///
5790 /// Specification: _CMAF_
5791 pub const CUD2: BrandCode = BrandCode::new(*b"cud2");
5792 /// CMAF Media Profile - HEVC UHD8
5793 ///
5794 /// FourCC: `cud8`
5795 ///
5796 /// Specification: _CMAF_
5797 pub const CUD8: BrandCode = BrandCode::new(*b"cud8");
5798 /// CMAF High frame rate Media Profile - HEVC UHD8H
5799 ///
5800 /// FourCC: `cud9`
5801 ///
5802 /// Specification: _CMAF_
5803 pub const CUD9: BrandCode = BrandCode::new(*b"cud9");
5804 /// CMAF Media Profile for the unconstrained HEVC-based viewport-independent OMAF video profile
5805 ///
5806 /// FourCC: `cuvd`
5807 ///
5808 /// Specification: _OMAF_
5809 pub const CUVD: BrandCode = BrandCode::new(*b"cuvd");
5810 /// CMAF Media Profile for the HEVC-based viewport-independent OMAF video profile
5811 ///
5812 /// FourCC: `cvid`
5813 ///
5814 /// Specification: _OMAF_
5815 pub const CVID: BrandCode = BrandCode::new(*b"cvid");
5816 /// Baseline VVC media profile
5817 ///
5818 /// FourCC: `cvvc`
5819 ///
5820 /// Specification: _CMAF_
5821 pub const CVVC: BrandCode = BrandCode::new(*b"cvvc");
5822 /// CMAF Media Profile - WebVTT
5823 ///
5824 /// FourCC: `cwvt`
5825 ///
5826 /// Specification: _CMAF_
5827 pub const CWVT: BrandCode = BrandCode::new(*b"cwvt");
5828 /// DMB AF audio with MPEG Layer II audio, MOT slide show, DLS, JPG/PNG/MNG images
5829 ///
5830 /// FourCC: `da0a`
5831 ///
5832 /// Specification: _DMB-MAF_
5833 pub const DA0A: BrandCode = BrandCode::new(*b"da0a");
5834 /// DMB AF, extending da0a , with 3GPP timed text, DID, TVA, REL, IPMP
5835 ///
5836 /// FourCC: `da0b`
5837 ///
5838 /// Specification: _DMB-MAF_
5839 pub const DA0B: BrandCode = BrandCode::new(*b"da0b");
5840 /// DMB AF audio with ER-BSAC audio, JPG/PNG/MNG images
5841 ///
5842 /// FourCC: `da1a`
5843 ///
5844 /// Specification: _DMB-MAF_
5845 pub const DA1A: BrandCode = BrandCode::new(*b"da1a");
5846 /// DMB AF, extending da1a, with 3GPP timed text, DID, TVA, REL, IPMP
5847 ///
5848 /// FourCC: `da1b`
5849 ///
5850 /// Specification: _DMB-MAF_
5851 pub const DA1B: BrandCode = BrandCode::new(*b"da1b");
5852 /// DMB AF audio with HE-AAC v2 audio, MOT slide show, DLS, JPG/PNG/MNG images
5853 ///
5854 /// FourCC: `da2a`
5855 ///
5856 /// Specification: _DMB-MAF_
5857 pub const DA2A: BrandCode = BrandCode::new(*b"da2a");
5858 /// DMB AF extending da2a, with 3GPP timed text, DID, TVA, REL, IPMP
5859 ///
5860 /// FourCC: `da2b`
5861 ///
5862 /// Specification: _DMB-MAF_
5863 pub const DA2B: BrandCode = BrandCode::new(*b"da2b");
5864 /// DMB AF audio with HE-AAC, JPG/PNG/MNG images
5865 ///
5866 /// FourCC: `da3a`
5867 ///
5868 /// Specification: _DMB-MAF_
5869 pub const DA3A: BrandCode = BrandCode::new(*b"da3a");
5870 /// DMB AF extending da3a with BIFS, 3GPP timed text, DID, TVA, REL, IPMP
5871 ///
5872 /// FourCC: `da3b`
5873 ///
5874 /// Specification: _DMB-MAF_
5875 pub const DA3B: BrandCode = BrandCode::new(*b"da3b");
5876 /// ISO base media file format file specifically designed for DASH including movie fragments and Segment Index.
5877 ///
5878 /// FourCC: `dash`
5879 ///
5880 /// Specification: _DASH_
5881 pub const DASH: BrandCode = BrandCode::new(*b"dash");
5882 /// Dolby Vision cross-compatible with HDR10
5883 ///
5884 /// FourCC: `db1p`
5885 ///
5886 /// Specification: _Dolby_
5887 pub const DB1P: BrandCode = BrandCode::new(*b"db1p");
5888 /// Dolby Vision cross-compatible with SDR
5889 ///
5890 /// FourCC: `db2g`
5891 ///
5892 /// Specification: _Dolby_
5893 pub const DB2G: BrandCode = BrandCode::new(*b"db2g");
5894 /// Dolby Vision cross-compatible with HLG (VUI =18)
5895 ///
5896 /// FourCC: `db4h`
5897 ///
5898 /// Specification: _Dolby_
5899 pub const DB4H: BrandCode = BrandCode::new(*b"db4h");
5900 /// Dolby Vision cross-compatible with HLG (VUI=14)
5901 ///
5902 /// FourCC: `db4g`
5903 ///
5904 /// Specification: _Dolby_
5905 pub const DB4G: BrandCode = BrandCode::new(*b"db4g");
5906 /// MP4 files with Dolby content (e.g. Dolby AC-4, Dolby Digital Plus, Dolby TrueHD (Dolby MLP))
5907 ///
5908 /// FourCC: `dby1`
5909 ///
5910 /// Specification: _Dolby_
5911 pub const DBY1: BrandCode = BrandCode::new(*b"dby1");
5912 /// DMB AF supporting all the components defined in the specification
5913 ///
5914 /// FourCC: `dmb1`
5915 ///
5916 /// Specification: _DMB-MAF_
5917 pub const DMB1: BrandCode = BrandCode::new(*b"dmb1");
5918 /// Media Segment conforming to the DASH Self-Initializing Media Segment format type for ISO base media file format
5919 ///
5920 /// FourCC: `dsms`
5921 ///
5922 /// Specification: _DASH_
5923 pub const DSMS: BrandCode = BrandCode::new(*b"dsms");
5924 /// CMAF media profile for audio codecs dtsc dtsh or dtse
5925 ///
5926 /// FourCC: `dts1`
5927 ///
5928 /// Specification: _DTS-HD_
5929 pub const DTS1: BrandCode = BrandCode::new(*b"dts1");
5930 /// CMAF media profile for audio codec dtsx
5931 ///
5932 /// FourCC: `dts2`
5933 ///
5934 /// Specification: _DTS-UHD_
5935 pub const DTS2: BrandCode = BrandCode::new(*b"dts2");
5936 /// CMAF media profile for audio codec dtsy
5937 ///
5938 /// FourCC: `dts3`
5939 ///
5940 /// Specification: _DTS-UHD_
5941 pub const DTS3: BrandCode = BrandCode::new(*b"dts3");
5942 /// DMB AF video with AVC video, ER-BSAC audio, BIFS, JPG/PNG/MNG images, TS
5943 ///
5944 /// FourCC: `dv1a`
5945 ///
5946 /// Specification: _DMB-MAF_
5947 pub const DV1A: BrandCode = BrandCode::new(*b"dv1a");
5948 /// DMB AF, extending dv1a, with 3GPP timed text, DID, TVA, REL, IPMP
5949 ///
5950 /// FourCC: `dv1b`
5951 ///
5952 /// Specification: _DMB-MAF_
5953 pub const DV1B: BrandCode = BrandCode::new(*b"dv1b");
5954 /// DMB AF video with AVC video, HE-AACv2 audio, BIFS, JPG/PNG/MNG images, TS
5955 ///
5956 /// FourCC: `dv2a`
5957 ///
5958 /// Specification: _DMB-MAF_
5959 pub const DV2A: BrandCode = BrandCode::new(*b"dv2a");
5960 /// DMB AF extending dv2a, with 3GPP timed text, DID, TVA, REL, IPMP
5961 ///
5962 /// FourCC: `dv2b`
5963 ///
5964 /// Specification: _DMB-MAF_
5965 pub const DV2B: BrandCode = BrandCode::new(*b"dv2b");
5966 /// DMB AF video with AVC video, HE-AAC audio, BIFS, JPG/PNG/MNG images, TS
5967 ///
5968 /// FourCC: `dv3a`
5969 ///
5970 /// Specification: _DMB-MAF_
5971 pub const DV3A: BrandCode = BrandCode::new(*b"dv3a");
5972 /// DMB AF extending dv3a with 3GPP timed text, DID, TVA, REL, IPMP
5973 ///
5974 /// FourCC: `dv3b`
5975 ///
5976 /// Specification: _DMB-MAF_
5977 pub const DV3B: BrandCode = BrandCode::new(*b"dv3b");
5978 /// DVB RTP
5979 ///
5980 /// FourCC: `dvr1`
5981 ///
5982 /// Specification: _DVB_
5983 pub const DVR1: BrandCode = BrandCode::new(*b"dvr1");
5984 /// DVB Transport Stream
5985 ///
5986 /// FourCC: `dvt1`
5987 ///
5988 /// Specification: _DVB_
5989 pub const DVT1: BrandCode = BrandCode::new(*b"dvt1");
5990 /// DxO ONE camera
5991 ///
5992 /// FourCC: `dxo `
5993 ///
5994 /// Specification: _DxO_
5995 pub const DXO: BrandCode = BrandCode::new(*b"dxo ");
5996 /// Event message box present
5997 ///
5998 /// FourCC: `emsg`
5999 ///
6000 /// Specification: _DASH_
6001 pub const EMSG: BrandCode = BrandCode::new(*b"emsg");
6002 /// EVC Baseline coded image
6003 ///
6004 /// FourCC: `evbi`
6005 ///
6006 /// Specification: _HEIF_
6007 pub const EVBI: BrandCode = BrandCode::new(*b"evbi");
6008 /// EVC Baseline coded image sequence
6009 ///
6010 /// FourCC: `evbs`
6011 ///
6012 /// Specification: _HEIF_
6013 pub const EVBS: BrandCode = BrandCode::new(*b"evbs");
6014 /// EVC Main coded image
6015 ///
6016 /// FourCC: `evmi`
6017 ///
6018 /// Specification: _HEIF_
6019 pub const EVMI: BrandCode = BrandCode::new(*b"evmi");
6020 /// EVC Main coded image sequenc
6021 ///
6022 /// FourCC: `evms`
6023 ///
6024 /// Specification: _HEIF_
6025 pub const EVMS: BrandCode = BrandCode::new(*b"evms");
6026 /// HEVC image and image collection brands
6027 ///
6028 /// FourCC: `heic`
6029 ///
6030 /// Specification: _HEIF_
6031 pub const HEIC: BrandCode = BrandCode::new(*b"heic");
6032 /// L-HEVC image and image collection brands
6033 ///
6034 /// FourCC: `heim`
6035 ///
6036 /// Specification: _HEIF_
6037 pub const HEIM: BrandCode = BrandCode::new(*b"heim");
6038 /// L-HEVC image and image collection brands
6039 ///
6040 /// FourCC: `heis`
6041 ///
6042 /// Specification: _HEIF_
6043 pub const HEIS: BrandCode = BrandCode::new(*b"heis");
6044 /// HEVC image and image collection brands
6045 ///
6046 /// FourCC: `heix`
6047 ///
6048 /// Specification: _HEIF_
6049 pub const HEIX: BrandCode = BrandCode::new(*b"heix");
6050 /// OMAF HEVC image profile
6051 ///
6052 /// FourCC: `heoi`
6053 ///
6054 /// Specification: _OMAF_
6055 pub const HEOI: BrandCode = BrandCode::new(*b"heoi");
6056 /// HEVC image sequence brands
6057 ///
6058 /// FourCC: `hevc`
6059 ///
6060 /// Specification: _HEIF_
6061 pub const HEVC: BrandCode = BrandCode::new(*b"hevc");
6062 /// HEVC-based viewport-dependent OMAF video profile
6063 ///
6064 /// FourCC: `hevd`
6065 ///
6066 /// Specification: _OMAF_
6067 pub const HEVD: BrandCode = BrandCode::new(*b"hevd");
6068 /// HEVC-based viewport-independent OMAF video profile
6069 ///
6070 /// FourCC: `hevi`
6071 ///
6072 /// Specification: _OMAF_
6073 pub const HEVI: BrandCode = BrandCode::new(*b"hevi");
6074 /// L-HEVC image sequence brands
6075 ///
6076 /// FourCC: `hevm`
6077 ///
6078 /// Specification: _HEIF_
6079 pub const HEVM: BrandCode = BrandCode::new(*b"hevm");
6080 /// L-HEVC image sequence brands
6081 ///
6082 /// FourCC: `hevs`
6083 ///
6084 /// Specification: _HEIF_
6085 pub const HEVS: BrandCode = BrandCode::new(*b"hevs");
6086 /// HEVC image sequence brands
6087 ///
6088 /// FourCC: `hevx`
6089 ///
6090 /// Specification: _HEIF_
6091 pub const HEVX: BrandCode = BrandCode::new(*b"hevx");
6092 /// L-HEVC explicit reconstruction
6093 ///
6094 /// FourCC: `hvce`
6095 ///
6096 /// Specification: _NALu Video_
6097 pub const HVCE: BrandCode = BrandCode::new(*b"hvce");
6098 /// L-HEVC implicit reconstruction
6099 ///
6100 /// FourCC: `hvci`
6101 ///
6102 /// Specification: _NALu Video_
6103 pub const HVCI: BrandCode = BrandCode::new(*b"hvci");
6104 /// L-HEVC extended explicit reconstruction brand
6105 ///
6106 /// FourCC: `hvcx`
6107 ///
6108 /// Specification: _NALu Video_
6109 pub const HVCX: BrandCode = BrandCode::new(*b"hvcx");
6110 /// HEVC Tile Track
6111 ///
6112 /// FourCC: `hvti`
6113 ///
6114 /// Specification: _NALu Video_
6115 pub const HVTI: BrandCode = BrandCode::new(*b"hvti");
6116 /// The IFE-SD Media Profile
6117 ///
6118 /// FourCC: `ifsd`
6119 ///
6120 /// Specification: _IFE_
6121 pub const IFSD: BrandCode = BrandCode::new(*b"ifsd");
6122 /// The IFE-HSD Media Profile
6123 ///
6124 /// FourCC: `ifhs`
6125 ///
6126 /// Specification: _IFE_
6127 pub const IFHS: BrandCode = BrandCode::new(*b"ifhs");
6128 /// The IFE-HD Media Profile
6129 ///
6130 /// FourCC: `ifhd`
6131 ///
6132 /// Specification: _IFE_
6133 pub const IFHD: BrandCode = BrandCode::new(*b"ifhd");
6134 /// The IFE-HHD10 Media Profile
6135 ///
6136 /// FourCC: `ifhx`
6137 ///
6138 /// Specification: _IFE_
6139 pub const IFHX: BrandCode = BrandCode::new(*b"ifhx");
6140 /// The IFE-HDHDR Media Profile
6141 ///
6142 /// FourCC: `ifhh`
6143 ///
6144 /// Specification: _IFE_
6145 pub const IFHH: BrandCode = BrandCode::new(*b"ifhh");
6146 /// The IFE-UHD10 Media Profile
6147 ///
6148 /// FourCC: `ifhu`
6149 ///
6150 /// Specification: _IFE_
6151 pub const IFHU: BrandCode = BrandCode::new(*b"ifhu");
6152 /// The IFE-HDR10 Media Profile
6153 ///
6154 /// FourCC: `ifhr`
6155 ///
6156 /// Specification: _IFE_
6157 pub const IFHR: BrandCode = BrandCode::new(*b"ifhr");
6158 /// The IFE-AAC Core Media Profile
6159 ///
6160 /// FourCC: `ifaa`
6161 ///
6162 /// Specification: _IFE_
6163 pub const IFAA: BrandCode = BrandCode::new(*b"ifaa");
6164 /// The IFE-AV1-SD Media Profile
6165 ///
6166 /// FourCC: `ifas`
6167 ///
6168 /// Specification: _IFE_
6169 pub const IFAS: BrandCode = BrandCode::new(*b"ifas");
6170 /// The IFE-AV1-HD Media Profile
6171 ///
6172 /// FourCC: `ifah`
6173 ///
6174 /// Specification: _IFE_
6175 pub const IFAH: BrandCode = BrandCode::new(*b"ifah");
6176 /// The IFE-AV1-HDHDR Media Profile
6177 ///
6178 /// FourCC: `ifai`
6179 ///
6180 /// Specification: _IFE_
6181 pub const IFAI: BrandCode = BrandCode::new(*b"ifai");
6182 /// The IFE-AV1-UHD10 Media Profile
6183 ///
6184 /// FourCC: `ifau`
6185 ///
6186 /// Specification: _IFE_
6187 pub const IFAU: BrandCode = BrandCode::new(*b"ifau");
6188 /// The IFE-AV1-HDR10 Media Profile
6189 ///
6190 /// FourCC: `ifav`
6191 ///
6192 /// Specification: _IFE_
6193 pub const IFAV: BrandCode = BrandCode::new(*b"ifav");
6194 /// Apple iFrame Specification, Version 8.1 Jan 2013
6195 ///
6196 /// FourCC: `ifrm`
6197 ///
6198 /// Specification: _Apple_
6199 pub const IFRM: BrandCode = BrandCode::new(*b"ifrm");
6200 /// CMAF Media Profile - IMSC1 Image
6201 ///
6202 /// FourCC: `im1i`
6203 ///
6204 /// Specification: _CMAF_
6205 pub const IM1I: BrandCode = BrandCode::new(*b"im1i");
6206 /// CMAF Media Profile - IMSC1 Text
6207 ///
6208 /// FourCC: `im1t`
6209 ///
6210 /// Specification: _CMAF_
6211 pub const IM1T: BrandCode = BrandCode::new(*b"im1t");
6212 /// CMAF Media Profile - IMSC1.1 Image
6213 ///
6214 /// FourCC: `im2i`
6215 ///
6216 /// Specification: _CMAF_
6217 pub const IM2I: BrandCode = BrandCode::new(*b"im2i");
6218 /// CMAF Media Profile - IMSC1.1 Text
6219 ///
6220 /// FourCC: `im2t`
6221 ///
6222 /// Specification: _CMAF_
6223 pub const IM2T: BrandCode = BrandCode::new(*b"im2t");
6224 /// Files encrypted according to ISMACryp 2.0
6225 ///
6226 /// FourCC: `isc2`
6227 ///
6228 /// Specification: _ISMACryp2_
6229 pub const ISC2: BrandCode = BrandCode::new(*b"isc2");
6230 /// All files based on the 2004 edition of the ISO file format
6231 ///
6232 /// FourCC: `iso2`
6233 ///
6234 /// Specification: _ISO_
6235 pub const ISO2: BrandCode = BrandCode::new(*b"iso2");
6236 /// Version of the ISO file format
6237 ///
6238 /// FourCC: `iso3`
6239 ///
6240 /// Specification: _ISO_
6241 pub const ISO3: BrandCode = BrandCode::new(*b"iso3");
6242 /// Version of the ISO file format
6243 ///
6244 /// FourCC: `iso4`
6245 ///
6246 /// Specification: _ISO_
6247 pub const ISO4: BrandCode = BrandCode::new(*b"iso4");
6248 /// Version of the ISO file format
6249 ///
6250 /// FourCC: `iso5`
6251 ///
6252 /// Specification: _ISO_
6253 pub const ISO5: BrandCode = BrandCode::new(*b"iso5");
6254 /// Version of the ISO file format
6255 ///
6256 /// FourCC: `iso6`
6257 ///
6258 /// Specification: _ISO_
6259 pub const ISO6: BrandCode = BrandCode::new(*b"iso6");
6260 /// Version of the ISO file format
6261 ///
6262 /// FourCC: `iso7`
6263 ///
6264 /// Specification: _ISO_
6265 pub const ISO7: BrandCode = BrandCode::new(*b"iso7");
6266 /// Version of the ISO file format
6267 ///
6268 /// FourCC: `iso8`
6269 ///
6270 /// Specification: _ISO_
6271 pub const ISO8: BrandCode = BrandCode::new(*b"iso8");
6272 /// Version of the ISO file format
6273 ///
6274 /// FourCC: `iso9`
6275 ///
6276 /// Specification: _ISO_
6277 pub const ISO9: BrandCode = BrandCode::new(*b"iso9");
6278 /// Version of the ISO file format
6279 ///
6280 /// FourCC: `isoa`
6281 ///
6282 /// Specification: _ISO_
6283 pub const ISOA: BrandCode = BrandCode::new(*b"isoa");
6284 /// Version of the ISO file format
6285 ///
6286 /// FourCC: `isob`
6287 ///
6288 /// Specification: _ISO_
6289 pub const ISOB: BrandCode = BrandCode::new(*b"isob");
6290 /// Version of the ISO file format
6291 ///
6292 /// FourCC: `isoc`
6293 ///
6294 /// Specification: _ISO_
6295 pub const ISOC: BrandCode = BrandCode::new(*b"isoc");
6296 /// All files based on the ISO Base Media File Format
6297 ///
6298 /// FourCC: `isom`
6299 ///
6300 /// Specification: _ISO_
6301 pub const ISOM: BrandCode = BrandCode::new(*b"isom");
6302 /// JPEG 2000 image and image collections in ISO/IEC 23008-12 files
6303 ///
6304 /// FourCC: `j2ki`
6305 ///
6306 /// Specification: _J2KHEIF_
6307 pub const J2KI: BrandCode = BrandCode::new(*b"j2ki");
6308 /// Motion JPEG 2000 in ISO/IEC 23008-12 files
6309 ///
6310 /// FourCC: `j2ks`
6311 ///
6312 /// Specification: _J2KHEIF_
6313 pub const J2KS: BrandCode = BrandCode::new(*b"j2ks");
6314 /// JPEG 2000 image sequence in ISO/IEC 23008-12 files
6315 ///
6316 /// FourCC: `j2is`
6317 ///
6318 /// Specification: _J2KHEIF_
6319 pub const J2IS: BrandCode = BrandCode::new(*b"j2is");
6320 /// JPEG2000 Profile 0
6321 ///
6322 /// FourCC: `J2P0`
6323 ///
6324 /// Specification: _JPEG2000_
6325 pub const J2P0: BrandCode = BrandCode::new(*b"J2P0");
6326 /// JPEG2000 Profile 1
6327 ///
6328 /// FourCC: `J2P1`
6329 ///
6330 /// Specification: _JPEG2000_
6331 pub const J2P1: BrandCode = BrandCode::new(*b"J2P1");
6332 /// JPEG2000 Part 1
6333 ///
6334 /// FourCC: `jp2 `
6335 ///
6336 /// Specification: _JPEG2000_
6337 pub const JP2: BrandCode = BrandCode::new(*b"jp2 ");
6338 /// JPEG-specific still image brand
6339 ///
6340 /// FourCC: `jpeg`
6341 ///
6342 /// Specification: _HEIF_
6343 pub const JPEG: BrandCode = BrandCode::new(*b"jpeg");
6344 /// JPEG image sequence brands
6345 ///
6346 /// FourCC: `jpgs`
6347 ///
6348 /// Specification: _HEIF_
6349 pub const JPGS: BrandCode = BrandCode::new(*b"jpgs");
6350 /// JPEG 2000 Part 6 Compound Images
6351 ///
6352 /// FourCC: `jpm `
6353 ///
6354 /// Specification: _JPM_
6355 pub const JPM: BrandCode = BrandCode::new(*b"jpm ");
6356 /// OMAF legacy image profile
6357 ///
6358 /// FourCC: `jpoi`
6359 ///
6360 /// Specification: _OMAF_
6361 pub const JPOI: BrandCode = BrandCode::new(*b"jpoi");
6362 /// The JPSearch data interchange format, for the exchange of image collections and respective metadata
6363 ///
6364 /// FourCC: `jpsi`
6365 ///
6366 /// Specification: _JPSearch_
6367 pub const JPSI: BrandCode = BrandCode::new(*b"jpsi");
6368 /// JPEG2000 Part 2
6369 ///
6370 /// FourCC: `jpx `
6371 ///
6372 /// Specification: _JPX_
6373 pub const JPX: BrandCode = BrandCode::new(*b"jpx ");
6374 /// JPEG XR
6375 ///
6376 /// FourCC: `jpxb`
6377 ///
6378 /// Specification: _JPXR_
6379 pub const JPXB: BrandCode = BrandCode::new(*b"jpxb");
6380 /// JPEG XL
6381 ///
6382 /// FourCC: `jxl `
6383 ///
6384 /// Specification: _JPEG XL_
6385 pub const JXL: BrandCode = BrandCode::new(*b"jxl ");
6386 /// Still Image File Format for JPEG XS
6387 ///
6388 /// FourCC: `jxs `
6389 ///
6390 /// Specification: _JPXS_
6391 pub const JXS: BrandCode = BrandCode::new(*b"jxs ");
6392 /// Codestream for JPEG XS
6393 ///
6394 /// FourCC: `jxsc`
6395 ///
6396 /// Specification: _JPXS_
6397 pub const JXSC: BrandCode = BrandCode::new(*b"jxsc");
6398 /// JPEG XS image and image collections for HEIF
6399 ///
6400 /// FourCC: `jxsi`
6401 ///
6402 /// Specification: _JPXS_
6403 pub const JXSI: BrandCode = BrandCode::new(*b"jxsi");
6404 /// JPEG XS image sequences for HEIF
6405 ///
6406 /// FourCC: `jxss`
6407 ///
6408 /// Specification: _JPXS_
6409 pub const JXSS: BrandCode = BrandCode::new(*b"jxss");
6410 /// Leica digital camera
6411 ///
6412 /// FourCC: `LCAG`
6413 ///
6414 /// Specification: _Leica_
6415 pub const LCAG: BrandCode = BrandCode::new(*b"LCAG");
6416 /// L-HEVC Tile Track Explicit brand
6417 ///
6418 /// FourCC: `lhte`
6419 ///
6420 /// Specification: _NALu Video_
6421 pub const LHTE: BrandCode = BrandCode::new(*b"lhte");
6422 /// L-HEVC Tile Track Implicit brand
6423 ///
6424 /// FourCC: `lhti`
6425 ///
6426 /// Specification: _NALu Video_
6427 pub const LHTI: BrandCode = BrandCode::new(*b"lhti");
6428 /// last Media Segment indicator for ISO base media file format.
6429 ///
6430 /// FourCC: `lmsg`
6431 ///
6432 /// Specification: _DASH_
6433 pub const LMSG: BrandCode = BrandCode::new(*b"lmsg");
6434 /// iTunes MPEG-4 audio protected or not, can contain audio + video + 3g text track + chapter track
6435 ///
6436 /// FourCC: `M4A `
6437 ///
6438 /// Specification: _iTunes_
6439 pub const M4A: BrandCode = BrandCode::new(*b"M4A ");
6440 /// iTunes AudioBook protected or not, can contain audio + video + 3g text track + chapter track
6441 ///
6442 /// FourCC: `M4B `
6443 ///
6444 /// Specification: _iTunes_
6445 pub const M4B: BrandCode = BrandCode::new(*b"M4B ");
6446 /// MPEG-4 protected audio
6447 ///
6448 /// FourCC: `M4P `
6449 ///
6450 /// Specification: _iTunes_
6451 pub const M4P: BrandCode = BrandCode::new(*b"M4P ");
6452 /// MPEG-4 protected audio+video
6453 ///
6454 /// FourCC: `M4V `
6455 ///
6456 /// Specification: _iTunes_
6457 pub const M4V: BrandCode = BrandCode::new(*b"M4V ");
6458 /// AVIF Baseline Profile
6459 ///
6460 /// FourCC: `MA1B`
6461 ///
6462 /// Specification: _AVIF_
6463 pub const MA1B: BrandCode = BrandCode::new(*b"MA1B");
6464 /// AVIF Advanced Profile
6465 ///
6466 /// FourCC: `MA1A`
6467 ///
6468 /// Specification: _AVIF_
6469 pub const MA1A: BrandCode = BrandCode::new(*b"MA1A");
6470 /// Media File for Samsung video Metadata
6471 ///
6472 /// FourCC: `MFSM`
6473 ///
6474 /// Specification: _Samsung_
6475 pub const MFSM: BrandCode = BrandCode::new(*b"MFSM");
6476 /// Home and Mobile Multimedia Platform (HMMP)
6477 ///
6478 /// FourCC: `MGSV`
6479 ///
6480 /// Specification: _Sony_
6481 pub const MGSV: BrandCode = BrandCode::new(*b"MGSV");
6482 /// Multi-Image Application format brand for MIAF AVC Basic Profile
6483 ///
6484 /// FourCC: `MiAB`
6485 ///
6486 /// Specification: _MIAF_
6487 pub const MIAB: BrandCode = BrandCode::new(*b"MiAB");
6488 /// Multi-Image Application format brand for fragmented alpha video
6489 ///
6490 /// FourCC: `MiAC`
6491 ///
6492 /// Specification: _MIAF_
6493 pub const MIAC: BrandCode = BrandCode::new(*b"MiAC");
6494 /// Multi-Image Application format brand for general MIAF requirements
6495 ///
6496 /// FourCC: `miaf`
6497 ///
6498 /// Specification: _MIAF_
6499 pub const MIAF: BrandCode = BrandCode::new(*b"miaf");
6500 /// Mutli-Image Application format brand for animation
6501 ///
6502 /// FourCC: `MiAn`
6503 ///
6504 /// Specification: _MIAF_
6505 pub const MIAN: BrandCode = BrandCode::new(*b"MiAn");
6506 /// Multi-Image Application format brand for burst capture
6507 ///
6508 /// FourCC: `MiBu`
6509 ///
6510 /// Specification: _MIAF_
6511 pub const MIBU: BrandCode = BrandCode::new(*b"MiBu");
6512 /// Multi-Image Application format brand for CMAF compatibility
6513 ///
6514 /// FourCC: `MiCm`
6515 ///
6516 /// Specification: _MIAF_
6517 pub const MICM: BrandCode = BrandCode::new(*b"MiCm");
6518 /// Image file format structural brand
6519 ///
6520 /// FourCC: `mif1`
6521 ///
6522 /// Specification: _HEIF_
6523 pub const MIF1: BrandCode = BrandCode::new(*b"mif1");
6524 /// Image file format structural brand CICP alpha and depth
6525 ///
6526 /// FourCC: `mif2`
6527 ///
6528 /// Specification: _HEIF_
6529 pub const MIF2: BrandCode = BrandCode::new(*b"mif2");
6530 /// Multi-Image Application format brand for MIAF HEVC Advanced Profile
6531 ///
6532 /// FourCC: `MiHA`
6533 ///
6534 /// Specification: _MIAF_
6535 pub const MIHA: BrandCode = BrandCode::new(*b"MiHA");
6536 /// Multi-Image Application format brand for MIAF HEVC Basic Profile
6537 ///
6538 /// FourCC: `MiHB`
6539 ///
6540 /// Specification: _MIAF_
6541 pub const MIHB: BrandCode = BrandCode::new(*b"MiHB");
6542 /// Multi-Image Application format brand for MIAF HEVC Extended Profile
6543 ///
6544 /// FourCC: `MiHE`
6545 ///
6546 /// Specification: _MIAF_
6547 pub const MIHE: BrandCode = BrandCode::new(*b"MiHE");
6548 /// Multi-Image Application format brand for progressive decoding and rendering
6549 ///
6550 /// FourCC: `MiPr`
6551 ///
6552 /// Specification: _MIAF_
6553 pub const MIPR: BrandCode = BrandCode::new(*b"MiPr");
6554 /// Motion JPEG 2000 simple profile
6555 ///
6556 /// FourCC: `mj2s`
6557 ///
6558 /// Specification: _MJ2_
6559 pub const MJ2S: BrandCode = BrandCode::new(*b"mj2s");
6560 /// Motion JPEG 2000, general profile
6561 ///
6562 /// FourCC: `mjp2`
6563 ///
6564 /// Specification: _MJ2_
6565 pub const MJP2: BrandCode = BrandCode::new(*b"mjp2");
6566 /// MPEG-21
6567 ///
6568 /// FourCC: `mp21`
6569 ///
6570 /// Specification: _MPEG-21_
6571 pub const MP21: BrandCode = BrandCode::new(*b"mp21");
6572 /// MP4 version 1
6573 ///
6574 /// FourCC: `mp41`
6575 ///
6576 /// Specification: _MP4v2_
6577 pub const MP41: BrandCode = BrandCode::new(*b"mp41");
6578 /// MP4 version 2
6579 ///
6580 /// FourCC: `mp42`
6581 ///
6582 /// Specification: _MP4v2_
6583 pub const MP42: BrandCode = BrandCode::new(*b"mp42");
6584 /// MPEG-7 file-level metadata
6585 ///
6586 /// FourCC: `mp71`
6587 ///
6588 /// Specification: _ISO_
6589 pub const MP71: BrandCode = BrandCode::new(*b"mp71");
6590 /// Photo Player Multimedia Application Format
6591 ///
6592 /// FourCC: `MPPI`
6593 ///
6594 /// Specification: _ISO-MAF_
6595 pub const MPPI: BrandCode = BrandCode::new(*b"MPPI");
6596 /// Compliance with the MMT Processing Unit format
6597 ///
6598 /// FourCC: `mpuf`
6599 ///
6600 /// Specification: _MMT_
6601 pub const MPUF: BrandCode = BrandCode::new(*b"mpuf");
6602 /// Image file format structural brand
6603 ///
6604 /// FourCC: `msf1`
6605 ///
6606 /// Specification: _HEIF_
6607 pub const MSF1: BrandCode = BrandCode::new(*b"msf1");
6608 /// Media Segment conforming to the general format type for ISO base media file format.
6609 ///
6610 /// FourCC: `msdh`
6611 ///
6612 /// Specification: _DASH_
6613 pub const MSDH: BrandCode = BrandCode::new(*b"msdh");
6614 /// Media Segment conforming to the Indexed Media Segment format type for ISO base media file format.
6615 ///
6616 /// FourCC: `msix`
6617 ///
6618 /// Specification: _DASH_
6619 pub const MSIX: BrandCode = BrandCode::new(*b"msix");
6620 /// Portable multimedia CE products using MP4 file format with AVC video codec and AAC audio codec
6621 ///
6622 /// FourCC: `MSNV`
6623 ///
6624 /// Specification: _IEC 62592_
6625 pub const MSNV: BrandCode = BrandCode::new(*b"MSNV");
6626 /// Nikon Digital Camera
6627 ///
6628 /// FourCC: `niko`
6629 ///
6630 /// Specification: _Nikon_
6631 pub const NIKO: BrandCode = BrandCode::new(*b"niko");
6632 /// Non-linear storyline toolset brand
6633 ///
6634 /// FourCC: `nlsl`
6635 ///
6636 /// Specification: _OMAF_
6637 pub const NLSL: BrandCode = BrandCode::new(*b"nlsl");
6638 /// No Leading Picture Sync Brand
6639 ///
6640 /// FourCC: `nras`
6641 ///
6642 /// Specification: _NALu Video_
6643 pub const NRAS: BrandCode = BrandCode::new(*b"nras");
6644 /// OMAF 2D audio legacy profile
6645 ///
6646 /// FourCC: `oa2d`
6647 ///
6648 /// Specification: _OMAF_
6649 pub const OA2D: BrandCode = BrandCode::new(*b"oa2d");
6650 /// OMAF 3D audio baseline profile
6651 ///
6652 /// FourCC: `oabl`
6653 ///
6654 /// Specification: _OMAF_
6655 pub const OABL: BrandCode = BrandCode::new(*b"oabl");
6656 /// OMA DCF (DRM Content Format)
6657 ///
6658 /// FourCC: `odcf`
6659 ///
6660 /// Specification: _OMA DRM 2.0_
6661 pub const ODCF: BrandCode = BrandCode::new(*b"odcf");
6662 /// OMAF viewport-independent baseline presentation profile
6663 ///
6664 /// FourCC: `ompp`
6665 ///
6666 /// Specification: _OMAF_
6667 pub const OMPP: BrandCode = BrandCode::new(*b"ompp");
6668 /// OMA PDCF (DRM Content Format)
6669 ///
6670 /// FourCC: `opf2`
6671 ///
6672 /// Specification: _OMA DRM 2.1_
6673 pub const OPF2: BrandCode = BrandCode::new(*b"opf2");
6674 /// OMA Adapted PDCF
6675 ///
6676 /// FourCC: `opx2`
6677 ///
6678 /// Specification: _OMA DRM XBS_
6679 pub const OPX2: BrandCode = BrandCode::new(*b"opx2");
6680 /// OMAF viewport-dependent baseline presentation profile
6681 ///
6682 /// FourCC: `ovdp`
6683 ///
6684 /// Specification: _OMAF_
6685 pub const OVDP: BrandCode = BrandCode::new(*b"ovdp");
6686 /// Overlay toolset brand
6687 ///
6688 /// FourCC: `ovly`
6689 ///
6690 /// Specification: _OMAF_
6691 pub const OVLY: BrandCode = BrandCode::new(*b"ovly");
6692 /// Generic Partial File
6693 ///
6694 /// FourCC: `paff`
6695 ///
6696 /// Specification: _ISO-Partial_
6697 pub const PAFF: BrandCode = BrandCode::new(*b"paff");
6698 /// Panasonic Digital Camera
6699 ///
6700 /// FourCC: `pana`
6701 ///
6702 /// Specification: _Panasonic_
6703 pub const PANA: BrandCode = BrandCode::new(*b"pana");
6704 /// Protected Interoperable File Format
6705 ///
6706 /// FourCC: `piff`
6707 ///
6708 /// Specification: _PIFF_
6709 pub const PIFF: BrandCode = BrandCode::new(*b"piff");
6710 /// Mixed Partial File
6711 ///
6712 /// FourCC: `pmff`
6713 ///
6714 /// Specification: _ISO-Partial_
6715 pub const PMFF: BrandCode = BrandCode::new(*b"pmff");
6716 /// Panasonic Video Intercom
6717 ///
6718 /// FourCC: `pnvi`
6719 ///
6720 /// Specification: _Panasonic Video Intercom_
6721 pub const PNVI: BrandCode = BrandCode::new(*b"pnvi");
6722 /// Image file format brand for predictively coded image items
6723 ///
6724 /// FourCC: `pred`
6725 ///
6726 /// Specification: _HEIF_
6727 pub const PRED: BrandCode = BrandCode::new(*b"pred");
6728 /// QuickTime
6729 ///
6730 /// FourCC: `qt `
6731 ///
6732 /// Specification: _QT_
6733 pub const QT: BrandCode = BrandCode::new(*b"qt ");
6734 /// combination brand to indicate relative addressing
6735 ///
6736 /// FourCC: `relo`
6737 ///
6738 /// Specification: _ISO_
6739 pub const RELO: BrandCode = BrandCode::new(*b"relo");
6740 /// Representation Index Segment used to index MPEG-2 TS based Media Segments.
6741 ///
6742 /// FourCC: `risx`
6743 ///
6744 /// Specification: _DASH_
6745 pub const RISX: BrandCode = BrandCode::new(*b"risx");
6746 /// Ross Video
6747 ///
6748 /// FourCC: `ROSS`
6749 ///
6750 /// Specification: _Ross_
6751 pub const ROSS: BrandCode = BrandCode::new(*b"ROSS");
6752 /// SD Video
6753 ///
6754 /// FourCC: `sdv `
6755 ///
6756 /// Specification: _SDV_
6757 pub const SDV: BrandCode = BrandCode::new(*b"sdv ");
6758 /// Home and Mobile Multimedia Platform (HMMP)
6759 ///
6760 /// FourCC: `SEAU`
6761 ///
6762 /// Specification: _Sony_
6763 pub const SEAU: BrandCode = BrandCode::new(*b"SEAU");
6764 /// Home and Mobile Multimedia Platform (HMMP)
6765 ///
6766 /// FourCC: `SEBK`
6767 ///
6768 /// Specification: _Sony_
6769 pub const SEBK: BrandCode = BrandCode::new(*b"SEBK");
6770 /// Video contents Sony Entertainment Network provides by using MP4 file format
6771 ///
6772 /// FourCC: `senv`
6773 ///
6774 /// Specification: _Sony_
6775 pub const SENV: BrandCode = BrandCode::new(*b"senv");
6776 /// Media Segment conforming to the Sub-Indexed Media Segment format type for ISO base media file format.
6777 ///
6778 /// FourCC: `sims`
6779 ///
6780 /// Specification: _DASH_
6781 pub const SIMS: BrandCode = BrandCode::new(*b"sims");
6782 /// Single Index Segment used to index MPEG-2 TS based Media Segments.
6783 ///
6784 /// FourCC: `sisx`
6785 ///
6786 /// Specification: _DASH_
6787 pub const SISX: BrandCode = BrandCode::new(*b"sisx");
6788 /// HEVC-based simple tiling OMAF video profile
6789 ///
6790 /// FourCC: `siti`
6791 ///
6792 /// Specification: _OMAF_
6793 pub const SITI: BrandCode = BrandCode::new(*b"siti");
6794 /// VVC-based simple tiling OMAF video profile
6795 ///
6796 /// FourCC: `sitv`
6797 ///
6798 /// Specification: _OMAF_
6799 pub const SITV: BrandCode = BrandCode::new(*b"sitv");
6800 /// Dynamic metadata for Single Layer SDR-compatible HDR video streams
6801 ///
6802 /// FourCC: `slh1`
6803 ///
6804 /// Specification: _SL-HDR_
6805 pub const SLH1: BrandCode = BrandCode::new(*b"slh1");
6806 /// Dynamic metadata for Single Layer PQ-based HDR video streams
6807 ///
6808 /// FourCC: `slh2`
6809 ///
6810 /// Specification: _SL-HDR_
6811 pub const SLH2: BrandCode = BrandCode::new(*b"slh2");
6812 /// Dynamic metadata for Single Layer HLG-based HDR video streams
6813 ///
6814 /// FourCC: `slh3`
6815 ///
6816 /// Specification: _SL-HDR_
6817 pub const SLH3: BrandCode = BrandCode::new(*b"slh3");
6818 /// Subsegment Index Segment used to index MPEG-2 TS based Media Segments.
6819 ///
6820 /// FourCC: `ssss`
6821 ///
6822 /// Specification: _DASH_
6823 pub const SSSS: BrandCode = BrandCode::new(*b"ssss");
6824 /// OMAF IMSC1 timed text profile
6825 ///
6826 /// FourCC: `ttml`
6827 ///
6828 /// Specification: _OMAF_
6829 pub const TTML: BrandCode = BrandCode::new(*b"ttml");
6830 /// OMAF WebVTT timed text profile
6831 ///
6832 /// FourCC: `ttwv`
6833 ///
6834 /// Specification: _OMAF_
6835 pub const TTWV: BrandCode = BrandCode::new(*b"ttwv");
6836 /// Unconstrained HEVC-based viewport-independent OMAF video profile
6837 ///
6838 /// FourCC: `uhvi`
6839 ///
6840 /// Specification: _OMAF_
6841 pub const UHVI: BrandCode = BrandCode::new(*b"uhvi");
6842 /// Unified identifiers
6843 ///
6844 /// FourCC: `unif`
6845 ///
6846 /// Specification: _ISO_
6847 pub const UNIF: BrandCode = BrandCode::new(*b"unif");
6848 /// UltraViolet file brand – conforming to the DECE Common File Format spec, Annex E.
6849 ///
6850 /// FourCC: `uvvu`
6851 ///
6852 /// Specification: _DECE_
6853 pub const UVVU: BrandCode = BrandCode::new(*b"uvvu");
6854 /// Multi-track encapsulation mode for V3C data with partial access support
6855 ///
6856 /// FourCC: `v3mp`
6857 ///
6858 /// Specification: _V3C-SYS_
6859 pub const V3MP: BrandCode = BrandCode::new(*b"v3mp");
6860 /// Multi-track encapsulation mode for V3C data
6861 ///
6862 /// FourCC: `v3mt`
6863 ///
6864 /// Specification: _V3C-SYS_
6865 pub const V3MT: BrandCode = BrandCode::new(*b"v3mt");
6866 /// Non-timed encpasulation mode for V3C data
6867 ///
6868 /// FourCC: `v3nt`
6869 ///
6870 /// Specification: _V3C-SYS_
6871 pub const V3NT: BrandCode = BrandCode::new(*b"v3nt");
6872 /// Single-track encapsulation mode for V3C data
6873 ///
6874 /// FourCC: `v3st`
6875 ///
6876 /// Specification: _V3C-SYS_
6877 pub const V3ST: BrandCode = BrandCode::new(*b"v3st");
6878 /// VVC-based viewport-independent OMAF video profile
6879 ///
6880 /// FourCC: `vvci`
6881 ///
6882 /// Specification: _OMAF_
6883 pub const VVCI: BrandCode = BrandCode::new(*b"vvci");
6884 /// VVC coded image item
6885 ///
6886 /// FourCC: `vvic`
6887 ///
6888 /// Specification: _HEIF_
6889 pub const VVIC: BrandCode = BrandCode::new(*b"vvic");
6890 /// VVC coded image sequence
6891 ///
6892 /// FourCC: `vvis`
6893 ///
6894 /// Specification: _HEIF_
6895 pub const VVIS: BrandCode = BrandCode::new(*b"vvis");
6896 /// OMAF VVC image profile
6897 ///
6898 /// FourCC: `vvoi`
6899 ///
6900 /// Specification: _OMAF_
6901 pub const VVOI: BrandCode = BrandCode::new(*b"vvoi");
6902 /// Viewpoint toolset brand
6903 ///
6904 /// FourCC: `vwpt`
6905 ///
6906 /// Specification: _OMAF_
6907 pub const VWPT: BrandCode = BrandCode::new(*b"vwpt");
6908 /// XAVC File Format
6909 ///
6910 /// FourCC: `XAVC`
6911 ///
6912 /// Specification: _Sony_
6913 pub const XAVC: BrandCode = BrandCode::new(*b"XAVC");
6914 /// Google specification for use by YouTube apps
6915 ///
6916 /// FourCC: `yt4 `
6917 ///
6918 /// Specification: _Youtube_
6919 pub const YT4: BrandCode = BrandCode::new(*b"yt4 ");
6920 /// Immersive Audio Model and Formats - Encapsulated IA Sequence
6921 ///
6922 /// FourCC: `iamf`
6923 ///
6924 /// Specification: _AOM-IAMF_
6925 pub const IAMF: BrandCode = BrandCode::new(*b"iamf");
6926 /// Apple HEVC Video with Alpha
6927 ///
6928 /// FourCC: `muxa`
6929 ///
6930 /// Specification: _Apple HEVC Alpha_
6931 pub const MUXA: BrandCode = BrandCode::new(*b"muxa");
6932 /// CMAF Media Profile for Constrained Multilayer VVC
6933 ///
6934 /// FourCC: `cvvm`
6935 ///
6936 /// Specification: _ATSC 3.0 A345_
6937 pub const CVVM: BrandCode = BrandCode::new(*b"cvvm");
6938 /// CMAF Media Profile for ATSC Full Range Constrained Baseline VVC
6939 ///
6940 /// FourCC: `cafr`
6941 ///
6942 /// Specification: _ATSC 3.0 A345_
6943 pub const CAFR: BrandCode = BrandCode::new(*b"cafr");
6944 /// XF-AVC S/XF-HEVC S File Format
6945 ///
6946 /// FourCC: `XFVC`
6947 ///
6948 /// Specification: _Canon_
6949 pub const XFVC: BrandCode = BrandCode::new(*b"XFVC");
6950 /// CMAF Media Profile – AVS3-P3
6951 ///
6952 /// FourCC: `ca3a`
6953 ///
6954 /// Specification: _T-AI-109.7_
6955 pub const CA3A: BrandCode = BrandCode::new(*b"ca3a");
6956 /// CMAF Media Profile for MPEG-5 LCEVC
6957 ///
6958 /// FourCC: `clv1`
6959 ///
6960 /// Specification: _CMAF_
6961 pub const CLV1: BrandCode = BrandCode::new(*b"clv1");
6962 /// Version of the ISO file format
6963 ///
6964 /// FourCC: `isod`
6965 ///
6966 /// Specification: _ISO_
6967 pub const ISOD: BrandCode = BrandCode::new(*b"isod");
6968 /// CMAF EVC Baseline Media Profile
6969 ///
6970 /// FourCC: `cevb`
6971 ///
6972 /// Specification: _CMAF_
6973 pub const CEVB: BrandCode = BrandCode::new(*b"cevb");
6974 /// CMAF EVC Main Media Profile
6975 ///
6976 /// FourCC: `cevm`
6977 ///
6978 /// Specification: _CMAF_
6979 pub const CEVM: BrandCode = BrandCode::new(*b"cevm");
6980 /// CMAF Random Access chunk
6981 ///
6982 /// FourCC: `cmfr`
6983 ///
6984 /// Specification: _CMAF_
6985 pub const CMFR: BrandCode = BrandCode::new(*b"cmfr");
6986 /// MPEG-H audio BL single-stream media profile
6987 ///
6988 /// FourCC: `cmh1`
6989 ///
6990 /// Specification: _CMAF_
6991 pub const CMH1: BrandCode = BrandCode::new(*b"cmh1");
6992 /// MPEG-H audio BL multi-stream media profile
6993 ///
6994 /// FourCC: `cmh2`
6995 ///
6996 /// Specification: _CMAF_
6997 pub const CMH2: BrandCode = BrandCode::new(*b"cmh2");
6998 /// SampleAuxiliaryInformationSizesBox with version 1 and 2
6999 ///
7000 /// FourCC: `saie`
7001 ///
7002 /// Specification: _ISO_
7003 pub const SAIE: BrandCode = BrandCode::new(*b"saie");
7004}
7005impl TrackReferenceCode {
7006 /// Additional audio track
7007 ///
7008 /// FourCC: `adda`
7009 ///
7010 /// Specification: _ISO_
7011 pub const ADDA: TrackReferenceCode = TrackReferenceCode::new(*b"adda");
7012 /// DRC metadata track
7013 ///
7014 /// FourCC: `adrc`
7015 ///
7016 /// Specification: _ISO_
7017 pub const ADRC: TrackReferenceCode = TrackReferenceCode::new(*b"adrc");
7018 /// Auxiliary track reference
7019 ///
7020 /// FourCC: `auxl`
7021 ///
7022 /// Specification: _ISO_
7023 pub const AUXL: TrackReferenceCode = TrackReferenceCode::new(*b"auxl");
7024 /// AVC parameter set stream link
7025 ///
7026 /// FourCC: `avcp`
7027 ///
7028 /// Specification: _NALu Video_
7029 pub const AVCP: TrackReferenceCode = TrackReferenceCode::new(*b"avcp");
7030 /// this track describes the referenced track.
7031 ///
7032 /// FourCC: `cdsc`
7033 ///
7034 /// Specification: _ISO_
7035 pub const CDSC: TrackReferenceCode = TrackReferenceCode::new(*b"cdsc");
7036 /// this track describes the referenced tracks and track groups collectively
7037 ///
7038 /// FourCC: `cdtg`
7039 ///
7040 /// Specification: _OMAF_
7041 pub const CDTG: TrackReferenceCode = TrackReferenceCode::new(*b"cdtg");
7042 /// track containing the depth view
7043 ///
7044 /// FourCC: `deps`
7045 ///
7046 /// Specification: _NALu Video_
7047 pub const DEPS: TrackReferenceCode = TrackReferenceCode::new(*b"deps");
7048 /// this track has an MPEG-4 dependency on the referenced track
7049 ///
7050 /// FourCC: `dpnd`
7051 ///
7052 /// Specification: _MP4v2_
7053 pub const DPND: TrackReferenceCode = TrackReferenceCode::new(*b"dpnd");
7054 /// EVC slice base track
7055 ///
7056 /// FourCC: `evcr`
7057 ///
7058 /// Specification: _NALu Video_
7059 pub const EVCR: TrackReferenceCode = TrackReferenceCode::new(*b"evcr");
7060 /// this track uses fonts carried/defined in the referenced track
7061 ///
7062 /// FourCC: `font`
7063 ///
7064 /// Specification: _ISO_
7065 pub const FONT: TrackReferenceCode = TrackReferenceCode::new(*b"font");
7066 /// Hint dependency
7067 ///
7068 /// FourCC: `hind`
7069 ///
7070 /// Specification: _ISO_
7071 pub const HIND: TrackReferenceCode = TrackReferenceCode::new(*b"hind");
7072 /// links hint track to original media track
7073 ///
7074 /// FourCC: `hint`
7075 ///
7076 /// Specification: _ISO_
7077 pub const HINT: TrackReferenceCode = TrackReferenceCode::new(*b"hint");
7078 /// this track contains IPI declarations for the referenced track
7079 ///
7080 /// FourCC: `ipir`
7081 ///
7082 /// Specification: _MP4v2_
7083 pub const IPIR: TrackReferenceCode = TrackReferenceCode::new(*b"ipir");
7084 /// Audio layer track dependency
7085 ///
7086 /// FourCC: `lyra`
7087 ///
7088 /// Specification: _DTS_
7089 pub const LYRA: TrackReferenceCode = TrackReferenceCode::new(*b"lyra");
7090 /// used in indicating combinations that result into mixed network abstraction layer unit types in a coded picture of VVC
7091 ///
7092 /// FourCC: `mixn`
7093 ///
7094 /// Specification: _NALu Video_
7095 pub const MIXN: TrackReferenceCode = TrackReferenceCode::new(*b"mixn");
7096 /// this track is an OD track which uses the referenced track as an included elementary stream track
7097 ///
7098 /// FourCC: `mpod`
7099 ///
7100 /// Specification: _MP4v2_
7101 pub const MPOD: TrackReferenceCode = TrackReferenceCode::new(*b"mpod");
7102 /// track that contains an 'oref' sample group
7103 ///
7104 /// FourCC: `oref`
7105 ///
7106 /// Specification: _NALu Video_
7107 pub const OREF: TrackReferenceCode = TrackReferenceCode::new(*b"oref");
7108 /// resolved by extracting an indicated subset of the referenced VVC track to reconstruct a VVC bitstream
7109 ///
7110 /// FourCC: `recr`
7111 ///
7112 /// Specification: _NALu Video_
7113 pub const RECR: TrackReferenceCode = TrackReferenceCode::new(*b"recr");
7114 /// HEVC Tile Track
7115 ///
7116 /// FourCC: `sabt`
7117 ///
7118 /// Specification: _NALu Video_
7119 pub const SABT: TrackReferenceCode = TrackReferenceCode::new(*b"sabt");
7120 /// Scalable base
7121 ///
7122 /// FourCC: `sbas`
7123 ///
7124 /// Specification: _NALu Video_
7125 pub const SBAS: TrackReferenceCode = TrackReferenceCode::new(*b"sbas");
7126 /// Scalable extraction
7127 ///
7128 /// FourCC: `scal`
7129 ///
7130 /// Specification: _NALu Video_
7131 pub const SCAL: TrackReferenceCode = TrackReferenceCode::new(*b"scal");
7132 /// reference to a shadow sync sample track
7133 ///
7134 /// FourCC: `shsc`
7135 ///
7136 /// Specification: _OMAF_
7137 pub const SHSC: TrackReferenceCode = TrackReferenceCode::new(*b"shsc");
7138 /// the referenced VVC subpicture tracks or 'alte' track groups of VVC subpicture tracks are used to reconstruct a VVC bitstream
7139 ///
7140 /// FourCC: `subp`
7141 ///
7142 /// Specification: _NALu Video_
7143 pub const SUBP: TrackReferenceCode = TrackReferenceCode::new(*b"subp");
7144 /// subtitle or timed text or overlay graphical information
7145 ///
7146 /// FourCC: `subt`
7147 ///
7148 /// Specification: _ISO_
7149 pub const SUBT: TrackReferenceCode = TrackReferenceCode::new(*b"subt");
7150 /// AVC Switch from
7151 ///
7152 /// FourCC: `swfr`
7153 ///
7154 /// Specification: _NALu Video_
7155 pub const SWFR: TrackReferenceCode = TrackReferenceCode::new(*b"swfr");
7156 /// AVC Switch to
7157 ///
7158 /// FourCC: `swto`
7159 ///
7160 /// Specification: _NALu Video_
7161 pub const SWTO: TrackReferenceCode = TrackReferenceCode::new(*b"swto");
7162 /// this track uses the referenced track as its synchronization source.
7163 ///
7164 /// FourCC: `sync`
7165 ///
7166 /// Specification: _MP4v2_
7167 pub const SYNC: TrackReferenceCode = TrackReferenceCode::new(*b"sync");
7168 /// HEVC Tile track base
7169 ///
7170 /// FourCC: `tbas`
7171 ///
7172 /// Specification: _NALu Video_
7173 pub const TBAS: TrackReferenceCode = TrackReferenceCode::new(*b"tbas");
7174 /// Thumbnail track reference
7175 ///
7176 /// FourCC: `thmb`
7177 ///
7178 /// Specification: _ISO_
7179 pub const THMB: TrackReferenceCode = TrackReferenceCode::new(*b"thmb");
7180 /// Time code. Usually references a time code track.
7181 ///
7182 /// FourCC: `tmcd`
7183 ///
7184 /// Specification: _Apple_
7185 pub const TMCD: TrackReferenceCode = TrackReferenceCode::new(*b"tmcd");
7186 /// V3C atlas track
7187 ///
7188 /// FourCC: `v3cs`
7189 ///
7190 /// Specification: _V3C-SYS_
7191 pub const V3CS: TrackReferenceCode = TrackReferenceCode::new(*b"v3cs");
7192 /// V3C atlas tile track
7193 ///
7194 /// FourCC: `v3ct`
7195 ///
7196 /// Specification: _V3C-SYS_
7197 pub const V3CT: TrackReferenceCode = TrackReferenceCode::new(*b"v3ct");
7198 /// V3C attribute video track
7199 ///
7200 /// FourCC: `v3va`
7201 ///
7202 /// Specification: _V3C-SYS_
7203 pub const V3VA: TrackReferenceCode = TrackReferenceCode::new(*b"v3va");
7204 /// V3C geometry video track
7205 ///
7206 /// FourCC: `v3vg`
7207 ///
7208 /// Specification: _V3C-SYS_
7209 pub const V3VG: TrackReferenceCode = TrackReferenceCode::new(*b"v3vg");
7210 /// V3C occupancy video track
7211 ///
7212 /// FourCC: `v3vo`
7213 ///
7214 /// Specification: _V3C-SYS_
7215 pub const V3VO: TrackReferenceCode = TrackReferenceCode::new(*b"v3vo");
7216 /// Auxiliary video depth
7217 ///
7218 /// FourCC: `vdep`
7219 ///
7220 /// Specification: _ISO_
7221 pub const VDEP: TrackReferenceCode = TrackReferenceCode::new(*b"vdep");
7222 /// Auxiliary video parallax
7223 ///
7224 /// FourCC: `vplx`
7225 ///
7226 /// Specification: _ISO_
7227 pub const VPLX: TrackReferenceCode = TrackReferenceCode::new(*b"vplx");
7228 /// reference to a track that contains a 'vopi' sample group for VVC video
7229 ///
7230 /// FourCC: `vref`
7231 ///
7232 /// Specification: _NALu Video_
7233 pub const VREF: TrackReferenceCode = TrackReferenceCode::new(*b"vref");
7234 /// reference to a VVC operating point entity group
7235 ///
7236 /// FourCC: `vreg`
7237 ///
7238 /// Specification: _NALu Video_
7239 pub const VREG: TrackReferenceCode = TrackReferenceCode::new(*b"vreg");
7240 /// the referenced track is a non video coding layer track of VVC
7241 ///
7242 /// FourCC: `vvcN`
7243 ///
7244 /// Specification: _NALu Video_
7245 pub const VVCN: TrackReferenceCode = TrackReferenceCode::new(*b"vvcN");
7246 /// The referenced tracks provide supplementary video to achieve picture-in-picture functionality
7247 ///
7248 /// FourCC: `supm`
7249 ///
7250 /// Specification: _NALu Video_
7251 pub const SUPM: TrackReferenceCode = TrackReferenceCode::new(*b"supm");
7252 /// associated external stream track
7253 ///
7254 /// FourCC: `aest`
7255 ///
7256 /// Specification: _ISO_
7257 pub const AEST: TrackReferenceCode = TrackReferenceCode::new(*b"aest");
7258 /// Rendering-related metadata
7259 ///
7260 /// FourCC: `rndr`
7261 ///
7262 /// Specification: _Apple_
7263 pub const RNDR: TrackReferenceCode = TrackReferenceCode::new(*b"rndr");
7264}