Skip to main content
A sincronização de letras alinha o texto da letra ao áudio para que as palavras sejam destacadas no momento certo. Use client.projects.syncLyrics(...) para executar novamente a sincronização em qualquer projeto com letras atualizadas, um modelo diferente ou um novo idioma.

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

Inicie uma nova operação de sincronização de letras.

Fonte das letras

Passe um objeto lyricsSource no corpo da requisição:
Permita que o modelo transcreva as letras a partir do áudio.

Modelos de sincronização

Modelos de alinhamento (use com align quando você tiver letras precisas):
  • audioshake-alignment
  • musicai-alignment
  • musicai-alignment-subword
  • wav2vec2
Modelos de transcrição (use com transcribe):
  • audioshake-transcription
  • elevenlabs-transcription
  • musicai-transcription
  • whisper
Veja Choose a lyrics sync model para orientações.

Exemplo completo

O que vem a seguir

  • Stems — execute novamente a separação de stems antes de re-sincronizar
  • Tasks — handles de operação e padrões de cancelamento
  • Choose a lyrics sync model — escolha o modelo certo

Descobrir modelos compatíveis

client.capabilities.get() retorna o suporte de modelos configurado e a elegibilidade da conta autenticada. Cada modelo descreve sua operação, inputAudio, workflows compatíveis, política de idioma, recursos obrigatórios e suppliedTextHandling. A disponibilidade não é uma garantia de uptime do provedor. A transcrição aceita lyrics opcional como texto de referência. A resposta de capabilities distingue termos-chave do provedor de correção após a transcrição. O texto de referência não garante saída idêntica. Para texto fornecido exato, escolha um modelo de alinhamento elegível.

Editar tempos existentes

Use client.projects.alignments.list(projectId) e .get(projectId, alignmentId) para ler recursos de tempos tipados. .update(projectId, alignmentId, body) substitui os tempos sem um job de sincronização ou bloqueio de crédito de processamento. O corpo do update exige o alignment completo e expectedRevision. Adicione select: true e expectedSelectionRevision para selecionar o alignment salvo de forma atômica. .select(projectId, alignmentId, { expectedRevision, expectedSelectionRevision }) seleciona tempos existentes. Ambas as revisões protegem contra edições simultâneas. Uma revisão desatualizada retorna HTTP 409. Mantenha IDs de item, texto, índices, cantores e traduções ao editar. Os tempos são em segundos absolutos. Todo fim deve ser maior que seu início. Tempos inválidos, negativos ou fora da duração são rejeitados. Sobreposições legítimas e tempos de dueto são suportados. Veja Automate lyric videos para uma edição completa de tempos e tratamento de conflitos.