Merge branch 'stable-1.1'

Conflicts:
	plugins/delay/delaycontrolsdialog.cpp
	plugins/delay/delayeffect.cpp
This commit is contained in:
Vesa
2014-11-26 14:10:00 +02:00
6 changed files with 7 additions and 26 deletions

View File

@@ -35,7 +35,7 @@ DelayControls::DelayControls( DelayEffect* effect ):
m_delayTimeModel( 2.0, 0.01, 20.0, 0.0001, 20000.0, this, tr( "Delay Samples" )) ,
m_feedbackModel(0.0f,0.0f,1.0f,0.01f,this,tr( "Feedback" ) ),
m_lfoTimeModel(2.0, 0.01, 20.0, 0.0001, 20000.0, this, tr( "Lfo Frequency" ) ),
m_lfoAmountModel(0.0f,0.0f,0.1f,0.0001f, this, tr ( "Lfo Amount" ) )
m_lfoAmountModel(0.0, 0.0, 2.0, 0.0001, 2000.0, this, tr ( "Lfo Amount" ) )
{
connect( Engine::mixer(), SIGNAL( sampleRateChanged() ), this, SLOT( changeSampleRate() ) );
}

View File

@@ -63,7 +63,7 @@ private:
TempoSyncKnobModel m_delayTimeModel;
FloatModel m_feedbackModel;
TempoSyncKnobModel m_lfoTimeModel;
FloatModel m_lfoAmountModel;
TempoSyncKnobModel m_lfoAmountModel;
friend class DelayControlsDialog;
friend class DelayEffect;

View File

@@ -60,9 +60,9 @@ DelayControlsDialog::DelayControlsDialog( DelayControls *controls ) :
lfoFreqKnob->setLabel( tr( "Rate" ) );
lfoFreqKnob->setHintText( tr ( "Lfo Seconds:" ) + " ", "" );
Knob * lfoAmtKnob = new Knob( knobBright_26, this );
TempoSyncKnob * lfoAmtKnob = new TempoSyncKnob( knobBright_26, this );
lfoAmtKnob->move( 150,10 );
lfoAmtKnob->setVolumeKnob( true );
lfoAmtKnob->setVolumeKnob( false );
lfoAmtKnob->setModel( &controls->m_lfoAmountModel );
lfoAmtKnob->setLabel( tr( "Lfo" ) );
lfoAmtKnob->setHintText( tr ( "Lfo Amt:" ) + " ", "" );

View File

@@ -83,7 +83,7 @@ bool DelayEffect::processAudioBuffer( sampleFrame* buf, const fpp_t frames )
const float d = dryLevel();
const float w = wetLevel();
const float length = m_delayControls.m_delayTimeModel.value() * Engine::mixer()->processingSampleRate();
m_lfo->setAmplitude( m_delayControls.m_lfoAmountModel.value() );
const float amplitude = m_delayControls.m_lfoAmountModel.value() * Engine::mixer()->processingSampleRate();
m_lfo->setFrequency( 1.0 / m_delayControls.m_lfoTimeModel.value() );
m_delay->setFeedback( m_delayControls.m_feedbackModel.value() );
sample_t dryS[2];
@@ -91,7 +91,7 @@ bool DelayEffect::processAudioBuffer( sampleFrame* buf, const fpp_t frames )
{
dryS[0] = buf[f][0];
dryS[1] = buf[f][1];
m_delay->setLength( ( float )length * ( float )m_lfo->tick() );
m_delay->setLength( ( float )length + ( amplitude * ( float )m_lfo->tick() ) );
m_delay->tick( buf[f] );
buf[f][0] = ( d * dryS[0] ) + ( w * buf[f][0] );

View File

@@ -42,11 +42,5 @@ float Lfo::tick()
float output = sinf( m_phase );
m_phase += m_increment;
if( m_amplitude > 0.0001 )
{
return ( ( output * m_amplitude + 1.0 ) * 0.5 ) ;
} else
{
return 1;
}
return output;
}

View File

@@ -56,18 +56,6 @@ public:
inline void setAmplitude( float amplitude )
{
if( amplitude < 0.0 || amplitude > 1.0 )
{
return;
}
m_amplitude = amplitude;
}
inline void setSampleRate ( int samplerate )
{
m_samplerate = samplerate;
@@ -84,7 +72,6 @@ private:
double m_frequency;
double m_phase;
double m_increment;
double m_amplitude;
double m_twoPiOverSr;
int m_samplerate;
};