Tag Parser 12.4.0
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
Loading...
Searching...
No Matches
signature.cpp File Reference
#include "./signature.h"
#include "./matroska/matroskatagid.h"
#include <c++utilities/conversion/binaryconversion.h>
#include <cstdint>
Include dependency graph for signature.cpp:

Go to the source code of this file.

Namespaces

namespace  TagParser
 Contains all classes and functions of the TagInfo library.
 

Enumerations

enum  TagParser::Sig64 : std::uint64_t {
  TagParser::ApeTag = 0x4150455441474558ul , TagParser::Ar = 0x213C617263683E0A , TagParser::Asf1 = 0x3026B2758E66CF11ul , TagParser::Asf2 = 0xA6D900AA0062CE6Cul ,
  TagParser::Png = 0x89504E470D0A1A0Aul , TagParser::RiffAvi = 0x415649204C495354ul , TagParser::YUV4Mpeg2 = 0x595556344D504547ul
}
 Holds 64-bit signatures. More...
 
enum  TagParser::Sig56 : std::uint64_t { TagParser::Rar = 0x526172211A0700ul }
 Holds 52-bit signatures. More...
 
enum  TagParser::Sig48 : std::uint64_t { TagParser::Gif87a = 0x474946383761ul , TagParser::Gif89a = 0x474946383961ul , TagParser::SevenZ = 0x377ABCAF271Cul , TagParser::Xz = 0xFD377A585A00ul }
 Holds 48-bit signatures. More...
 
enum  TagParser::Sig40 : std::uint64_t { TagParser::Aiff = 0x464F524D00ul }
 Holds 40-bit signatures. More...
 
enum  TagParser::Sig32 : std::uint32_t {
  TagParser::Dirac = 0x42424344u , TagParser::Elf = 0x7F454C46u , TagParser::Flac = 0x664C6143u , TagParser::Ivf = 0x444B4946u ,
  TagParser::JavaClassFile = 0xCAFEBABEu , TagParser::Ebml = 0x1A45DFA3u , TagParser::Midi = 0x4D546864u , TagParser::MonkeysAudio = 0x4D414320u ,
  TagParser::Mp4 = 0x66747970u , TagParser::Ogg = 0x4F676753u , TagParser::PhotoshopDocument = 0x38425053u , TagParser::QuickTime = 0x6D6F6F76u ,
  TagParser::Riff = 0x52494646u , TagParser::RiffWave = 0x57415645u , TagParser::TiffBigEndian = 0x4D4D002Au , TagParser::TiffLittleEndian = 0x49492A00u ,
  TagParser::Utf32Text = 0xFFFE0000u , TagParser::WavPack = 0x7776706Bu , TagParser::WindowsIcon = 0x00000100u , TagParser::Lzip = 0x4C5A4950u ,
  TagParser::Zip1 = 0x504B0304u , TagParser::Zip2 = 0x504B0506u , TagParser::Zip3 = 0x504B0708u , TagParser::Zstd = 0x28b52ffdu
}
 Holds 32-bit signatures. More...
 
enum  TagParser::Sig24 : std::uint32_t {
  TagParser::Bzip2 = 0x425A68u , TagParser::Flv = 0x464C56u , TagParser::Gzip = 0x1F8B08u , TagParser::Id3v2 = 0x494433u ,
  TagParser::Utf8Text = 0xEFBBBFu
}
 Holds 24-bit signatures. More...
 
enum  TagParser::Sig16 : std::uint16_t {
  TagParser::Ac3 = 0x0B77u , TagParser::Adts = 0xFFF0u , TagParser::AdtsMask = 0xFFF6u , TagParser::Jpeg = 0xffd8u ,
  TagParser::Lha = 0x1FA0u , TagParser::Lzw = 0x1F9Du , TagParser::MpegAudioFrames = 0x7FFu , TagParser::PortableExecutable = 0x4D5Au ,
  TagParser::Utf16Text = 0xFFFEu , TagParser::WindowsBitmap = 0x424du
}
 Holds 16-bit signatures. More...
 

Functions

TAG_PARSER_EXPORT ContainerFormat TagParser::parseSignature (std::string_view buffer)
 Parses the signature read from the specified buffer.
 
TAG_PARSER_EXPORT std::string_view TagParser::containerFormatAbbreviation (ContainerFormat containerFormat, MediaType mediaType, unsigned int version)
 Returns the abbreviation of the container format as C-style string considering the specified media type and version.
 
TAG_PARSER_EXPORT std::string_view TagParser::containerFormatName (ContainerFormat containerFormat)
 Returns the name of the specified container format as C-style string.
 
TAG_PARSER_EXPORT std::string_view TagParser::containerFormatSubversion (ContainerFormat containerFormat)
 Returns the subversion of the container format as C-style string.
 
TAG_PARSER_EXPORT std::string_view TagParser::containerMimeType (ContainerFormat containerFormat, MediaType mediaType)
 Returns the MIME-type of the container format as C-style string.
 
TAG_PARSER_EXPORT TagTargetLevel TagParser::containerTargetLevel (ContainerFormat containerFormat, std::uint64_t targetLevelValue)
 Returns the general TagTargetLevel for the specified container format and raw targetLevelValue.
 
TAG_PARSER_EXPORT std::uint64_t TagParser::containerTargetLevelValue (ContainerFormat containerFormat, TagTargetLevel targetLevel)
 Returns the raw target level value for the specified containerFormat and general targetLevel.