Skip to main content
La sincronizzazione dei testi allinea il testo dei testi all’audio in modo che le parole si evidenzino nel momento giusto. Usa client.projects.syncLyrics(...) per rieseguire la sincronizzazione su qualsiasi progetto con testi aggiornati, un modello diverso o una nuova lingua.

client.projects.syncLyrics(projectId, body, options?)

Avvia una nuova operazione di sincronizzazione dei testi.
const operation = await client.projects.syncLyrics("prj_abc123", {
  lyricsSource: {
    type: "align",
    lyrics: "First line\nSecond line\n...",
    syncModel: "audioshake-alignment",
  },
});

const { project } = await client.projects.wait(operation);
console.log(project.alignments);

Sorgente dei testi

Passa un oggetto lyricsSource nel corpo della richiesta:
Lascia che il modello trascriva i testi dall’audio.
{
  lyricsSource: {
    type: "transcribe",
    syncModel: "audioshake-transcription",
    language: "en",
  },
}

Modelli di sincronizzazione

Modelli di allineamento (da usare con align quando hai testi accurati):
  • audioshake-alignment
  • musicai-alignment
  • musicai-alignment-subword
Modelli di trascrizione (da usare con transcribe):
  • audioshake-transcription
  • musicai-transcription
  • wav2vec2
  • whisper
Consulta la guida in Riferimento dei modelli di sincronizzazione.

Esempio end-to-end

import { YoukaClient } from "@youka/sdk";
import { readFile } from "node:fs/promises";

const client = new YoukaClient({ apiKey: process.env.YOUKA_API_KEY! });

async function reAlignLyrics(projectId: string) {
  const lyrics = await readFile("./lyrics.txt", "utf8");

  const operation = await client.projects.syncLyrics(projectId, {
    lyricsSource: {
      type: "align",
      lyrics,
      syncModel: "audioshake-alignment",
      language: "en",
    },
  });

  const { project } = await client.projects.wait(operation);
  console.log("Updated lyrics with", project.lyrics?.length, "lines");
}

Cosa fare dopo

  • Stems — esegui di nuovo la separazione degli stem prima di risincronizzare
  • Tasks — handle delle operazioni e pattern di interruzione
  • Sync model reference — scegli il modello giusto