Update Ableton exporter builders to correctly initialize track and project structures
This commit is contained in:
@@ -850,6 +850,8 @@ async function buildReturnTrack(
|
|||||||
returnTrack.Name.EffectiveName['@Value'] = EFFECTS[projectData.effects.effectType] || '';
|
returnTrack.Name.EffectiveName['@Value'] = EFFECTS[projectData.effects.effectType] || '';
|
||||||
returnTrack.Name.UserName['@Value'] = EFFECTS[projectData.effects.effectType] || '';
|
returnTrack.Name.UserName['@Value'] = EFFECTS[projectData.effects.effectType] || '';
|
||||||
setColorValue(returnTrack, 28);
|
setColorValue(returnTrack, 28);
|
||||||
|
returnTrack.DeviceChain.Mixer.Sends = {};
|
||||||
|
returnTrack.DeviceChain.DeviceChain.Devices = {} as any;
|
||||||
|
|
||||||
if (projectData.effects.effectType === EffectType.Reverb) {
|
if (projectData.effects.effectType === EffectType.Reverb) {
|
||||||
const effectReverbTemplate = await loadTemplate<ALSReverb>('effectReverb', abletonVersion);
|
const effectReverbTemplate = await loadTemplate<ALSReverb>('effectReverb', abletonVersion);
|
||||||
@@ -974,11 +976,13 @@ export async function buildProject(projectData: ProjectRawData, exporterParams:
|
|||||||
`${projectData.scenesSettings.timeSignature.numerator}/${projectData.scenesSettings.timeSignature.denominator}`
|
`${projectData.scenesSettings.timeSignature.numerator}/${projectData.scenesSettings.timeSignature.denominator}`
|
||||||
] || TIME_SIGNATURES['4/4'];
|
] || TIME_SIGNATURES['4/4'];
|
||||||
|
|
||||||
project.Ableton.LiveSet.Tracks['#'] = await buildTracks(
|
const tracks = await buildTracks(
|
||||||
transformedData.tracks,
|
transformedData.tracks,
|
||||||
|
transformedData.groupLanes,
|
||||||
transformedData.scenes.length,
|
transformedData.scenes.length,
|
||||||
exporterParams,
|
exporterParams,
|
||||||
);
|
);
|
||||||
|
project.Ableton.LiveSet.Tracks = { '#': tracks } as any;
|
||||||
|
|
||||||
if (exporterParams.sendEffects) {
|
if (exporterParams.sendEffects) {
|
||||||
const returnTrack = await buildReturnTrack(
|
const returnTrack = await buildReturnTrack(
|
||||||
@@ -1007,14 +1011,16 @@ export async function buildProject(projectData: ProjectRawData, exporterParams:
|
|||||||
if (exporterParams.sendEffects) {
|
if (exporterParams.sendEffects) {
|
||||||
project.Ableton.LiveSet.SendsPre = {
|
project.Ableton.LiveSet.SendsPre = {
|
||||||
SendPreBool: {
|
SendPreBool: {
|
||||||
'@Id': 1,
|
'@Id': 0,
|
||||||
'@Value': 'false',
|
'@Value': 'false',
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
} else {
|
||||||
|
project.Ableton.LiveSet.SendsPre = {} as any;
|
||||||
}
|
}
|
||||||
|
|
||||||
const fixedRoot = fixIds(project);
|
const fixedRoot = fixIds(project);
|
||||||
fixedRoot.Ableton.LiveSet.NextPointeeId['@Value'] = getId() + 1;
|
fixedRoot.Ableton.LiveSet.NextPointeeId['@Value'] = getId();
|
||||||
|
|
||||||
if (import.meta.env.DEV) {
|
if (import.meta.env.DEV) {
|
||||||
console.log('ROOT', fixedRoot);
|
console.log('ROOT', fixedRoot);
|
||||||
|
|||||||
Reference in New Issue
Block a user