kwave
18.07.70
|
#include <NormalizePlugin.h>
Classes | |
struct | Average |
Public Member Functions | |
NormalizePlugin (QObject *parent, const QVariantList &args) | |
virtual | ~NormalizePlugin () Q_DECL_OVERRIDE |
virtual void | run (QStringList params) Q_DECL_OVERRIDE |
![]() | |
Plugin (QObject *parent, const QVariantList &args) | |
virtual | ~Plugin () Q_DECL_OVERRIDE |
virtual QString | name () const |
virtual QString | description () const |
virtual QString | progressText () |
virtual bool | canClose () const |
bool | isRunning () const |
bool | shouldStop () const |
virtual void | load (QStringList ¶ms) |
virtual void | unload () |
virtual QStringList * | setup (QStringList &previous_params) |
virtual int | start (QStringList ¶ms) |
virtual int | stop () |
Kwave::PluginManager & | manager () const |
Kwave::SignalManager & | signalManager () |
QWidget * | parentWidget () const |
QString | signalName () |
virtual sample_index_t | signalLength () |
virtual double | signalRate () |
virtual const QList< unsigned int > | selectedTracks () |
virtual sample_index_t | selection (QList< unsigned int > *tracks=Q_NULLPTR, sample_index_t *left=Q_NULLPTR, sample_index_t *right=Q_NULLPTR, bool expand_if_empty=false) |
virtual void | selectRange (sample_index_t offset, sample_index_t length) |
virtual void | migrateToActiveContext () |
![]() | |
virtual | ~Runnable () |
Private Member Functions | |
double | getMaxPower (Kwave::MultiTrackReader &source) |
void | getMaxPowerOfTrack (Kwave::SampleReader *reader, Kwave::NormalizePlugin::Average *average, unsigned int window_size) |
Additional Inherited Members | |
![]() | |
virtual void | setProgressDialogEnabled (bool enable) |
virtual void | updateProgress (qreal progress) |
virtual void | cancel () |
virtual void | close () |
void | release () |
![]() | |
void | sigRunning (Kwave::Plugin *plugin) |
void | sigDone (Kwave::Plugin *plugin) |
void | sigClosed (Kwave::Plugin *p) |
void | sigCommand (const QString &command) |
void | setProgressText (const QString &text) |
![]() | |
int | execute (QStringList ¶ms) |
void | emitCommand (const QString &command) |
void | use () |
void | setPluginManager (Kwave::PluginManager *new_plugin_manager) |
virtual void | run_wrapper (const QVariant ¶ms) Q_DECL_OVERRIDE |
This is a two-pass plugin that determines the average volume level of a signal and then calls the volume plugin to adjust the volume.
Definition at line 43 of file NormalizePlugin.h.
Kwave::NormalizePlugin::NormalizePlugin | ( | QObject * | parent, |
const QVariantList & | args | ||
) |
Constructor
parent | reference to our plugin manager |
args | argument list [unused] |
Definition at line 56 of file NormalizePlugin.cpp.
|
virtual |
|
private |
get the maximum power level of the input
Definition at line 142 of file NormalizePlugin.cpp.
References Kwave::SampleReader::eof(), Kwave::MultiTrackReader::eof(), getMaxPowerOfTrack(), Kwave::NormalizePlugin::Average::n, Kwave::FileInfo::rate(), Kwave::Plugin::shouldStop(), Kwave::Plugin::signalManager(), SMOOTHLEN, Kwave::NormalizePlugin::Average::sum, Kwave::toUint(), and Kwave::MultiTrackSource< SOURCE, INITIALIZE >::tracks().
Referenced by run().
|
private |
calculate the maximum power of one track
reader | reference to a SampleReader to read from |
average | reference to smoothing information |
window_size | length of the sliding window for volume detection |
Definition at line 197 of file NormalizePlugin.cpp.
References Kwave::StreamObject::blockSize(), Kwave::SampleReader::eof(), Kwave::NormalizePlugin::Average::fifo, Kwave::NormalizePlugin::Average::max, Kwave::NormalizePlugin::Average::n, Kwave::SampleReader::read(), sample2double(), SMOOTHLEN, Kwave::NormalizePlugin::Average::sum, and Kwave::NormalizePlugin::Average::wp.
Referenced by getMaxPower().
|
virtual |
normalizes the volume
params | list of strings with parameters |
Reimplemented from Kwave::Plugin.
Definition at line 68 of file NormalizePlugin.cpp.
References Kwave::connect(), Kwave::MultiTrackReader::eof(), Kwave::MultiWriter::flush(), getMaxPower(), Kwave::MultiTrackSource< SOURCE, INITIALIZE >::goOn(), Kwave::Overwrite, Kwave::Plugin::selection(), Kwave::Plugin::setProgressText(), Kwave::Plugin::shouldStop(), Kwave::Plugin::signalManager(), Kwave::SinglePassForward, TARGET_LEVEL, Kwave::MultiTrackSink< SINK, INITIALIZE >::tracks(), and Kwave::Plugin::updateProgress().