Tag Parser  8.0.0
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
mpegaudioframestream.h
Go to the documentation of this file.
1 #ifndef TAG_PARSER_MPEGAUDIOFRAMESTREAM_H
2 #define TAG_PARSER_MPEGAUDIOFRAMESTREAM_H
3 
4 #include "./mpegaudioframe.h"
5 
6 #include "../abstracttrack.h"
7 
8 #include <list>
9 
10 namespace TagParser {
11 
13 public:
14  MpegAudioFrameStream(std::iostream &stream, uint64 startOffset);
15  ~MpegAudioFrameStream() override;
16 
17  TrackType type() const override;
18 
19  static void addInfo(const MpegAudioFrame &frame, AbstractTrack &track);
20 
21 protected:
22  void internalParseHeader(Diagnostics &diag) override;
23 
24 private:
25  std::list<MpegAudioFrame> m_frames;
26 };
27 
31 inline MpegAudioFrameStream::MpegAudioFrameStream(std::iostream &stream, uint64 startOffset)
32  : AbstractTrack(stream, startOffset)
33 {
35 }
36 
38 {
39 }
40 
42 {
44 }
45 
46 } // namespace TagParser
47 
48 #endif // MPEGAUDIOFRAMESTREAM_H
The MpegAudioFrame class is used to parse MPEG audio frames.
MpegAudioFrameStream(std::iostream &stream, uint64 startOffset)
Constructs a new track for the stream at the specified startOffset.
Implementation of TagParser::AbstractTrack MPEG audio streams.
The AbstractTrack class parses and stores technical information about video, audio and other kinds of...
Definition: abstracttrack.h:40
Contains all classes and functions of the TagInfo library.
Definition: aaccodebook.h:9
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
TrackType
Specifies the track type.
Definition: abstracttrack.h:28
TrackType type() const override
Returns the type of the track if known; otherwise returns TrackType::Unspecified. ...
The Diagnostics class is a container for DiagMessage.
Definition: diagnostics.h:156