30#include <QApplication>
43 return fwrite(buf, 1, bufsize, fp);
54 id3tag_set_title(gf,
"Title");
63 int meanbitrate = 128;
64 int preset = STANDARD;
83 lame_set_preset(gf, preset);
87 lame_set_preset(gf, meanbitrate);
88 lame_set_VBR(gf, vbr_off);
93 lame_set_mode(gf, MONO);
96 lameret = lame_init_params(gf);
103 Encoder(outfile, qualitylevel, metadata),
104 m_mp3Buf(new char[m_mp3BufSize]),
112 LOG(VB_GENERAL, LOG_ERR,
113 QString(
"Error initializing LAME encoder. Got return code: %1")
151 lameret = lame_encode_buffer_interleaved(
m_gf,
bytes,
158 lameret = lame_encode_flush(
m_gf, (
unsigned char *)
m_mp3Buf,
164 LOG(VB_GENERAL, LOG_ERR, QString(
"LAME encoder error."));
166 else if (lameret > 0 &&
m_out)
170 LOG(VB_GENERAL, LOG_ERR,
"Failed to write mp3 data. Aborting.");
MusicMetadata * m_metadata
LameEncoder(const QString &outfile, int qualitylevel, MusicMetadata *metadata, bool vbr=false)
static void init_id3tags(lame_global_flags *gf)
int addSamples(int16_t *bytes, unsigned int len) override
int init_encoder(lame_global_flags *gf, int quality, bool vbr) const
static int write_buffer(char *buf, int bufsize, FILE *fp)
#define LOG(_MASK_, _LEVEL_, _QSTRING_)