Tag Parser 12.1.0
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
Loading...
Searching...
No Matches
aaccodebook.h
Go to the documentation of this file.
1#ifndef TAG_PARSER_AACCODEBOOK_H
2#define TAG_PARSER_AACCODEBOOK_H
3
4// NOTE: The AAC parser is still WIP. It does not work yet and its API/ABI may change even in patch releases.
5
6#include "../global.h"
7
8#include <cstdint>
9
10namespace TagParser {
11
13
14struct TAG_PARSER_EXPORT AacHcb {
15 std::uint8_t offset;
16 std::uint8_t extraBits;
17};
18
19struct TAG_PARSER_EXPORT AacHcb2Pair {
20 std::uint8_t bits;
21 std::int8_t x;
22 std::int8_t y;
23};
24
25struct TAG_PARSER_EXPORT AacHcb2Quad {
26 std::uint8_t bits;
27 std::int8_t x;
28 std::int8_t y;
29 std::int8_t v;
30 std::int8_t w;
31};
32
33struct TAG_PARSER_EXPORT AacHcbBinPair {
34 std::uint8_t isLeaf;
35 std::int8_t data[2];
36};
37
38struct TAG_PARSER_EXPORT AacHcbBinQuad {
39 std::uint8_t isLeaf;
40 std::int8_t data[4];
41};
42
43extern const AacHcb *const aacHcbTable[];
44extern const AacHcb2Pair *const aacHcb2PairTable[];
45extern const AacHcb2Quad *const aacHcb2QuadTable[];
46extern const AacHcbBinPair *const aacHcbBinTable[];
47extern const std::uint8_t aacHcbN[];
48extern const int aacHcb2QuadTableSize[];
49extern const int aacHcb2PairTableSize[];
50extern const int aacHcbBinTableSize[];
51
52extern const AacHcb aacHcb1Step1[];
53extern const AacHcb2Quad aacHcb1Step2[];
54extern const AacHcb aacHcb2Step1[];
55extern const AacHcb2Quad aacHcb2Step2[];
56extern const AacHcbBinQuad aacHcb3[];
57extern const AacHcb aacHcb4Step1[];
58extern const AacHcb2Quad aacHcb4Step2[];
59extern const AacHcbBinPair aacHcb5[];
60extern const AacHcb aacHcb6Step1[];
61extern const AacHcb2Pair aacHcb6Step2[];
62extern const AacHcbBinPair aacHcb7[];
63extern const AacHcb aacHcb8Step1[];
64extern const AacHcb2Pair aacHcb8Step2[];
65extern const AacHcbBinPair aacHcb9[];
66extern const AacHcb aacHcb10Step1[];
67extern const AacHcb2Pair aacHcb10Step2[];
68extern const AacHcb aacHcb11Step1[];
69extern const AacHcb2Pair aacHcb11Step2[];
70extern const std::uint8_t aacHcbSf[][2];
71
72extern const std::int8_t tHuffmanEnv15dB[120][2];
73extern const std::int8_t fHuffmanEnv15dB[120][2];
74extern const std::int8_t tHuffmanEnvBal15dB[48][2];
75extern const std::int8_t fHuffmanEnvBal15dB[48][2];
76extern const std::int8_t tHuffmanEnv30dB[62][2];
77extern const std::int8_t fHuffmanEnv30dB[62][2];
78extern const std::int8_t tHuffmanEnvBal30dB[24][2];
79extern const std::int8_t fHuffmanEnvBal30dB[24][2];
80extern const std::int8_t tHuffmanNoise30dB[62][2];
81extern const std::int8_t tHuffmanNoiseBal30dB[24][2];
82
84
85} // namespace TagParser
86
87#endif // TAG_PARSER_AACCODEBOOK_H
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
Definition global.h:13
Contains all classes and functions of the TagInfo library.
Definition aaccodebook.h:10