Skip to main content
Синхронизация текста выравнивает текст песни по аудио, чтобы слова подсвечивались в нужный момент. Используйте client.projects.syncLyrics(...), чтобы повторно запустить синхронизацию для любого проекта с обновлённым текстом, другой моделью или новым языком.

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

Запустить новую операцию синхронизации текста.
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);

Источник текста

Передайте объект lyricsSource в теле запроса:
Позвольте модели транскрибировать текст из аудио.
{
  lyricsSource: {
    type: "transcribe",
    syncModel: "audioshake-transcription",
    language: "en",
  },
}

Модели синхронизации

Модели выравнивания (используйте с align, когда у вас точный текст):
  • audioshake-alignment
  • musicai-alignment
  • musicai-alignment-subword
Модели транскрипции (используйте с transcribe):
  • audioshake-transcription
  • musicai-transcription
  • wav2vec2
  • whisper
См. Справочник по моделям синхронизации для рекомендаций.

Сквозной пример

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");
}

Что дальше

  • Stems — повторно запустите разделение на стемы перед повторной синхронизацией
  • Tasks — хендлы операций и паттерны отмены
  • Sync model reference — выберите подходящую модель