18 #ifndef OPUS_ENCODER_H 19 #define OPUS_ENCODER_H 25 #include <opus/opus.h> 26 #include <opus/opus_multistream.h> 44 class MultiTrackReader;
66 virtual bool open(QWidget *widget,
75 virtual bool writeHeader(QIODevice &dst) Q_DECL_OVERRIDE;
84 QIODevice &dst) Q_DECL_OVERRIDE;
89 virtual void close() Q_DECL_OVERRIDE;
100 bool setupDownMix(QWidget *widget,
unsigned int tracks,
int bitrate);
108 bool setupBitrate(QWidget *widget,
unsigned int tracks);
117 bool setupCodingRate(QWidget *widget,
unsigned int tracks,
double rate);
126 bool setupEncoder(QWidget *widget,
unsigned int tracks,
double rate);
Kwave::opus_header_t m_opus_header
virtual bool writeHeader(QIODevice &dst) Q_DECL_OVERRIDE
unsigned int fillInBuffer(Kwave::MultiTrackReader &src)
Kwave::StreamObject * m_rate_converter
bool writeOggPage(QIODevice &dst)
Kwave::VorbisCommentMap m_comments_map
bool writeOpusTags(QIODevice &dst)
bool setupBitrate(QWidget *widget, unsigned int tracks)
Kwave::MultiTrackSink< Kwave::SampleBuffer, true > * m_buffer
unsigned int m_encoder_channels
bool writeOpusHeader(QIODevice &dst)
unsigned int m_max_frame_bytes
Kwave::ChannelMixer * m_channel_mixer
virtual bool encode(Kwave::MultiTrackReader &src, QIODevice &dst) Q_DECL_OVERRIDE
bool setupEncoder(QWidget *widget, unsigned int tracks, double rate)
Kwave::StreamObject * m_last_queue_element
bool setupCodingRate(QWidget *widget, unsigned int tracks, double rate)
unsigned int m_frame_size
virtual void close() Q_DECL_OVERRIDE
bool setupDownMix(QWidget *widget, unsigned int tracks, int bitrate)
unsigned char * m_packet_buffer
OpusMSEncoder * m_encoder
virtual bool open(QWidget *widget, const Kwave::FileInfo &info, Kwave::MultiTrackReader &src) Q_DECL_OVERRIDE
virtual ~OpusEncoder() Q_DECL_OVERRIDE
bool setupBitrateMode(QWidget *widget)
enum Kwave::OpusEncoder::@12 m_downmix