Skip to main content
La synchronisation des paroles aligne le texte des paroles sur l’audio afin que les mots se surlignent au bon moment. Utilisez client.projects.syncLyrics(...) pour relancer la synchronisation sur n’importe quel projet avec des paroles mises à jour, un modèle différent ou une nouvelle langue.

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

Démarrez une nouvelle opération de synchronisation des paroles.

Source des paroles

Passez un objet lyricsSource dans le corps de la requête :
Laissez le modèle transcrire les paroles à partir de l’audio.

Modèles de synchronisation

Modèles d’alignement (à utiliser avec align lorsque vous avez des paroles exactes) :
  • audioshake-alignment
  • musicai-alignment
  • musicai-alignment-subword
  • wav2vec2
Modèles de transcription (à utiliser avec transcribe) :
  • audioshake-transcription
  • elevenlabs-transcription
  • musicai-transcription
  • whisper
Consultez Choose a lyrics sync model pour des recommandations.

Exemple de bout en bout

Et ensuite

  • Stems — relancez la séparation des stems avant de resynchroniser
  • Tasks — handles d’opération et patterns d’annulation
  • Choose a lyrics sync model — choisissez le bon modèle

Découvrir les modèles pris en charge

client.capabilities.get() renvoie la prise en charge des modèles configurés ainsi que l’éligibilité du compte authentifié. Chaque modèle décrit son opération, inputAudio, les workflows pris en charge, la politique de langue, les fonctionnalités requises et suppliedTextHandling. La disponibilité n’est pas une garantie de disponibilité du fournisseur. La transcription accepte des lyrics facultatives comme texte de référence. La réponse des capacités distingue les termes clés du fournisseur des corrections après transcription. Le texte de référence ne garantit pas une sortie identique. Pour un texte fourni exact, choisissez un modèle d’alignement éligible.

Modifier des timings existants

Utilisez client.projects.alignments.list(projectId) et .get(projectId, alignmentId) pour lire des ressources de timing typées. .update(projectId, alignmentId, body) remplace les timings sans tâche de synchronisation ni immobilisation de crédits de traitement. Le corps de mise à jour exige l’alignment complet et expectedRevision. Ajoutez select: true et expectedSelectionRevision pour sélectionner l’alignement enregistré de manière atomique. .select(projectId, alignmentId, { expectedRevision, expectedSelectionRevision }) sélectionne des timings existants. Les deux révisions protègent contre les modifications concurrentes. Une révision périmée renvoie HTTP 409. Conservez les IDs d’éléments, le texte, les index, les chanteurs et les traductions lors de l’édition. Les temps sont en secondes absolues. Chaque fin doit être supérieure à son début. Des timings invalides, négatifs ou hors de la durée sont rejetés. Les chevauchements légitimes et les timings de duo sont pris en charge. Consultez Automate lyric videos pour un exemple complet de modification des timings et de gestion des conflits.