Tag Parser  9.2.0
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
mp4ids.cpp
Go to the documentation of this file.
1 #include "./mp4ids.h"
2 
3 #include "../mediaformat.h"
4 
5 namespace TagParser {
6 
10 namespace Mp4AtomIds {
11 }
12 
17 namespace Mp4TagAtomIds {
18 }
19 
23 namespace Mp4TagExtendedMeanIds {
24 const char *iTunes = "com.apple.iTunes";
25 }
26 
30 namespace Mp4TagExtendedNameIds {
31 const char *cdec = "cdec";
32 const char *label = "LABEL";
33 } // namespace Mp4TagExtendedNameIds
34 
38 namespace Mp4MediaTypeIds {
39 }
40 
45 namespace FourccIds {
46 
47 MediaFormat fourccToMediaFormat(std::uint32_t fourccId)
48 {
49  switch (fourccId) {
50  case Mpeg:
52  case Mpeg2Imx30:
53  case Mpeg2Imx50:
55  case Mpeg4Video:
57  case Mpeg4TimedText:
59  case Hevc1:
60  case Hevc2:
62  case Avc1:
63  case Avc2:
64  case Avc3:
65  case Avc4:
66  case H264Decoder1:
67  case H264Decoder2:
68  case H264Decoder3:
69  case H264Decoder4:
70  case H264Decoder5:
71  case H264Decoder6:
73  case Av1_IVF:
74  case Av1_ISOBMFF:
76  case Divx4Decoder1:
77  case Divx4Decoder2:
78  case H263Quicktime:
79  case H2633GPP:
80  case XvidDecoder1:
81  case XvidDecoder2:
82  case XvidDecoder3:
83  case XvidDecoder4:
84  case XvidDecoder5:
85  case Divx5Decoder:
87  case Divx3Decoder1:
88  case Divx3Decoder2:
89  case Divx3Decoder3:
90  case Divx3Decoder4:
91  case Divx3Decoder5:
92  case Divx3Decoder6:
93  case Divx3Decoder7:
94  case Divx3Decoder8:
95  case Divx3Decoder9:
96  case Divx3Decoder10:
97  case Divx3Decoder11:
98  case Divx3Decoder12:
99  case Divx3Decoder13:
100  case Divx3Decoder14:
101  case Divx3Decoder15:
103  case Tiff:
105  case AppleTextAtsuiCodec:
107  case Raw:
109  case Jpeg:
111  case Gif:
113  case Png:
115  case AdpcmAcm:
117  case ImaadpcmAcm:
119  case Mp3CbrOnly:
120  case Mp3:
122  case Mpeg4Audio:
124  case Alac:
126  case Ac3:
128  case EAc3:
130  case DolbyMpl:
132  case Ac4:
134  case Rv20:
135  case Rv30:
136  case Rv40:
138  case Int24:
139  case Int32:
141  case Int16Be:
143  case Int16Le:
145  case FloatingPoint32Bit:
146  case FloatingPoint64Bit:
148  case Amr:
149  case AmrNarrowband:
151  case Dts:
152  case DtsH:
154  case DtsE:
156  case WindowsMediaAudio:
157  case WindowsMediaAudio7:
161  case MsMpeg4V1Decoder1:
162  case MsMpeg4V1Decoder2:
163  case MsMpeg4V1Decoder3:
164  case MsMpeg4V1Decoder4:
165  case MsMpeg4V1Decoder5:
166  case MsMpeg4V1Decoder6:
168  case MsMpeg4V2Decoder1:
169  case MsMpeg4V2Decoder2:
170  case MsMpeg4V2Decoder3:
171  case MsMpeg4V2Decoder4:
173  case MsMpeg4V3Decoder1:
174  case MsMpeg4V3Decoder2:
176  case Vp8:
178  case Vp9:
179  case Vp9_2:
181  case WavPack:
185  case WindowsMediaVideoV2:
186  case WindowsMediaVideoV8:
188  case Flac:
190  case Opus:
192  // TODO: map more FOURCCs
193  default:
195  }
196 }
197 
198 } // namespace FourccIds
199 
204 namespace Mp4FormatExtensionIds {
205 }
206 
210 namespace Mpeg4ElementaryStreamObjectIds {
211 
215 MediaFormat streamObjectTypeFormat(std::uint8_t streamObjectTypeId)
216 {
217  switch (streamObjectTypeId) {
218  case SystemsIso144961:
220  case SystemsIso144961v2:
222  case InteractionStream:
224  case AfxStream:
226  case FontDataStream:
230  case StreamingTextStream:
232  case Mpeg4Visual:
234  case Avc:
236  case ParameterSetsForAvc:
238  case Als:
240  case Sa0c:
242  case Aac:
256  case Mpeg2AacMainProfile:
262  case Mpeg2Audio:
264  case Mpeg1Video:
266  case Mpeg1Audio:
268  case Jpeg:
270  case Png:
272  case Evrc:
273  case PrivateEvrc:
275  case Smv:
277  case Gpp2Cmf:
279  case Vc1:
281  case Dirac:
283  case Ac3:
284  case PrivateAc3:
286  case EAc3:
288  case Dts:
289  case PrivateDts:
291  case DtsHdHighResolution:
293  case DtsHdMasterAudio:
295  case DtsHdExpress:
297  case PrivateOgg:
298  case PrivateOgg2:
300  case PrivateVobSub:
302  case PrivateQcelp:
304  default:
305  return MediaFormat();
306  }
307 }
308 
309 } // namespace Mpeg4ElementaryStreamObjectIds
310 
314 namespace Mpeg4DescriptorIds {
315 }
316 
320 namespace Mpeg4ElementaryStreamTypeIds {
321 
325 const char *streamTypeName(std::uint8_t streamTypeId)
326 {
327  switch (streamTypeId) {
328  case ObjectDescriptor:
329  return "object descriptor";
330  case ClockReference:
331  return "clock reference";
332  case SceneDescriptor:
333  return "scene descriptor";
334  case Visual:
335  return "visual";
336  case Audio:
337  return "audio";
338  case Mpeg7:
339  return "MPEG-7";
340  case Ipmps:
341  return "IMPS";
342  case ObjectContentInfo:
343  return "object content info";
344  case MpegJava:
345  return "MPEG Java";
346  case Interaction:
347  return "interaction";
348  case Ipmp:
349  return "IPMP";
350  case FontData:
351  return "font data";
352  case StreamingText:
353  return "streaming text";
354  default:
355  return "";
356  }
357 }
358 
359 } // namespace Mpeg4ElementaryStreamTypeIds
360 
365 namespace Mpeg4AudioObjectIds {
366 
367 TAG_PARSER_EXPORT MediaFormat idToMediaFormat(std::uint8_t mpeg4AudioObjectId, bool sbrPresent, bool psPresent)
368 {
369  MediaFormat fmt;
370  switch (mpeg4AudioObjectId) {
371  case AacMain:
373  break;
374  case AacLc:
376  break;
377  case AacSsr:
379  break;
380  case AacLtp:
382  break;
383  case Sbr:
385  break;
386  case AacScalable:
388  break;
389  case ErAacLc:
391  break;
392  case ErAacLtp:
394  break;
395  case ErAacLd:
397  break;
398  case Ps:
400  break;
401  case Layer1:
403  break;
404  case Layer2:
406  break;
407  case Layer3:
409  break;
410  default:;
411  }
412  if (sbrPresent) {
414  }
415  if (psPresent) {
417  }
418  return fmt;
419 }
420 
421 } // namespace Mpeg4AudioObjectIds
422 
423 std::uint32_t mpeg4SamplingFrequencyTable[] = { 96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025, 8000, 7350 };
424 
428 namespace Mpeg4ChannelConfigs {
429 
433 const char *channelConfigString(std::uint8_t config)
434 {
435  switch (config) {
436  case AotSpecificConfig:
437  return "defined in AOT Specific Config";
438  case FrontCenter:
439  return "1 channel: front-center";
440  case FrontLeftFrontRight:
441  return "2 channels: front-left, front-right";
443  return "3 channels: front-center, front-left, front-right";
445  return "4 channels: front-center, front-left, front-right, back-center";
447  return "5 channels: front-center, front-left, front-right, back-left, back-right";
449  return "6 channels: front-center, front-left, front-right, back-left, back-right, LFE-channel";
451  return "8 channels: front-center, front-left, front-right, side-left, side-right, back-left, back-right, LFE-channel";
452  default:
453  return nullptr;
454  }
455 }
456 
460 std::uint8_t channelCount(std::uint8_t config)
461 {
462  switch (config) {
463  case FrontCenter:
464  return 1;
465  case FrontLeftFrontRight:
466  return 2;
468  return 3;
470  return 4;
472  return 5;
474  return 6;
476  return 8;
477  default:
478  return 0;
479  }
480 }
481 
482 } // namespace Mpeg4ChannelConfigs
483 
487 namespace Mpeg4VideoCodes {
488 }
489 
493 namespace Mpeg2VideoCodes {
494 }
495 
496 } // namespace TagParser
TagParser::Mpeg4AudioObjectIds::idToMediaFormat
TAG_PARSER_EXPORT MediaFormat idToMediaFormat(std::uint8_t mpeg4AudioObjectId, bool sbrPresent=false, bool psPresent=false)
Definition: mp4ids.cpp:367
TagParser::FourccIds::Divx3Decoder6
@ Divx3Decoder6
Definition: mp4ids.h:244
TagParser::GeneralMediaFormat::Mpeg4Video
@ Mpeg4Video
TagParser::FourccIds::Divx3Decoder11
@ Divx3Decoder11
Definition: mp4ids.h:249
TagParser::Mpeg4AudioObjectIds::Layer3
@ Layer3
Definition: mp4ids.h:595
TagParser::FourccIds::Mpeg
@ Mpeg
Definition: mp4ids.h:322
TagParser::FourccIds::H264Decoder3
@ H264Decoder3
Definition: mp4ids.h:286
mp4ids.h
TagParser::Mpeg4ElementaryStreamObjectIds::DtsHdHighResolution
@ DtsHdHighResolution
Definition: mp4ids.h:478
TagParser::GeneralMediaFormat::Aac
@ Aac
TagParser::FourccIds::Divx3Decoder2
@ Divx3Decoder2
Definition: mp4ids.h:240
TagParser::Mpeg4ElementaryStreamObjectIds::SystemsIso144961v2
@ SystemsIso144961v2
Definition: mp4ids.h:444
TagParser::FourccIds::Divx3Decoder15
@ Divx3Decoder15
Definition: mp4ids.h:253
TagParser::Mpeg4ElementaryStreamObjectIds::Aac
@ Aac
Definition: mp4ids.h:455
TagParser::SubFormats::PcmIntBe
@ PcmIntBe
Definition: mediaformat.h:224
TagParser::MediaFormat::extension
unsigned char extension
Definition: mediaformat.h:260
TagParser::FourccIds::H264Decoder1
@ H264Decoder1
Definition: mp4ids.h:284
TagParser::Mpeg4ElementaryStreamObjectIds::Ac3
@ Ac3
Definition: mp4ids.h:475
TagParser::SubFormats::AacMpeg4ERLowComplecityProfile
@ AacMpeg4ERLowComplecityProfile
Definition: mediaformat.h:122
TagParser::Mpeg4ElementaryStreamObjectIds::InteractionStream
@ InteractionStream
Definition: mp4ids.h:445
TagParser::FourccIds::Divx5Decoder
@ Divx5Decoder
Definition: mp4ids.h:256
TagParser::Mpeg4ElementaryStreamObjectIds::StreamingTextStream
@ StreamingTextStream
Definition: mp4ids.h:449
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateOgg2
@ PrivateOgg2
Definition: mp4ids.h:485
TagParser::Mpeg4ChannelConfigs::FrontCenterFrontLeftFrontRightSideLeftSideRightBackLeftBackRightLFEChannel
@ FrontCenterFrontLeftFrontRightSideLeftSideRightBackLeftBackRightLFEChannel
Definition: mp4ids.h:623
TagParser::GeneralMediaFormat::Vp8
@ Vp8
TagParser::Mpeg4AudioObjectIds::AacLtp
@ AacLtp
Definition: mp4ids.h:568
TagParser::SubFormats::AacMpeg4LongTermPrediction
@ AacMpeg4LongTermPrediction
Definition: mediaformat.h:121
TagParser::Mpeg4ChannelConfigs::FrontCenterFrontLeftFrontRightBackLeftBackRight
@ FrontCenterFrontLeftFrontRightBackLeftBackRight
Definition: mp4ids.h:621
TagParser::Mpeg4AudioObjectIds::ErAacLc
@ ErAacLc
Definition: mp4ids.h:579
TagParser::FourccIds::MsMpeg4V1Decoder2
@ MsMpeg4V1Decoder2
Definition: mp4ids.h:333
TagParser::Mpeg4ElementaryStreamObjectIds::streamObjectTypeFormat
TAG_PARSER_EXPORT MediaFormat streamObjectTypeFormat(std::uint8_t streamObjectTypeId)
Returns the TagParser::MediaFormat denoted by the specified MPEG-4 stream ID.
Definition: mp4ids.cpp:215
TagParser::FourccIds::FloatingPoint32Bit
@ FloatingPoint32Bit
Definition: mp4ids.h:275
TagParser::FourccIds::XvidDecoder2
@ XvidDecoder2
Definition: mp4ids.h:407
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateEvrc
@ PrivateEvrc
Definition: mp4ids.h:481
TagParser::Mpeg4ElementaryStreamObjectIds::SynthesizedTextureStream
@ SynthesizedTextureStream
Definition: mp4ids.h:448
TagParser::FourccIds::MsMpeg4V2Decoder1
@ MsMpeg4V2Decoder1
Definition: mp4ids.h:338
TagParser::FourccIds::Divx3Decoder8
@ Divx3Decoder8
Definition: mp4ids.h:246
TagParser::FourccIds::XvidDecoder4
@ XvidDecoder4
Definition: mp4ids.h:409
TagParser::FourccIds::Divx3Decoder9
@ Divx3Decoder9
Definition: mp4ids.h:247
TagParser::GeneralMediaFormat::Tiff
@ Tiff
TagParser::FourccIds::Mpeg2Imx50
@ Mpeg2Imx50
Definition: mp4ids.h:324
TagParser::GeneralMediaFormat::Mpeg2Audio
@ Mpeg2Audio
TagParser::Mpeg4ChannelConfigs::AotSpecificConfig
@ AotSpecificConfig
Definition: mp4ids.h:616
TagParser::FourccIds::Jpeg
@ Jpeg
Definition: mp4ids.h:307
TagParser::FourccIds::Avc4
@ Avc4
Definition: mp4ids.h:224
TagParser::FourccIds::MsMpeg4V2Decoder3
@ MsMpeg4V2Decoder3
Definition: mp4ids.h:340
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2AacScaleableSamplingRateProfile
@ Mpeg2AacScaleableSamplingRateProfile
Definition: mp4ids.h:464
TagParser::Mp4TagExtendedNameIds::label
const char * label
Definition: mp4ids.cpp:32
TagParser::SubFormats::PcmFloatIeee
@ PcmFloatIeee
Definition: mediaformat.h:224
TagParser::Mpeg4ElementaryStreamTypeIds::Ipmp
@ Ipmp
Definition: mp4ids.h:506
TagParser::Mpeg4ElementaryStreamObjectIds::EAc3
@ EAc3
Definition: mp4ids.h:476
TagParser::FourccIds::WavPack
@ WavPack
Definition: mp4ids.h:390
TagParser::Mpeg4AudioObjectIds::ErAacLtp
@ ErAacLtp
Definition: mp4ids.h:580
TagParser::FourccIds::Hevc2
@ Hevc2
Definition: mp4ids.h:292
TagParser::SubFormats::AacMpeg2MainProfile
@ AacMpeg2MainProfile
Definition: mediaformat.h:115
TagParser::FourccIds::ImaadpcmAcm
@ ImaadpcmAcm
Definition: mp4ids.h:296
TagParser::SubFormats::Mpeg2HighProfile
@ Mpeg2HighProfile
Definition: mediaformat.h:134
TagParser::SubFormats::Mpeg1Layer3
@ Mpeg1Layer3
Definition: mediaformat.h:112
TagParser::Mpeg4ElementaryStreamTypeIds::streamTypeName
TAG_PARSER_EXPORT const char * streamTypeName(std::uint8_t streamTypeId)
Returns the name of the stream type denoted by the specified MPEG-4 stream type ID.
Definition: mp4ids.cpp:325
TagParser::FourccIds::Ac4
@ Ac4
Definition: mp4ids.h:147
TagParser::Mpeg4ElementaryStreamObjectIds::Png
@ Png
Definition: mp4ids.h:469
TagParser::GeneralMediaFormat::DtsHd
@ DtsHd
TagParser::Mpeg4AudioObjectIds::Sbr
@ Sbr
Definition: mp4ids.h:569
TagParser::FourccIds::Gif
@ Gif
Definition: mp4ids.h:278
TagParser::Mpeg4ElementaryStreamObjectIds::Dirac
@ Dirac
Definition: mp4ids.h:474
TagParser::FourccIds::Dts
@ Dts
Definition: mp4ids.h:259
TagParser::FourccIds::Int16Be
@ Int16Be
Definition: mp4ids.h:298
TagParser::GeneralMediaFormat::Qcelp
@ Qcelp
TagParser::Mpeg4ChannelConfigs::FrontCenterFrontLeftFrontRightBackLeftBackRightLFEChannel
@ FrontCenterFrontLeftFrontRightBackLeftBackRightLFEChannel
Definition: mp4ids.h:622
TagParser::GeneralMediaFormat::Smv
@ Smv
TagParser::FourccIds::Rv20
@ Rv20
Definition: mp4ids.h:365
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateAc3
@ PrivateAc3
Definition: mp4ids.h:482
TagParser::ExtensionFormats::SpectralBandReplication
@ SpectralBandReplication
Definition: mediaformat.h:242
TagParser::GeneralMediaFormat::Sa0c
@ Sa0c
TagParser::SubFormats::DtsHdMasterAudio
@ DtsHdMasterAudio
Definition: mediaformat.h:221
TagParser::Mp4TagExtendedMeanIds::iTunes
const char * iTunes
Definition: mp4ids.cpp:24
TagParser::GeneralMediaFormat::Av1
@ Av1
TagParser::GeneralMediaFormat::UncompressedVideoFrames
@ UncompressedVideoFrames
TagParser::SubFormats::AacMpeg2ScalableSamplingRateProfile
@ AacMpeg2ScalableSamplingRateProfile
Definition: mediaformat.h:117
TagParser::Mpeg4AudioObjectIds::AacMain
@ AacMain
Definition: mp4ids.h:565
TagParser
Contains all classes and functions of the TagInfo library.
Definition: aaccodebook.h:10
TagParser::FourccIds::H264Decoder5
@ H264Decoder5
Definition: mp4ids.h:288
TagParser::FourccIds::Mpeg4Audio
@ Mpeg4Audio
Definition: mp4ids.h:325
TagParser::SubFormats::DtsExpress
@ DtsExpress
Definition: mediaformat.h:218
TagParser::FourccIds::MsMpeg4V1Decoder6
@ MsMpeg4V1Decoder6
Definition: mp4ids.h:337
TagParser::FourccIds::H264Decoder6
@ H264Decoder6
Definition: mp4ids.h:289
TagParser::Mpeg4ChannelConfigs::FrontCenterFrontLeftFrontRightBackCenter
@ FrontCenterFrontLeftFrontRightBackCenter
Definition: mp4ids.h:620
TagParser::Mpeg4ElementaryStreamTypeIds::ObjectContentInfo
@ ObjectContentInfo
Definition: mp4ids.h:503
TagParser::FourccIds::MsMpeg4V1Decoder3
@ MsMpeg4V1Decoder3
Definition: mp4ids.h:334
TagParser::Mpeg4ElementaryStreamObjectIds::Avc
@ Avc
Definition: mp4ids.h:451
TagParser::FourccIds::Flac
@ Flac
Definition: mp4ids.h:272
TagParser::SubFormats::AacMpeg4ERLongTermPrediction
@ AacMpeg4ERLongTermPrediction
Definition: mediaformat.h:124
TagParser::FourccIds::H2633GPP
@ H2633GPP
Definition: mp4ids.h:283
TagParser::GeneralMediaFormat::Mpeg4TimedText
@ Mpeg4TimedText
TagParser::FourccIds::Opus
@ Opus
Definition: mp4ids.h:346
TagParser::FourccIds::Divx3Decoder4
@ Divx3Decoder4
Definition: mp4ids.h:242
TagParser::Mpeg4ElementaryStreamObjectIds::ParameterSetsForAvc
@ ParameterSetsForAvc
Definition: mp4ids.h:452
TagParser::mpeg4SamplingFrequencyTable
std::uint32_t mpeg4SamplingFrequencyTable[13]
Definition: mp4ids.cpp:423
TagParser::SubFormats::AacMpeg4ERLowDelay
@ AacMpeg4ERLowDelay
Definition: mediaformat.h:125
TagParser::FourccIds::DtsE
@ DtsE
Definition: mp4ids.h:261
TagParser::FourccIds::Int24
@ Int24
Definition: mp4ids.h:300
TagParser::FourccIds::Ac3
@ Ac3
Definition: mp4ids.h:146
TagParser::GeneralMediaFormat::Unknown
@ Unknown
TagParser::Mpeg4ElementaryStreamObjectIds::AfxStream
@ AfxStream
Definition: mp4ids.h:446
TagParser::FourccIds::FloatingPoint64Bit
@ FloatingPoint64Bit
Definition: mp4ids.h:276
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateVobSub
@ PrivateVobSub
Definition: mp4ids.h:486
TagParser::Mpeg4ElementaryStreamTypeIds::Interaction
@ Interaction
Definition: mp4ids.h:505
TagParser::FourccIds::MsMpeg4V2Decoder4
@ MsMpeg4V2Decoder4
Definition: mp4ids.h:341
TagParser::GeneralMediaFormat::Gif
@ Gif
TagParser::SubFormats::AacMpeg4LowComplexityProfile
@ AacMpeg4LowComplexityProfile
Definition: mediaformat.h:119
TagParser::GeneralMediaFormat::Opus
@ Opus
TagParser::GeneralMediaFormat::Gpp2Cmf
@ Gpp2Cmf
TagParser::FourccIds::Int32
@ Int32
Definition: mp4ids.h:301
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2Video422Profile
@ Mpeg2Video422Profile
Definition: mp4ids.h:461
TagParser::FourccIds::Raw
@ Raw
Definition: mp4ids.h:361
TagParser::GeneralMediaFormat::ImaadpcmAcm
@ ImaadpcmAcm
TagParser::GeneralMediaFormat::AfxStream
@ AfxStream
TagParser::Mpeg4ElementaryStreamObjectIds::SystemsIso144961
@ SystemsIso144961
Definition: mp4ids.h:443
TagParser::SubFormats::Mpeg1Layer1
@ Mpeg1Layer1
Definition: mediaformat.h:112
TagParser::SubFormats::Mpeg4AdvancedSimpleProfile0
@ Mpeg4AdvancedSimpleProfile0
Definition: mediaformat.h:185
TagParser::FourccIds::Mpeg4Video
@ Mpeg4Video
Definition: mp4ids.h:331
TagParser::GeneralMediaFormat::Pcm
@ Pcm
TagParser::FourccIds::H264Decoder2
@ H264Decoder2
Definition: mp4ids.h:285
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg1Audio
@ Mpeg1Audio
Definition: mp4ids.h:467
TagParser::Mpeg4ChannelConfigs::FrontCenter
@ FrontCenter
Definition: mp4ids.h:617
TagParser::FourccIds::Avc2
@ Avc2
Definition: mp4ids.h:222
TagParser::FourccIds::WindowsMediaVideoV17
@ WindowsMediaVideoV17
Definition: mp4ids.h:395
TagParser::GeneralMediaFormat::Evrc
@ Evrc
TagParser::FourccIds::DtsH
@ DtsH
Definition: mp4ids.h:260
TagParser::Mpeg4ElementaryStreamObjectIds::Als
@ Als
Definition: mp4ids.h:453
TagParser::FourccIds::Hevc1
@ Hevc1
Definition: mp4ids.h:291
TagParser::GeneralMediaFormat::Mpeg1Video
@ Mpeg1Video
TagParser::FourccIds::Png
@ Png
Definition: mp4ids.h:349
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2Audio
@ Mpeg2Audio
Definition: mp4ids.h:465
TagParser::SubFormats::AacMpeg4MainProfile
@ AacMpeg4MainProfile
Definition: mediaformat.h:118
TagParser::FourccIds::WindowsMediaAudio
@ WindowsMediaAudio
Definition: mp4ids.h:391
TagParser::Mpeg4ElementaryStreamObjectIds::Evrc
@ Evrc
Definition: mp4ids.h:470
TagParser::Mpeg4ChannelConfigs::channelCount
TAG_PARSER_EXPORT std::uint8_t channelCount(std::uint8_t config)
Returns the channel count for the specified MPEG-4 channel config.
Definition: mp4ids.cpp:460
TagParser::Mpeg4ElementaryStreamTypeIds::Visual
@ Visual
Definition: mp4ids.h:499
TagParser::FourccIds::AppleTextAtsuiCodec
@ AppleTextAtsuiCodec
Definition: mp4ids.h:207
TagParser::FourccIds::MsMpeg4V1Decoder5
@ MsMpeg4V1Decoder5
Definition: mp4ids.h:336
TagParser::Mp4TagExtendedNameIds::cdec
const char * cdec
Definition: mp4ids.cpp:31
TagParser::SubFormats::Mpeg4SimpleProfile0
@ Mpeg4SimpleProfile0
Definition: mediaformat.h:142
TagParser::FourccIds::Divx4Decoder1
@ Divx4Decoder1
Definition: mp4ids.h:254
TagParser::FourccIds::Vp8
@ Vp8
Definition: mp4ids.h:387
TagParser::FourccIds::MsMpeg4V3Decoder1
@ MsMpeg4V3Decoder1
Definition: mp4ids.h:342
TagParser::GeneralMediaFormat::Systems
@ Systems
TagParser::FourccIds::MsMpeg4V1Decoder1
@ MsMpeg4V1Decoder1
Definition: mp4ids.h:332
TagParser::FourccIds::Mpeg4TimedText
@ Mpeg4TimedText
Definition: mp4ids.h:330
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2VideoMainProfile
@ Mpeg2VideoMainProfile
Definition: mp4ids.h:457
TagParser::SubFormats::Mpeg2SpatialProfile
@ Mpeg2SpatialProfile
Definition: mediaformat.h:133
TagParser::Mpeg4ElementaryStreamTypeIds::Audio
@ Audio
Definition: mp4ids.h:500
TagParser::GeneralMediaFormat::Vc1
@ Vc1
TagParser::Mpeg4ElementaryStreamTypeIds::ObjectDescriptor
@ ObjectDescriptor
Definition: mp4ids.h:496
TagParser::Mpeg4ElementaryStreamObjectIds::Gpp2Cmf
@ Gpp2Cmf
Definition: mp4ids.h:472
TagParser::Mpeg4ElementaryStreamTypeIds::StreamingText
@ StreamingText
Definition: mp4ids.h:508
TagParser::GeneralMediaFormat::WindowsMediaAudio
@ WindowsMediaAudio
TagParser::GeneralMediaFormat::EAc3
@ EAc3
TagParser::Mpeg4AudioObjectIds::AacSsr
@ AacSsr
Definition: mp4ids.h:567
TagParser::FourccIds::Divx3Decoder14
@ Divx3Decoder14
Definition: mp4ids.h:252
TagParser::Mpeg4ElementaryStreamTypeIds::FontData
@ FontData
Definition: mp4ids.h:507
TagParser::Mpeg4AudioObjectIds::Ps
@ Ps
Definition: mp4ids.h:590
TagParser::Mpeg4ElementaryStreamObjectIds::Vc1
@ Vc1
Definition: mp4ids.h:473
TagParser::FourccIds::Rv40
@ Rv40
Definition: mp4ids.h:367
TagParser::Mpeg4AudioObjectIds::Layer2
@ Layer2
Definition: mp4ids.h:594
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateQcelp
@ PrivateQcelp
Definition: mp4ids.h:487
TagParser::GeneralMediaFormat::FontDataStream
@ FontDataStream
TagParser::Mpeg4ElementaryStreamTypeIds::MpegJava
@ MpegJava
Definition: mp4ids.h:504
TagParser::FourccIds::AdpcmAcm
@ AdpcmAcm
Definition: mp4ids.h:148
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateDts
@ PrivateDts
Definition: mp4ids.h:483
TagParser::Mpeg4ElementaryStreamObjectIds::Jpeg
@ Jpeg
Definition: mp4ids.h:468
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2AacLowComplexityProfile
@ Mpeg2AacLowComplexityProfile
Definition: mp4ids.h:463
TagParser::GeneralMediaFormat::DolbyMlp
@ DolbyMlp
TagParser::FourccIds::Divx3Decoder10
@ Divx3Decoder10
Definition: mp4ids.h:248
TagParser::FourccIds::H264Decoder4
@ H264Decoder4
Definition: mp4ids.h:287
TagParser::GeneralMediaFormat::Ac4
@ Ac4
TagParser::SubFormats::DtsHdHighResolution
@ DtsHdHighResolution
Definition: mediaformat.h:220
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2VideoSpatialProfile
@ Mpeg2VideoSpatialProfile
Definition: mp4ids.h:459
TagParser::SubFormats::Mpeg1Layer2
@ Mpeg1Layer2
Definition: mediaformat.h:112
TagParser::Mpeg4ElementaryStreamTypeIds::ClockReference
@ ClockReference
Definition: mp4ids.h:497
TagParser::FourccIds::Av1_ISOBMFF
@ Av1_ISOBMFF
Definition: mp4ids.h:226
TagParser::FourccIds::WindowsMediaAudio9Professional
@ WindowsMediaAudio9Professional
Definition: mp4ids.h:393
TagParser::FourccIds::MsMpeg4V1Decoder4
@ MsMpeg4V1Decoder4
Definition: mp4ids.h:335
TagParser::FourccIds::MsMpeg4V3Decoder2
@ MsMpeg4V3Decoder2
Definition: mp4ids.h:343
TagParser::FourccIds::Mp3CbrOnly
@ Mp3CbrOnly
Definition: mp4ids.h:321
TagParser::FourccIds::Vp9
@ Vp9
Definition: mp4ids.h:388
TagParser::FourccIds::Avc3
@ Avc3
Definition: mp4ids.h:223
TagParser::Mpeg4ElementaryStreamObjectIds::FontDataStream
@ FontDataStream
Definition: mp4ids.h:447
TagParser::Mpeg4ElementaryStreamTypeIds::Mpeg7
@ Mpeg7
Definition: mp4ids.h:501
TagParser::FourccIds::AmrNarrowband
@ AmrNarrowband
Definition: mp4ids.h:156
TagParser::FourccIds::WindowsMediaVideoV2
@ WindowsMediaVideoV2
Definition: mp4ids.h:396
TagParser::Mpeg4AudioObjectIds::AacScalable
@ AacScalable
Definition: mp4ids.h:570
TagParser::Mpeg4ElementaryStreamTypeIds::Ipmps
@ Ipmps
Definition: mp4ids.h:502
TagParser::Mpeg4ElementaryStreamTypeIds::SceneDescriptor
@ SceneDescriptor
Definition: mp4ids.h:498
TagParser::FourccIds::Rv30
@ Rv30
Definition: mp4ids.h:366
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg4Visual
@ Mpeg4Visual
Definition: mp4ids.h:450
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2VideoSimpleProfile
@ Mpeg2VideoSimpleProfile
Definition: mp4ids.h:456
TagParser::FourccIds::Int16Le
@ Int16Le
Definition: mp4ids.h:299
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2VideoHighProfile
@ Mpeg2VideoHighProfile
Definition: mp4ids.h:460
TagParser::FourccIds::Divx3Decoder1
@ Divx3Decoder1
Definition: mp4ids.h:239
TagParser::Mpeg4AudioObjectIds::AacLc
@ AacLc
Definition: mp4ids.h:566
TagParser::GeneralMediaFormat::Alac
@ Alac
TagParser::FourccIds::Divx3Decoder3
@ Divx3Decoder3
Definition: mp4ids.h:241
TagParser::FourccIds::Alac
@ Alac
Definition: mp4ids.h:150
TagParser::SubFormats::Mpeg2SnrProfile
@ Mpeg2SnrProfile
Definition: mediaformat.h:132
TagParser::FourccIds::WindowsMediaAudio7
@ WindowsMediaAudio7
Definition: mp4ids.h:392
TagParser::GeneralMediaFormat::TimedText
@ TimedText
TagParser::GeneralMediaFormat::Hevc
@ Hevc
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg1Video
@ Mpeg1Video
Definition: mp4ids.h:466
TagParser::FourccIds::MsMpeg4V2Decoder2
@ MsMpeg4V2Decoder2
Definition: mp4ids.h:339
TagParser::FourccIds::EAc3
@ EAc3
Definition: mp4ids.h:266
TagParser::GeneralMediaFormat::RealVideo
@ RealVideo
TagParser::FourccIds::Divx3Decoder13
@ Divx3Decoder13
Definition: mp4ids.h:251
TagParser::SubFormats::AacMpeg4ScalableSamplingRateProfile
@ AacMpeg4ScalableSamplingRateProfile
Definition: mediaformat.h:120
TAG_PARSER_EXPORT
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
TagParser::FourccIds::Divx3Decoder5
@ Divx3Decoder5
Definition: mp4ids.h:243
TagParser::SubFormats::AacMpeg2LowComplexityProfile
@ AacMpeg2LowComplexityProfile
Definition: mediaformat.h:116
TagParser::FourccIds::XvidDecoder1
@ XvidDecoder1
Definition: mp4ids.h:406
TagParser::FourccIds::WindowsMediaVideoV8
@ WindowsMediaVideoV8
Definition: mp4ids.h:397
TagParser::GeneralMediaFormat::Vp9
@ Vp9
TagParser::Mpeg4ElementaryStreamObjectIds::DtsHdExpress
@ DtsHdExpress
Definition: mp4ids.h:480
TagParser::GeneralMediaFormat::Amr
@ Amr
TagParser::FourccIds::XvidDecoder3
@ XvidDecoder3
Definition: mp4ids.h:408
TagParser::FourccIds::XvidDecoder5
@ XvidDecoder5
Definition: mp4ids.h:410
TagParser::FourccIds::Divx4Decoder2
@ Divx4Decoder2
Definition: mp4ids.h:255
TagParser::FourccIds::Mpeg2Imx30
@ Mpeg2Imx30
Definition: mp4ids.h:323
TagParser::FourccIds::Divx3Decoder12
@ Divx3Decoder12
Definition: mp4ids.h:250
TagParser::GeneralMediaFormat::WindowsMediaVideo
@ WindowsMediaVideo
TagParser::FourccIds::H263Quicktime
@ H263Quicktime
Definition: mp4ids.h:282
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2AacMainProfile
@ Mpeg2AacMainProfile
Definition: mp4ids.h:462
TagParser::FourccIds::fourccToMediaFormat
TAG_PARSER_EXPORT MediaFormat fourccToMediaFormat(std::uint32_t fourccId)
Definition: mp4ids.cpp:47
TagParser::GeneralMediaFormat::Als
@ Als
TagParser::GeneralMediaFormat::Mpeg1Audio
@ Mpeg1Audio
TagParser::GeneralMediaFormat::MicrosoftMpeg4
@ MicrosoftMpeg4
TagParser::FourccIds::WindowsMediaAudio9Standard
@ WindowsMediaAudio9Standard
Definition: mp4ids.h:394
TagParser::Mpeg4ElementaryStreamObjectIds::PrivateOgg
@ PrivateOgg
Definition: mp4ids.h:484
TagParser::FourccIds::Tiff
@ Tiff
Definition: mp4ids.h:378
TagParser::GeneralMediaFormat::VobSub
@ VobSub
TagParser::Mpeg4ElementaryStreamObjectIds::Sa0c
@ Sa0c
Definition: mp4ids.h:454
TagParser::FourccIds::Av1_IVF
@ Av1_IVF
Definition: mp4ids.h:225
TagParser::GeneralMediaFormat::Mpeg2Video
@ Mpeg2Video
TagParser::Mpeg4ElementaryStreamObjectIds::DtsHdMasterAudio
@ DtsHdMasterAudio
Definition: mp4ids.h:479
TagParser::FourccIds::Vp9_2
@ Vp9_2
Definition: mp4ids.h:389
TagParser::Mpeg4ElementaryStreamObjectIds::Smv
@ Smv
Definition: mp4ids.h:471
TagParser::Mpeg4ElementaryStreamObjectIds::Mpeg2VideoSnrProfile
@ Mpeg2VideoSnrProfile
Definition: mp4ids.h:458
TagParser::Mpeg4ChannelConfigs::FrontCenterFrontLeftFrontRight
@ FrontCenterFrontLeftFrontRight
Definition: mp4ids.h:619
TagParser::Mpeg4ChannelConfigs::channelConfigString
TAG_PARSER_EXPORT const char * channelConfigString(std::uint8_t config)
Returns the string representation for the specified MPEG-4 channel config.
Definition: mp4ids.cpp:433
TagParser::FourccIds::Avc1
@ Avc1
Definition: mp4ids.h:221
TagParser::SubFormats::PcmIntLe
@ PcmIntLe
Definition: mediaformat.h:224
TagParser::GeneralMediaFormat::StreamingTextStream
@ StreamingTextStream
TagParser::GeneralMediaFormat::InteractionStream
@ InteractionStream
TagParser::FourccIds::DolbyMpl
@ DolbyMpl
Definition: mp4ids.h:317
TagParser::Mpeg4ChannelConfigs::FrontLeftFrontRight
@ FrontLeftFrontRight
Definition: mp4ids.h:618
TagParser::GeneralMediaFormat::Vorbis
@ Vorbis
TagParser::GeneralMediaFormat::SynthesizedTextureStream
@ SynthesizedTextureStream
TagParser::ExtensionFormats::ParametricStereo
@ ParametricStereo
Definition: mediaformat.h:242
TagParser::MediaFormat
The MediaFormat class specifies the format of media data.
Definition: mediaformat.h:245
TagParser::GeneralMediaFormat::Avc
@ Avc
TagParser::Mpeg4AudioObjectIds::ErAacLd
@ ErAacLd
Definition: mp4ids.h:584
TagParser::FourccIds::Amr
@ Amr
Definition: mp4ids.h:155
TagParser::GeneralMediaFormat::Dts
@ Dts
TagParser::SubFormats::Mpeg2SimpleProfile
@ Mpeg2SimpleProfile
Definition: mediaformat.h:130
TagParser::Mpeg4AudioObjectIds::Layer1
@ Layer1
Definition: mp4ids.h:593
TagParser::Mpeg4ElementaryStreamObjectIds::Dts
@ Dts
Definition: mp4ids.h:477
TagParser::GeneralMediaFormat::AdpcmAcm
@ AdpcmAcm
TagParser::FourccIds::Divx3Decoder7
@ Divx3Decoder7
Definition: mp4ids.h:245
TagParser::FourccIds::Mp3
@ Mp3
Definition: mp4ids.h:320