Update Ableton exporter logic to use AutomationTarget ID for both arrangement and session targets.

This commit is contained in:
2026-07-13 05:12:11 +02:00
parent e2364478fa
commit 71274252da
2 changed files with 9 additions and 11 deletions

View File

@@ -41,7 +41,7 @@ export function convertFaderValue(
) {
switch (parameter) {
case FaderParam.LVL:
if (groupMixer || session) {
if (groupMixer) {
return value;
}
return track.volume * value;

View File

@@ -94,15 +94,13 @@ function setLive10SampleReference(fileRef: any, sampleName: string) {
}
function targetFor(parameter: any): { arrangement?: number; session?: number } {
const automationTarget =
parameter?.AutomationTarget?.['@Id'] === undefined
? undefined
: Number(parameter.AutomationTarget['@Id']);
return {
arrangement:
parameter?.AutomationTarget?.['@Id'] === undefined
? undefined
: Number(parameter.AutomationTarget['@Id']),
session:
parameter?.ModulationTarget?.['@Id'] === undefined
? undefined
: Number(parameter.ModulationTarget['@Id']),
arrangement: automationTarget,
session: automationTarget,
};
}
@@ -141,11 +139,11 @@ function trackAutomationTargets(midiTrack: any, includeArrangementMixer: boolean
const mixer = midiTrack.DeviceChain.Mixer;
addTarget(targets, FaderParam.LVL, {
arrangement: includeArrangementMixer ? Number(mixer.Volume.AutomationTarget['@Id']) : undefined,
session: Number(mixer.Volume.ModulationTarget['@Id']),
session: Number(mixer.Volume.AutomationTarget['@Id']),
});
addTarget(targets, FaderParam.PAN, {
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;