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;
139 bool isChecksumValidationEnabled()
const;
140 void setChecksumValidationEnabled(
bool enabled);
141 void reset()
override;
145 std::size_t tagCount()
const override;
146 bool removeTag(
Tag *tag)
override;
147 void removeAllTags()
override;
156 void announceComment(
161 std::unordered_map<std::uint32_t, std::vector<std::unique_ptr<OggStream>>::size_type> m_streamsBySerialNo;
164 bool m_validateChecksums;
177 return m_validateChecksums;
186 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