1#ifndef TAG_PARSER_FLACSTREAM_H
2#define TAG_PARSER_FLACSTREAM_H
16 FlacStream(MediaFileInfo &mediaFileInfo, std::uint64_t startOffset);
17 ~FlacStream()
override;
22 bool removeVorbisComment();
23 std::uint32_t paddingSize()
const;
24 std::uint32_t streamOffset()
const;
26 std::streamoff makeHeader(std::ostream &stream, Diagnostics &diag);
27 static void makePadding(std::ostream &stream, std::uint32_t size,
bool isLast, Diagnostics &diag);
30 void internalParseHeader(Diagnostics &diag, AbortableProgressFeedback &progress)
override;
33 MediaFileInfo &m_mediaFileInfo;
34 std::unique_ptr<VorbisComment> m_vorbisComment;
35 std::uint32_t m_paddingSize;
36 std::uint32_t m_streamOffset;
53 return m_vorbisComment.get();
70 return m_streamOffset;
TrackType type() const override
Returns the type of the track if known; otherwise returns TrackType::Unspecified.
std::uint32_t paddingSize() const
Returns the padding size.
VorbisComment * vorbisComment() const
Returns the Vorbis comment if one is present in the stream.
std::uint32_t streamOffset() const
Returns the start offset of the actual FLAC frames.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
Contains all classes and functions of the TagInfo library.
TrackType
The TrackType enum specifies the underlying file type of a track and the concrete class of the track ...