Skip to main content
Projects sont la ressource de plus haut niveau dans Youka. Chaque projet possède son fichier source, ses paroles, ses exports et ses paramètres de projet. Les projets de karaoké contiennent aussi des stems séparés.

Création d’un projet

Dans la plupart des cas, utilisez client.projects.create() — il gère les téléversements pour vous.

Types de source

Lit un fichier depuis le disque.

Autres champs

string
Titre du projet. Par défaut, le nom de fichier de la source.
karaoke | lyric-video
Flux de travail. Par défaut, karaoke. lyric-video utilise l’audio original sans séparation des stems.
SplitModel
Modèle de séparation des stems pour le karaoké. Par défaut, mdx23c. Refusé pour lyric-video. Voir la référence des modèles de séparation .
string
Appliquer un preset réutilisable au moment de la création.
LyricsSource
Configurer la synchronisation des paroles. Voir ci-dessous.

Sources de paroles

client.projects.create(input, options?)

client.projects.create() accepte aussi une source inputFile de bas niveau lorsque vous avez déjà un inputFileId téléversé.

client.projects.quote(input, options?)

Estimez les crédits nécessaires pour créer un projet sans le créer.
client.projects.quote(...) accepte les mêmes formes de source que client.projects.create(...), y compris l’URL maxVideoQuality. Si vous connaissez déjà la durée du média et ne voulez pas téléverser le fichier juste pour obtenir un devis, passez la forme REST de bas niveau :

client.uploads.create(body, options?)

Allouez un emplacement de téléversement et obtenez une URL signée.

client.uploads.upload(uploadUrl, body, options?)

Effectuez un PUT des octets du fichier vers l’URL signée.
FetchBody
required
Tout corps compatible fetch : Blob, File, ArrayBuffer, Uint8Array, ReadableStream ou string.
Lève YoukaRequestError avec le code UPLOAD_FAILED si le téléversement renvoie un statut non-2xx.

client.projects.get(projectId, options?)

Récupérez l’état complet du projet, y compris les stems, les paroles et les exports.

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

Patchez les métadonnées du projet.
Passez au moins l’un de title ou artists.

client.projects.list(options?)

Listez tous les projets appartenant au compte authentifié.
Renvoie un tableau d’éléments de liste de projets (une forme plus légère que getProject).

client.projects.delete(projectId, options?)

Supprimez un projet et tous ses stems, paroles et exports associés.
La suppression est définitive. Associez-la à une clé d’idempotence afin que les nouvelles tentatives soient sûres.

Et ensuite

  • Stems — relancer la séparation des stems
  • Lyrics sync — re-synchroniser les paroles
  • Exports — générer les vidéos finalisées
  • Tasks — attendre les opérations de projet avec client.projects.wait

Création de lyric-video et découverte des modèles

Les mêmes choix kind et de traitement des paroles fonctionnent avec projects.quote. Les devis de lyric-video facturent zéro crédit de séparation. Devis et création valident les mêmes exigences de modèle, de langue, de compte et de source. Les devis ne réservent ni crédits ni capacité. Utilisez lyricsSource: null pour ignorer le traitement des paroles. Le texte de référence en transcription sert d’indication et peut différer du résultat. Les modèles qui nécessitent des voix isolées ne peuvent pas traiter une lyric video sans séparation. Voir Automate lyric videos pour les capacités, les mises à jour de timing exactes et les checkpoints du catalogue.