Update Ableton exporter logic to use AutomationTarget ID for both arrangement and session targets.
This commit is contained in:
@@ -41,7 +41,7 @@ export function convertFaderValue(
|
|||||||
) {
|
) {
|
||||||
switch (parameter) {
|
switch (parameter) {
|
||||||
case FaderParam.LVL:
|
case FaderParam.LVL:
|
||||||
if (groupMixer || session) {
|
if (groupMixer) {
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
return track.volume * value;
|
return track.volume * value;
|
||||||
|
|||||||
@@ -94,15 +94,13 @@ function setLive10SampleReference(fileRef: any, sampleName: string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function targetFor(parameter: any): { arrangement?: number; session?: number } {
|
function targetFor(parameter: any): { arrangement?: number; session?: number } {
|
||||||
|
const automationTarget =
|
||||||
|
parameter?.AutomationTarget?.['@Id'] === undefined
|
||||||
|
? undefined
|
||||||
|
: Number(parameter.AutomationTarget['@Id']);
|
||||||
return {
|
return {
|
||||||
arrangement:
|
arrangement: automationTarget,
|
||||||
parameter?.AutomationTarget?.['@Id'] === undefined
|
session: automationTarget,
|
||||||
? undefined
|
|
||||||
: Number(parameter.AutomationTarget['@Id']),
|
|
||||||
session:
|
|
||||||
parameter?.ModulationTarget?.['@Id'] === undefined
|
|
||||||
? undefined
|
|
||||||
: Number(parameter.ModulationTarget['@Id']),
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -141,11 +139,11 @@ function trackAutomationTargets(midiTrack: any, includeArrangementMixer: boolean
|
|||||||
const mixer = midiTrack.DeviceChain.Mixer;
|
const mixer = midiTrack.DeviceChain.Mixer;
|
||||||
addTarget(targets, FaderParam.LVL, {
|
addTarget(targets, FaderParam.LVL, {
|
||||||
arrangement: includeArrangementMixer ? Number(mixer.Volume.AutomationTarget['@Id']) : undefined,
|
arrangement: includeArrangementMixer ? Number(mixer.Volume.AutomationTarget['@Id']) : undefined,
|
||||||
session: Number(mixer.Volume.ModulationTarget['@Id']),
|
session: Number(mixer.Volume.AutomationTarget['@Id']),
|
||||||
});
|
});
|
||||||
addTarget(targets, FaderParam.PAN, {
|
addTarget(targets, FaderParam.PAN, {
|
||||||
arrangement: includeArrangementMixer ? Number(mixer.Pan.AutomationTarget['@Id']) : undefined,
|
arrangement: includeArrangementMixer ? Number(mixer.Pan.AutomationTarget['@Id']) : undefined,
|
||||||
session: Number(mixer.Pan.ModulationTarget['@Id']),
|
session: Number(mixer.Pan.AutomationTarget['@Id']),
|
||||||
});
|
});
|
||||||
|
|
||||||
const send = mixer.Sends?.TrackSendHolder?.Send;
|
const send = mixer.Sends?.TrackSendHolder?.Send;
|
||||||
|
|||||||
Reference in New Issue
Block a user