28std::string_view
iTunes =
"com.apple.iTunes";
35std::string_view
cdec =
"cdec";
36std::string_view
label =
"LABEL";
210namespace Mp4FormatExtensionIds {
223 switch (streamObjectTypeId) {
320namespace Mpeg4DescriptorIds {
333 switch (streamTypeId) {
335 return "object descriptor";
337 return "clock reference";
339 return "scene descriptor";
349 return "object content info";
353 return "interaction";
359 return "streaming text";
371namespace Mpeg4AudioObjectIds {
376 switch (mpeg4AudioObjectId) {
429std::uint32_t
mpeg4SamplingFrequencyTable[] = { 96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025, 8000, 7350 };
434namespace Mpeg4ChannelConfigs {
443 return "defined in AOT Specific Config";
445 return "1 channel: front-center";
447 return "2 channels: front-left, front-right";
449 return "3 channels: front-center, front-left, front-right";
451 return "4 channels: front-center, front-left, front-right, back-center";
453 return "5 channels: front-center, front-left, front-right, back-left, back-right";
455 return "6 channels: front-center, front-left, front-right, back-left, back-right, LFE-channel";
457 return "8 channels: front-center, front-left, front-right, side-left, side-right, back-left, back-right, LFE-channel";
459 return std::string_view();
493namespace Mpeg4VideoCodes {
512 return "Whacked Bookmark";
514 return "Music Video";
526 return std::string_view();
532 static const auto m = std::map<std::string_view, Mp4TagMediaType, CaseInsensitiveStringComparer>{
548 const auto i = m.find(tagMediaTypeName);
549 return i != m.cend() ? std::make_optional(i->second) : std::nullopt;
566 static const auto m = std::map<std::string_view, Mp4TagContentRating, CaseInsensitiveStringComparer>{
571 const auto i = m.find(tagContentRatingName);
572 return i != m.cend() ? std::make_optional(i->second) : std::nullopt;
577 switch (
static_cast<AccountType>(tagContentRatingId)) {
585 return std::string_view();
591 static const auto m = std::map<std::string_view, AccountType, CaseInsensitiveStringComparer>{
596 const auto i = m.find(tagAccountTypeName);
597 return i != m.cend() ? std::make_optional(i->second) : std::nullopt;
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
@ WindowsMediaAudio9Professional
@ WindowsMediaAudio9Standard
TAG_PARSER_EXPORT MediaFormat fourccToMediaFormat(std::uint32_t fourccId)
Encapsulates the most common MP4 atom IDs.
Encapsulates IDs of MP4 atoms holding tag information.
Encapsulates "mean values" used in iTunes style MP4 tags.
Encapsulates "name values" used in iTunes style MP4 tags.
Encapsulates MPEG-2 video codes.
TAG_PARSER_EXPORT MediaFormat idToMediaFormat(std::uint8_t mpeg4AudioObjectId, bool sbrPresent=false, bool psPresent=false)
TAG_PARSER_EXPORT std::string_view channelConfigString(std::uint8_t config)
Returns the string representation for the specified MPEG-4 channel config.
@ FrontCenterFrontLeftFrontRightBackLeftBackRightLFEChannel
@ FrontCenterFrontLeftFrontRightBackCenter
@ FrontCenterFrontLeftFrontRightSideLeftSideRightBackLeftBackRightLFEChannel
@ FrontCenterFrontLeftFrontRight
@ FrontCenterFrontLeftFrontRightBackLeftBackRight
TAG_PARSER_EXPORT std::uint8_t channelCount(std::uint8_t config)
Returns the channel count for the specified MPEG-4 channel config.
Encapsulates all supported MPEG-4 elementary stream object IDs.
@ Mpeg2VideoSimpleProfile
@ Mpeg2AacLowComplexityProfile
@ Mpeg2VideoSpatialProfile
@ Mpeg2AacScaleableSamplingRateProfile
@ SynthesizedTextureStream
TAG_PARSER_EXPORT MediaFormat streamObjectTypeFormat(std::uint8_t streamObjectTypeId)
Returns the TagParser::MediaFormat denoted by the specified MPEG-4 stream ID.
Returns the name of the stream type denoted by the specified MPEG-4 stream type ID.
TAG_PARSER_EXPORT std::string_view streamTypeName(std::uint8_t streamTypeId)
Returns the name of the stream type denoted by the specified MPEG-4 stream type ID.
Contains all classes and functions of the TagInfo library.
TAG_PARSER_EXPORT std::string_view mp4TagMediaTypeName(Mp4TagMediaTypeId tagMediaTypeId)
Mp4TagMediaType
Specifies the tag type.
std::uint8_t Mp4TagAccountTypeId
TAG_PARSER_EXPORT std::string_view mp4TagAccountTypeName(Mp4TagAccountTypeId tagContentRatingId)
TAG_PARSER_EXPORT std::string_view mp4TagContentRatingName(Mp4TagContentRatingId tagContentRatingId)
std::uint8_t Mp4TagContentRatingId
std::uint8_t Mp4TagMediaTypeId
AccountType
Specifies the account type.
Mp4TagContentRating
Specifies the tag content rating.
@ UncompressedVideoFrames
@ SynthesizedTextureStream
std::uint32_t mpeg4SamplingFrequencyTable[13]
TAG_PARSER_EXPORT std::optional< AccountType > mp4TagAccountTypeId(std::string_view tagContentRatingName)
TAG_PARSER_EXPORT std::optional< Mp4TagContentRating > mp4TagContentRatingId(std::string_view tagContentRatingName)
TAG_PARSER_EXPORT std::optional< Mp4TagMediaType > mp4TagMediaTypeId(std::string_view tagMediaTypeName)