Crossfader settings not stored correctly
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mixxx |
Fix Released
|
Medium
|
Daniel Schürmann |
Bug Description
Steps to reproduce:
1) reset Mixxx profile (rename/delete existing profile folder)
2) run Mixxx
3) Settings > Crossfader
4) tick "Slow fade/fast cut (additive)"
5) drag slider to the far right (fast cut)
6) close Mixxx
mixxx.cfg:
xFaderCurve 999.6
7) re-launch Mixxx
8) check crossfader settings: slider is set off one step from the far right
mixxx.cfg
xFaderCurve 90.5918
after next launch it's
xFaderCurve 47.2644 and so on
Failed to work around by adding this line to my controller script:
engine.
Putting this in init or any other manually triggered function makes no difference.
Running mixxx rev5957
Linux 3.14.23-rt20 #1 SMP PREEMPT RT x86_64
description: | updated |
Changed in mixxx: | |
status: | Fix Committed → In Progress |
Changed in mixxx: | |
status: | In Progress → Fix Committed |
Changed in mixxx: | |
status: | Fix Committed → Fix Released |
Okay..after some digging I managed to get that script approach working.
Key was to configure BOTH xFaderCurve and xFaderCalibration.
Maybe someone finds this helpful.
Replace 'TerminalMix' with your controllers script prefix ('ReloopBeatpad' or whatever).
First function collects and prints xFader settings to terminal. xFaderSetup( 1);
In Preferences > Crossfader configure xFader as you like, then trigger the function via Midi.
Second function configures xFader with your desired values. This also can be fired via button or from init function of controller script like this:
TerminalMix.
TerminalMix. xFaderCheck = function (channel, control, value, status, group) { getValue( "[Mixer Profile]", "xFaderMode"); getValue( "[Mixer Profile]", "xFaderCalibrat ion"); getValue( "[Mixer Profile]", "xFaderCurve");
if (value) {
var xFMode = engine.
var xFCali = engine.
var xFCurve = engine.
print ("xFMode = "+xFMode+"");
print ("xFCali = "+xFCali+"");
print ("xFCurve = "+xFCurve+"");
}
}
TerminalMix. xFaderSetup = function (channel, control, value, status, group) {
engine. setValue( "[Mixer Profile]", "xFaderMode", 0);
engine. setValue( "[Mixer Profile]", "xFaderCalibrat ion", 0.9993068158128 623);
engine. setValue( "[Mixer Profile]", "xFaderCurve", 999.6);
if (value) {
/* Values set xFader to
- additive mode
- fast cut */
}
}
This works, but settings are not reflected in the Preferences GUI.
I'm curios: where are those settings stored anyway?
mixxx.cfg only stores xFaderCurve & xFaderMode, in db I find nothing related.