Skip to content

Commit

Permalink
Fix fade level output range to 0-10 instead of 0-1
Browse files Browse the repository at this point in the history
  • Loading branch information
DaveBenham committed Apr 11, 2024
1 parent 01d8836 commit 44de502
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 8 deletions.
4 changes: 4 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@
- New output channel count option
- Mono input cloned to match selected channel count

### Bug Fixes
- Mix Fade and Mix Fade 2
- Fixed range of level output to 0-10 V. Was erroneously 0-1 V.

## 2.7.0 (2024-03-11)
### New Modules
- Auxilliary Clone Expander
Expand Down
4 changes: 2 additions & 2 deletions src/Mix4.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ struct Mix4 : MixBaseModule {
fade[i].process(args.sampleTime, soloMod->params[SOLO_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute){
fade[i].rise = fade[i].fall = 40.f;
Expand All @@ -219,7 +219,7 @@ struct Mix4 : MixBaseModule {
fade[i].process(args.sampleTime, !muteMod->params[MUTE_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute) {
fade[i].rise = fade[i].fall = 40.f;
Expand Down
4 changes: 2 additions & 2 deletions src/Mix4Stereo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,7 @@ struct Mix4Stereo : MixBaseModule {
fade[i].process(args.sampleTime, soloMod->params[SOLO_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute){
fade[i].rise = fade[i].fall = 40.f;
Expand All @@ -312,7 +312,7 @@ struct Mix4Stereo : MixBaseModule {
fade[i].process(args.sampleTime, !muteMod->params[MUTE_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute) {
fade[i].rise = fade[i].fall = 40.f;
Expand Down
4 changes: 2 additions & 2 deletions src/VCAMix4.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ struct VCAMix4 : MixBaseModule {
fade[i].process(args.sampleTime, soloMod->params[SOLO_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute){
fade[i].rise = fade[i].fall = 40.f;
Expand All @@ -262,7 +262,7 @@ struct VCAMix4 : MixBaseModule {
fade[i].process(args.sampleTime, !muteMod->params[MUTE_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute) {
fade[i].rise = fade[i].fall = 40.f;
Expand Down
4 changes: 2 additions & 2 deletions src/VCAMix4Stereo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ struct VCAMix4Stereo : MixBaseModule {
fade[i].process(args.sampleTime, soloMod->params[SOLO_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute){
fade[i].rise = fade[i].fall = 40.f;
Expand All @@ -418,7 +418,7 @@ struct VCAMix4Stereo : MixBaseModule {
fade[i].process(args.sampleTime, !muteMod->params[MUTE_PARAM+i].getValue());
shape = fadeExpander->params[(isFadeType ? static_cast<int>(FADE_SHAPE_PARAM) : static_cast<int>(FADE2_SHAPE_PARAM))+i].getValue();
fadeLevel[i] = crossfade(fade[i].out, shape>0.f ? 11.f*fade[i].out/(10.f*fade[i].out+1.f) : pow(fade[i].out,4), shape>0.f ? shape : -shape);
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]); // fade & fade2 outputs match
fadeExpander->outputs[FADE_OUTPUT+i].setVoltage(fadeLevel[i]*10.f); // fade & fade2 outputs match
}
else if (softMute) {
fade[i].rise = fade[i].fall = 40.f;
Expand Down

0 comments on commit 44de502

Please sign in to comment.