Tag Parser
9.2.0
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
|
Go to the documentation of this file. 1 #ifndef TAG_PARSER_OGGCONTAINER_H
2 #define TAG_PARSER_OGGCONTAINER_H
8 #include "../vorbis/vorbiscomment.h"
10 #include "../genericcontainer.h"
13 #include <unordered_map>
46 , firstSegmentIndex(0)
50 , lastMetaDataBlock(false)
74 static constexpr
const char *tagName =
"OGG Vorbis comment";
76 const char *typeName()
const override;
77 bool supportsTarget()
const override;
136 bool isChecksumValidationEnabled()
const;
137 void setChecksumValidationEnabled(
bool enabled);
138 void reset()
override;
142 std::size_t tagCount()
const override;
143 bool removeTag(
Tag *tag)
override;
144 void removeAllTags()
override;
147 void internalParseHeader(
Diagnostics &diag)
override;
148 void internalParseTags(
Diagnostics &diag)
override;
149 void internalParseTracks(
Diagnostics &diag)
override;
153 void announceComment(
158 std::unordered_map<std::uint32_t, std::vector<std::unique_ptr<OggStream>>::size_type> m_streamsBySerialNo;
161 bool m_validateChecksums;
174 return m_validateChecksums;
183 m_validateChecksums = enabled;
188 #endif // TAG_PARSER_OGGCONTAINER_H
void setChecksumValidationEnabled(bool enabled)
Sets whether checksum validation is enabled.
bool isChecksumValidationEnabled() const
Returns whether checksum validation is enabled.
GeneralMediaFormat
The GeneralMediaFormat enum specifies the general format of media data (PCM, MPEG-4,...
The AbortableProgressFeedback class provides feedback about an ongoing operation via callbacks....
The OggIterator class helps iterating through all segments of an OGG bitstream.
Implementation of TagParser::AbstractContainer for OGG files.
The Tag class is used to store, read and write tag information.
The Diagnostics class is a container for DiagMessage.
Contains all classes and functions of the TagInfo library.
The OggParameter struct holds the OGG parameter for a VorbisComment.
constexpr OggParameter()
Creates new parameters.
The GenericContainer class helps parsing header, track, tag and chapter information of a file.
std::size_t firstSegmentIndex
GeneralMediaFormat streamFormat
constexpr TAG_PARSER_EXPORT const char * comment()
The TagTarget class specifies the target of a tag.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
Implementation of TagParser::AbstractTrack for OGG streams.
std::size_t firstPageIndex
std::size_t lastPageIndex
std::size_t lastSegmentIndex
TagType
Specifies the tag type.
void set(std::size_t pageIndex, std::size_t segmentIndex, bool lastMetaDataBlock, GeneralMediaFormat streamFormat=GeneralMediaFormat::Vorbis)
Sets the firstPageIndex/lastPageIndex, the firstSegmentIndex/lastSegmentIndex, whether the associated...