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 std::string_view tagName =
"OGG Vorbis comment";
76 std::string_view 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;
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;
The AbortableProgressFeedback class provides feedback about an ongoing operation via callbacks.
The Diagnostics class is a container for DiagMessage.
The GenericContainer class helps parsing header, track, tag and chapter information of a file.
Implementation of TagParser::AbstractContainer for OGG files.
void setChecksumValidationEnabled(bool enabled)
Sets whether checksum validation is enabled.
bool isChecksumValidationEnabled() const
Returns whether checksum validation is enabled.
The OggIterator class helps iterating through all segments of an OGG bitstream.
Implementation of TagParser::AbstractTrack for OGG streams.
The TagTarget class specifies the target of a tag.
The Tag class is used to store, read and write tag information.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
constexpr TAG_PARSER_EXPORT std::string_view comment()
Contains all classes and functions of the TagInfo library.
TagType
Specifies the tag type.
GeneralMediaFormat
The GeneralMediaFormat enum specifies the general format of media data (PCM, MPEG-4,...
The OggParameter struct holds the OGG parameter for a VorbisComment.
GeneralMediaFormat streamFormat
std::size_t lastPageIndex
std::size_t lastSegmentIndex
constexpr OggParameter()
Creates new parameters.
std::size_t firstSegmentIndex
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...
std::size_t firstPageIndex