MythTV  master
vorbisencoder.h
Go to the documentation of this file.
1 #ifndef VORBISENCODER_H_
2 #define VORBISENCODER_H_
3 
4 class MusicMetadata;
5 class Encoder;
6 class QString;
7 
8 #include <vorbis/vorbisenc.h>
9 
10 class VorbisEncoder : public Encoder
11 {
12  public:
13  VorbisEncoder(const QString &outfile, int qualitylevel, MusicMetadata *metadata);
14  ~VorbisEncoder() override;
15  int addSamples(int16_t *bytes, unsigned int len) override; // Encoder
16 
17  private:
18  ogg_page m_og {};
19  ogg_packet m_op {};
20  long m_packetsDone {0};
21  long m_bytesWritten {0L};
22  vorbis_comment m_vc {};
23  ogg_stream_state m_os {};
24 
25  vorbis_dsp_state m_vd {};
26  vorbis_block m_vb {};
27  vorbis_info m_vi {};
28 };
29 
30 #endif
vorbis_info m_vi
Definition: vorbisencoder.h:27
~VorbisEncoder() override
vorbis_block m_vb
Definition: vorbisencoder.h:26
ogg_stream_state m_os
Definition: vorbisencoder.h:23
vorbis_comment m_vc
Definition: vorbisencoder.h:22
ogg_packet m_op
Definition: vorbisencoder.h:19
int addSamples(int16_t *bytes, unsigned int len) override
vorbis_dsp_state m_vd
Definition: vorbisencoder.h:25
VorbisEncoder(const QString &outfile, int qualitylevel, MusicMetadata *metadata)
ogg_page m_og
Definition: vorbisencoder.h:18