Removal of the "sample-exact controllers" and "anti-aliasing oscillators" qualitysettings.

This commit is contained in:
Vesa
2014-05-18 21:36:49 +03:00
parent 465aa1afbc
commit 97ff5e99e0
5 changed files with 11 additions and 38 deletions

View File

@@ -24,8 +24,8 @@
*/
#ifndef _CONTROLLER_H
#define _CONTROLLER_H
#ifndef CONTROLLER_H
#define CONTROLLER_H
#include "engine.h"
#include "Mixer.h"
@@ -65,9 +65,7 @@ public:
inline bool isSampleExact() const
{
return m_sampleExact ||
engine::mixer()->currentQualitySettings().
sampleExactControllers;
return m_sampleExact;
}
void setSampleExact( bool _exact )

View File

@@ -106,8 +106,6 @@ public:
Interpolation interpolation;
Oversampling oversampling;
bool sampleExactControllers;
bool aliasFreeOscillators;
qualitySettings( Mode _m )
{
@@ -116,31 +114,22 @@ public:
case Mode_Draft:
interpolation = Interpolation_Linear;
oversampling = Oversampling_None;
sampleExactControllers = false;
aliasFreeOscillators = false;
break;
case Mode_HighQuality:
interpolation =
Interpolation_SincFastest;
oversampling = Oversampling_2x;
sampleExactControllers = true;
aliasFreeOscillators = false;
break;
case Mode_FinalMix:
interpolation = Interpolation_SincBest;
oversampling = Oversampling_8x;
sampleExactControllers = true;
aliasFreeOscillators = true;
break;
}
}
qualitySettings( Interpolation _i, Oversampling _o, bool _sec,
bool _afo ) :
qualitySettings( Interpolation _i, Oversampling _o ) :
interpolation( _i ),
oversampling( _o ),
sampleExactControllers( _sec ),
aliasFreeOscillators( _afo )
oversampling( _o )
{
}

View File

@@ -360,7 +360,8 @@ void WatsynInstrument::playNote( NotePlayHandle * _n,
const float tfp_ = static_cast<float>( _n->totalFramesPlayed() );
// if sample-exact is enabled, use sample-exact calculations...
if( engine::mixer()->currentQualitySettings().sampleExactControllers )
// disabled pending proper implementation of sample-exactness
/* if( engine::mixer()->currentQualitySettings().sampleExactControllers )
{
for( fpp_t f=0; f < frames; f++ )
{
@@ -393,10 +394,11 @@ void WatsynInstrument::playNote( NotePlayHandle * _n,
( bbuf[f][1] * bmix );
}
}
else*/
// if sample-exact is not enabled, use simpler calculations:
// if mix envelope is active, and we haven't gone past the envelope end, use envelope-aware calculation...
else if( envAmt != 0.0f && tfp_ < envLen )
if( envAmt != 0.0f && tfp_ < envLen )
{
const float mixvalue_ = m_abmix.value();
for( fpp_t f=0; f < frames; f++ )

View File

@@ -272,13 +272,6 @@
</item>
</widget>
</item>
<item>
<widget class="QCheckBox" name="sampleExactControllersCB" >
<property name="text" >
<string>Sample-exact controllers</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="exportLoopCB">
<property name="text">
@@ -286,13 +279,6 @@
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="aliasFreeOscillatorsCB" >
<property name="text" >
<string>Alias-free oscillators</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation" >

View File

@@ -251,9 +251,7 @@ ProjectRenderer* exportProjectDialog::prepRender()
Mixer::qualitySettings qs =
Mixer::qualitySettings(
static_cast<Mixer::qualitySettings::Interpolation>(interpolationCB->currentIndex()),
static_cast<Mixer::qualitySettings::Oversampling>(oversamplingCB->currentIndex()),
sampleExactControllersCB->isChecked(),
aliasFreeOscillatorsCB->isChecked() );
static_cast<Mixer::qualitySettings::Oversampling>(oversamplingCB->currentIndex()) );
ProjectRenderer::OutputSettings os = ProjectRenderer::OutputSettings(
samplerateCB->currentText().section(" ", 0, 0).toUInt(),