Tag Parser  6.4.0
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
signature.h
Go to the documentation of this file.
1 #ifndef SIGNATURE_H
2 #define SIGNATURE_H
3 
4 #include "./mediaformat.h"
5 
6 #include <c++utilities/conversion/types.h>
7 
8 namespace Media {
9 
11 
17 enum class ContainerFormat
18 {
19  Unknown,
20  Ac3Frames,
21  Adts,
22  Ar,
23  Asf,
24  Bzip2,
25  Dirac,
26  Ebml,
27  Elf,
28  Flac,
29  FlashVideo,
30  Gif87a,
31  Gif89a,
32  Gzip,
33  Id2v2Tag,
35  Jpeg,
36  Lha,
37  Lzip,
38  Lzw,
39  Matroska,
40  Mp4,
42  Ogg,
44  Png,
46  QuickTime,
47  Rar,
48  Riff,
49  RiffAvi,
50  RiffWave,
51  SevenZ,
52  Tar,
55  Utf16Text,
56  Utf32Text,
57  Utf8Text,
58  Webm,
60  WindowsIcon,
61  Zip,
62  Xz
63 };
64 
65 TAG_PARSER_EXPORT ContainerFormat parseSignature(const char *buffer, int bufferSize);
66 TAG_PARSER_EXPORT const char *containerFormatName(ContainerFormat containerFormat);
67 TAG_PARSER_EXPORT const char *containerFormatAbbreviation(ContainerFormat containerFormat, MediaType mediaType = MediaType::Unknown, unsigned int version = 0);
69 TAG_PARSER_EXPORT const char *containerMimeType(ContainerFormat containerFormat, MediaType mediaType = MediaType::Unknown);
70 TAG_PARSER_EXPORT TagTargetLevel containerTargetLevel(ContainerFormat containerFormat, uint64 targetLevelValue);
72 
73 }
74 
75 #endif // SIGNATURE_H
MediaType
The MediaType enum specifies the type of media data (audio, video, text, ...).
Definition: mediaformat.h:13
ContainerFormat
Specifies the container format.
Definition: signature.h:17
TAG_PARSER_EXPORT const char * containerFormatAbbreviation(ContainerFormat containerFormat, MediaType mediaType=MediaType::Unknown, unsigned int version=0)
Returns the abbreviation of the container format as C-style string considering the specified media ty...
Definition: signature.cpp:243
TAG_PARSER_EXPORT const char * containerFormatSubversion(ContainerFormat containerFormat)
Returns the subversion of the container format as C-style string.
Definition: signature.cpp:417
DECLARE_ENUM_CLASS(TagTargetLevel, byte)
TAG_PARSER_EXPORT uint64 containerTargetLevelValue(ContainerFormat containerFormat, TagTargetLevel targetLevel)
Returns the raw target level value for the specified containerFormat and general targetLevel.
Definition: signature.cpp:523
TagTargetLevel
The TagTargetLevel enum specifies tag target levels.
Definition: tagtarget.h:17
TAG_PARSER_EXPORT const char * containerFormatName(ContainerFormat containerFormat)
Returns the name of the specified container format as C-style string.
Definition: signature.cpp:322
TAG_PARSER_EXPORT ContainerFormat parseSignature(const char *buffer, int bufferSize)
Parses the signature read from the specified buffer.
Definition: signature.cpp:103
TAG_PARSER_EXPORT TagTargetLevel containerTargetLevel(ContainerFormat containerFormat, uint64 targetLevelValue)
Returns the general TagTargetLevel for the specified container format and raw targetLevelValue.
Definition: signature.cpp:509
Contains all classes and functions of the TagInfo library.
Definition: exceptions.h:9
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
TAG_PARSER_EXPORT const char * version()
TAG_PARSER_EXPORT const char * containerMimeType(ContainerFormat containerFormat, MediaType mediaType=MediaType::Unknown)
Returns the MIME-type of the container format as C-style string.
Definition: signature.cpp:438