Tag Parser 12.3.1
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
Loading...
Searching...
No Matches
opusidentificationheader.h
Go to the documentation of this file.
1#ifndef TAG_PARSER_OPUSIDENTIFICATIONHEADER_H
2#define TAG_PARSER_OPUSIDENTIFICATIONHEADER_H
3
4#include "../global.h"
5
6#include <cstdint>
7
8namespace TagParser {
9
10class OggIterator;
11
12class TAG_PARSER_EXPORT OpusIdentificationHeader {
13public:
14 constexpr OpusIdentificationHeader();
15
16 void parseHeader(OggIterator &iterator);
17
18 constexpr std::uint8_t version() const;
19 constexpr std::uint8_t channels() const;
20 constexpr std::uint16_t preSkip() const;
21 constexpr std::uint32_t sampleRate() const;
22 constexpr std::uint16_t outputGain() const;
23 constexpr std::uint8_t channelMap() const;
24
25private:
26 std::uint8_t m_version;
27 std::uint8_t m_channels;
28 std::uint16_t m_preSkip;
29 std::uint32_t m_sampleRate;
30 std::uint16_t m_outputGain;
31 std::uint8_t m_channelMap;
32};
33
38 : m_version(0)
39 , m_channels(0)
40 , m_preSkip(0)
41 , m_sampleRate(0)
42 , m_outputGain(0)
43 , m_channelMap(0)
44{
45}
46
50constexpr std::uint8_t OpusIdentificationHeader::version() const
51{
52 return m_version;
53}
54
58constexpr std::uint8_t OpusIdentificationHeader::channels() const
59{
60 return m_channels;
61}
62
70constexpr std::uint16_t OpusIdentificationHeader::preSkip() const
71{
72 return m_preSkip;
73}
74
80constexpr std::uint32_t OpusIdentificationHeader::sampleRate() const
81{
82 return m_sampleRate;
83}
84
91constexpr std::uint16_t OpusIdentificationHeader::outputGain() const
92{
93 return m_outputGain;
94}
95
103constexpr std::uint8_t OpusIdentificationHeader::channelMap() const
104{
105 return m_channelMap;
106}
107
108} // namespace TagParser
109
110#endif // TAG_PARSER_OPUSIDENTIFICATIONHEADER_H
constexpr std::uint16_t preSkip() const
Returns "pre-skip" value for the Opus stream.
constexpr std::uint8_t channels() const
Returns the number of channels for the Opus stream.
constexpr OpusIdentificationHeader()
Constructs a new Opus identification header.
constexpr std::uint8_t channelMap() const
Returns the channel mapping family.
constexpr std::uint8_t version() const
Returns the version (which should be 1 currently).
constexpr std::uint32_t sampleRate() const
Returns the INPUT sample rate.
constexpr std::uint16_t outputGain() const
Returns the output gain.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
Definition global.h:14
constexpr TAG_PARSER_EXPORT std::string_view version()
Contains all classes and functions of the TagInfo library.
Definition aaccodebook.h:10