Made unison frequency spread to depend on Bandwidth controllers and parameters

(cherry picked from commit c2d08b3b5784059501bc074c6574e28b1c96c63f)
This commit is contained in:
Paul
2009-09-23 20:58:46 +03:00
committed by Tobias Doerffel
parent f2362df5fb
commit 9d4bdb93a9
2 changed files with 3 additions and 2 deletions

View File

@@ -901,4 +901,4 @@
23 Sep 2009 (Paul Nasca)
- Added unison invert phase
- Made unison frequency spread to depend on Bandwidth controllers and parameters

View File

@@ -776,6 +776,7 @@ void ADnote::compute_unison_freq_rap(int nvoice){
unison_freq_rap[nvoice][0]=1.0;
return;
};
REALTYPE relbw=ctl->bandwidth.relbw*bandwidthDetuneMultiplier;
for (int k=0;k<unison_size[nvoice];k++){
REALTYPE pos=unison_vibratto[nvoice].position[k];
REALTYPE step=unison_vibratto[nvoice].step[k];
@@ -788,7 +789,7 @@ void ADnote::compute_unison_freq_rap(int nvoice){
pos=1.0;
step=-step;
};
unison_freq_rap[nvoice][k]=unison_base_freq_rap[nvoice][k]+pos*unison_vibratto[nvoice].amplitude;
unison_freq_rap[nvoice][k]=1.0+((unison_base_freq_rap[nvoice][k]-1.0)+pos*unison_vibratto[nvoice].amplitude)*relbw;
unison_vibratto[nvoice].position[k]=pos;
step=unison_vibratto[nvoice].step[k]=step;