bugfixes and more

git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@139 0778d3d1-df1d-0410-868b-ea421aaaa00d
This commit is contained in:
Tobias Doerffel
2006-05-29 13:08:08 +00:00
parent 260e8cf59f
commit 60e2442405
11 changed files with 3297 additions and 70 deletions

View File

@@ -298,7 +298,7 @@ void organicInstrument::playNote( notePlayHandle * _n )
{
// volume
float volume = m_osc[i].volKnob->value() / 100.0 / m_num_oscillators ;
float volume = 1.0 / m_num_oscillators ;
float volume_l = volume * ( m_osc[i].panKnob->value() +
PANNING_RIGHT ) / 100.0f;
float volume_r = volume * ( PANNING_RIGHT -
@@ -334,7 +334,8 @@ void organicInstrument::playNote( notePlayHandle * _n )
oscillator::MIX,
freq_l,
phase_l,
volume_l,
volume_l,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate() );
// create right oscillator
oscs_r[i] = oscillator::createOsc(
@@ -342,7 +343,8 @@ void organicInstrument::playNote( notePlayHandle * _n )
oscillator::MIX,
freq_r,
phase_r,
volume_r,
volume_r,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate() );
} else {
@@ -352,7 +354,8 @@ void organicInstrument::playNote( notePlayHandle * _n )
oscillator::MIX,
freq_l,
phase_l,
volume_l,
volume_l,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate(),
oscs_l[i + 1] );
// create right oscillator
@@ -361,7 +364,8 @@ void organicInstrument::playNote( notePlayHandle * _n )
oscillator::MIX,
freq_r,
phase_r,
volume_r,
volume_r,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate(),
oscs_r[i + 1] );

View File

@@ -633,9 +633,6 @@ void tripleOscillator::playNote( notePlayHandle * _n )
vol_fac_r = 1.0f;
}
vol_fac_l *= m_osc[i].volKnob->value() / 100.0f;
vol_fac_r *= m_osc[i].volKnob->value() / 100.0f;
// the third oscs needs no sub-oscs...
if( i == 2 )
{
@@ -646,7 +643,8 @@ void tripleOscillator::playNote( notePlayHandle * _n )
static_cast<int>(
m_osc[i].phaseOffsetKnob->value() +
m_osc[i].stereoPhaseDetuningKnob->value() ),
vol_fac_l,
vol_fac_l,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate() );
oscs_r[i] = oscillator::createOsc(
m_osc[i].waveShape,
@@ -654,7 +652,8 @@ void tripleOscillator::playNote( notePlayHandle * _n )
freq*osc_detuning_r,
static_cast<int>(
m_osc[i].phaseOffsetKnob->value() ),
vol_fac_r,
vol_fac_r,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate() );
}
else
@@ -666,7 +665,8 @@ void tripleOscillator::playNote( notePlayHandle * _n )
static_cast<int>(
m_osc[i].phaseOffsetKnob->value() +
m_osc[i].stereoPhaseDetuningKnob->value() ),
vol_fac_l,
vol_fac_l,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate(),
oscs_l[i + 1] );
oscs_r[i] = oscillator::createOsc(
@@ -675,7 +675,8 @@ void tripleOscillator::playNote( notePlayHandle * _n )
freq*osc_detuning_r,
static_cast<int>(
m_osc[i].phaseOffsetKnob->value() ),
vol_fac_r,
vol_fac_r,
m_osc[i].volKnob,
eng()->getMixer()->sampleRate(),
oscs_r[i + 1] );
}
@@ -683,11 +684,9 @@ void tripleOscillator::playNote( notePlayHandle * _n )
if( m_osc[i].waveShape == oscillator::USER_DEF_WAVE )
{
oscs_l[i]->setUserWave(
m_osc[i].m_sampleBuffer->data(),
m_osc[i].m_sampleBuffer->frames() );
m_osc[i].m_sampleBuffer );
oscs_r[i]->setUserWave(
m_osc[i].m_sampleBuffer->data(),
m_osc[i].m_sampleBuffer->frames() );
m_osc[i].m_sampleBuffer );
}
}