diff --git a/src/lib/exporters/ableton/builders.ts b/src/lib/exporters/ableton/builders.ts index 5ab1a52..fb69c62 100644 --- a/src/lib/exporters/ableton/builders.ts +++ b/src/lib/exporters/ableton/builders.ts @@ -625,6 +625,8 @@ async function buildDrumRackDevice(koTrack: AblTrack, abletonVersion: AbletonVer continue; } + // EP133 is 3x4 (top→bottom), Ableton Drum Rack is 4x4 (bottom→top) + // flip vertically: row 3 → row 0, row 0 → row 3 const drumPad = getDrumRackMidiNote(subtrack.padCode) - 36; const drumBranch = structuredClone(drumBranchTemplate.DrumBranch); @@ -635,7 +637,7 @@ async function buildDrumRackDevice(koTrack: AblTrack, abletonVersion: AbletonVer drumBranch.Name.UserName['@Value'] = subtrack.name; drumBranch.BranchInfo.ReceivingNote['@Value'] = note; drumBranch.BranchInfo.SendingNote['@Value'] = - subtrack.drumRackSendingNote ?? subtrack.rootNote; + subtrack.drumRackSendingNote ?? subtrack.rootNote; // not sure if this matters drumBranch.BranchInfo.ChokeGroup['@Value'] = subtrack.inChokeGroup ? 1 : 0; drumBranch.MixerDevice.Volume.Manual['@Value'] = subtrack.volume; drumBranch.DeviceChain.MidiToAudioDeviceChain.Devices = await buildSimplerDevice(