kwave
18.07.70
|
#include <FlacEncoder.h>
Classes | |
class | VorbisCommentContainer |
Public Member Functions | |
FlacEncoder () | |
virtual | ~FlacEncoder () Q_DECL_OVERRIDE |
virtual Kwave::Encoder * | instance () Q_DECL_OVERRIDE |
virtual bool | encode (QWidget *widget, Kwave::MultiTrackReader &src, QIODevice &dst, const Kwave::MetaDataList &meta_data) Q_DECL_OVERRIDE |
virtual QList< Kwave::FileProperty > | supportedProperties () Q_DECL_OVERRIDE |
![]() | |
Encoder () | |
virtual | ~Encoder () |
virtual QList< Kwave::FileProperty > | unsupportedProperties (const QList< Kwave::FileProperty > &properties_to_check) |
![]() | |
CodecBase () | |
virtual | ~CodecBase () |
virtual bool | supports (const QMimeType &mimetype) |
virtual bool | supports (const QString &mimetype_name) |
virtual QStringList | extensions (const QString &mimetype_name) const |
virtual const QList< CodecBase::MimeType > | mimeTypes () |
virtual const QList< Kwave::Compression::Type > | compressionTypes () |
virtual void | addMimeType (const char *name, const QString &description, const char *patterns) |
virtual void | addCompression (Kwave::Compression::Type compression) |
virtual QString | mimeTypeOf (const QUrl &url) |
Protected Member Functions | |
virtual ::FLAC__StreamEncoderWriteStatus | write_callback (const FLAC__byte buffer[], size_t bytes, unsigned samples, unsigned current_frame) Q_DECL_OVERRIDE |
virtual void | metadata_callback (const ::FLAC__StreamMetadata *metadata) Q_DECL_OVERRIDE |
virtual void | encodeMetaData (const Kwave::FileInfo &info, QVector< FLAC__StreamMetadata *> &flac_metadata) |
Private Attributes | |
Kwave::VorbisCommentMap | m_vorbis_comment_map |
QIODevice * | m_dst |
Definition at line 43 of file FlacEncoder.h.
Kwave::FlacEncoder::FlacEncoder | ( | ) |
Constructor
Definition at line 46 of file FlacEncoder.cpp.
References REGISTER_COMPRESSION_TYPES, and REGISTER_MIME_TYPES.
|
virtual |
|
virtual |
Encodes a signal into a stream of bytes.
widget | a widget that can be used for displaying message boxes or dialogs |
src | MultiTrackReader used as source of the audio data |
dst | file or other source to receive a stream of bytes |
meta_data | meta data of the file to save |
Implements Kwave::Encoder.
Definition at line 167 of file FlacEncoder.cpp.
References Kwave::FileInfo::bits(), Kwave::StreamObject::blockSize(), Kwave::SampleArray::data(), encodeMetaData(), Kwave::MessageBox::error(), Kwave::MultiTrackReader::isCanceled(), Kwave::FileInfo::length(), m_dst, Kwave::FileInfo::rate(), Kwave::SampleArray::resize(), SAMPLE_BITS, Kwave::SampleArray::size(), Kwave::toUint(), and Kwave::FileInfo::tracks().
|
protectedvirtual |
Encode all Kwave file info into FLAC meta data
info | information about the file to be saved |
flac_metadata | QList with collects the FLAC metadata |
Definition at line 145 of file FlacEncoder.cpp.
References Kwave::FlacEncoder::VorbisCommentContainer::add(), Kwave::FileInfo::contains(), Kwave::FlacEncoder::VorbisCommentContainer::data(), Kwave::FileInfo::get(), and m_vorbis_comment_map.
Referenced by encode().
|
virtual |
Returns a new instance of the encoder
Implements Kwave::Encoder.
Definition at line 60 of file FlacEncoder.cpp.
|
protectedvirtual |
Callback for encoding meta data
metadata | pointer to a FLAC metadata structure that will be filled |
Definition at line 90 of file FlacEncoder.cpp.
|
virtual |
Returns a list of supported file properties
Reimplemented from Kwave::Encoder.
Definition at line 66 of file FlacEncoder.cpp.
References m_vorbis_comment_map.
|
protected |
Callback for writing data to the FLAC layer
buffer | array with samples |
bytes | length of the buffer in bytes |
samples | the number of samples |
current_frame | index of the current frame |
Definition at line 72 of file FlacEncoder.cpp.
References m_dst.
|
private |
pointer to the QIODevice for storing, used while encoding
Definition at line 140 of file FlacEncoder.h.
Referenced by encode(), and write_callback().
|
private |
map for translating vorbis comments to FileInfo properties
Definition at line 137 of file FlacEncoder.h.
Referenced by encodeMetaData(), and supportedProperties().