playlist importando sample track
Deploy / Deploy (push) Successful in 1m56s
Details
Deploy / Deploy (push) Successful in 1m56s
Details
This commit is contained in:
parent
95a9b5c4d7
commit
900d07db08
|
|
@ -416,16 +416,25 @@ export async function parseMmpContent(xmlString) {
|
||||||
// cada <sampletco> é um clip
|
// cada <sampletco> é um clip
|
||||||
const clips = Array.from(node.querySelectorAll(":scope > sampletco"));
|
const clips = Array.from(node.querySelectorAll(":scope > sampletco"));
|
||||||
clips.forEach((c, cidx) => {
|
clips.forEach((c, cidx) => {
|
||||||
|
// resolve caminho via manifest; fallback para /samples
|
||||||
const src = c.getAttribute("src") || "";
|
const src = c.getAttribute("src") || "";
|
||||||
const fileName = src.split(/[\\/]/).pop(); // "#2.wav"
|
const fileName = src.split(/[\\/]/).pop(); // "#2.wav"
|
||||||
|
const projectFolder = encodeURIComponent(lastFolder(src) || ""); // "210424"
|
||||||
|
const encodedFile = encodeURIComponent(fileName);
|
||||||
|
|
||||||
// resolve caminho via manifest; fallback para /samples
|
// tenta pelo manifest primeiro
|
||||||
const resolvedUrl =
|
let resolvedUrl = fileName ? pathMap[fileName] : null;
|
||||||
(fileName && pathMap[fileName]) ||
|
|
||||||
(fileName ? `${SAMPLE_SRC}/${fileName}` : null);
|
// se o manifest não tiver ou não vier com /{project}/, monta no padrão do servidor
|
||||||
|
if (!resolvedUrl || (projectFolder && !resolvedUrl.includes(`/${projectFolder}/`))) {
|
||||||
|
resolvedUrl = projectFolder
|
||||||
|
? `${SAMPLE_SRC}/${projectFolder}/${encodedFile}` // ✅ SAMPLE_SRC/{project}/{file}
|
||||||
|
: null;
|
||||||
|
}
|
||||||
|
|
||||||
if (!resolvedUrl) return;
|
if (!resolvedUrl) return;
|
||||||
|
|
||||||
|
|
||||||
const posTicks = Number(c.getAttribute("pos") || 0);
|
const posTicks = Number(c.getAttribute("pos") || 0);
|
||||||
const lenTicks = Number(c.getAttribute("len") || 0);
|
const lenTicks = Number(c.getAttribute("len") || 0);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue