Skip to main content
Cet article présente une documentation sur l’intégration de l’API de génération d’audios Producer, qui permet de générer la musique officielle de Producer en entrant des paramètres personnalisés.

Processus de demande

Pour utiliser l’API de génération d’audios Producer, commencez par obtenir votre token API sur le tableau de bord Ace Data Cloud pour le garder en réserve. Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion pour vous inviter à vous inscrire et à vous connecter, après quoi vous serez automatiquement renvoyé à la page actuelle. Un seul token API suffit pour appeler tous les services de la plateforme, sans avoir besoin de demander séparément pour chaque service. La première demande vous donnera un quota gratuit pour une expérience sans frais ; si le quota est insuffisant, vous pouvez recharger le solde général sur le tableau de bord.
📘 Documentation complète : API de génération d’audios Producer →

Utilisation de base

Pour générer des chansons, vous pouvez entrer n’importe quel texte, par exemple, si je veux générer une chanson sur Noël, je peux entrer a song for Christmas, comme illustré ci-dessous :

Ici, nous avons configuré les en-têtes de requête, y compris :
  • accept : le format de réponse souhaité, ici rempli avec application/json, c’est-à-dire au format JSON.
  • authorization : la clé pour appeler l’API, que vous pouvez sélectionner directement après la demande.
De plus, les paramètres du corps de la requête incluent :
  • action : l’action de la tâche de génération musicale, pour générer une chanson c’est generate.
  • model : le modèle utilisé pour créer la chanson, actuellement principalement : FUZZ-2.0 Pro, FUZZ-2.0, FUZZ-2.0 Raw, FUZZ-1.1 Pro, FUZZ-1.0 Pro, FUZZ-1.0, FUZZ-1.1, FUZZ-0.8.
  • lyric : le contenu des paroles de la chanson.
  • custom : si la génération de la chanson doit être faite de manière personnalisée.
  • prompt : le mot clé en mode inspiration.
  • title : les informations sur le titre de la chanson.
  • audio_id : l’ID de la chanson de référence, utilisé pour la suite/les reprises, etc.
  • continue_at : pour continuer à écrire la chanson à partir d’une seconde spécifiée.
  • replace_section_start/replace_section_end : le temps de début et de fin du segment à remplacer, en secondes.
  • lyrics_strength : la force des paroles, indiquant l’impact des paroles sur la génération audio, optionnel entre 0-1, par défaut 0.7.
  • sound_strength : la force des mots clés audio, optionnel entre 0.2-1, par défaut 0.7.
  • cover_strength : la force de la reprise entre 0.2-1, par défaut 1.
  • weirdness : le degré d’originalité du style, optionnel entre 0-1, par défaut 0.5.
  • callback_url : l’URL pour laquelle les résultats doivent être rappelés.
  • async : optionnel, si défini sur true, l’interface renvoie immédiatement task_id, sans avoir besoin de fournir callback_url, puis vous pouvez interroger le résultat via l’interface de requête de tâche correspondante.
  • instrumental : si c’est en mode instrumental sans paroles.
Après avoir fait votre sélection, vous pouvez voir que le code correspondant a également été généré à droite, comme illustré ci-dessous :

Cliquez sur le bouton « Essayer » pour effectuer un test, comme montré ci-dessus, et nous avons obtenu le résultat suivant :
Le résultat de retour contient plusieurs champs, décrits comme suit :
  • success, l’état de la tâche de génération musicale à ce moment.
    • data, le résultat de cette tâche musicale
      • id, l’ID de la tâche de génération musicale à ce moment.
      • sound, le mot clé de la tâche de génération musicale à ce moment.
      • seed, la valeur de graine de la tâche de génération musicale à ce moment.
      • audio_url, le lien audio de la tâche de génération musicale à ce moment.
      • image_url, le lien de la couverture de la tâche de génération musicale à ce moment.
      • image_id, l’ID de la couverture de la tâche de génération musicale à ce moment.
      • state, l’état de la tâche de génération musicale à ce moment.
      • duration, la durée de la musique à ce moment.
      • progress, la valeur de progression de la tâche musicale à ce moment.
      • model, les informations sur le modèle utilisé pour la tâche de génération musicale à ce moment.
      • lyric, les informations sur les paroles de la tâche de génération musicale à ce moment.
Nous pouvons voir que nous avons obtenu les informations de musique que nous souhaitions générer, il nous suffit de récupérer le lien audio de la musique générée à partir de data. De plus, si vous souhaitez générer le code d’intégration correspondant, vous pouvez le copier directement, par exemple, le code CURL est le suivant :

Génération personnalisée

Si vous souhaitez générer des paroles personnalisées, vous pouvez entrer les paroles : Dans ce cas, le champ lyric peut recevoir un contenu similaire à celui-ci :
Ensuite, pour personnaliser la génération de la chanson en fonction des paroles, du titre et du style, vous pouvez spécifier le contenu suivant :
  • lyric : texte des paroles
  • custom : remplissez avec true, représentant une génération personnalisée, ce paramètre est par défaut false, représentant l’utilisation de prompt pour générer.
  • title : le titre de la chanson.
Exemple de remplissage ci-dessous :

Une fois rempli, le code généré est le suivant :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Chanson de reprise

Si vous souhaitez effectuer une opération de reprise sur une chanson déjà générée, vous pouvez entrer la chanson générée ci-dessus pour la reprendre, ensuite nous allons personnaliser la génération de la chanson en fonction des paroles et du titre. Si vous souhaitez continuer à reprendre une chanson que vous avez téléchargée, vous pouvez définir le paramètre action sur upload_cover et entrer l’ID de la chanson que vous souhaitez continuer à reprendre. L’ID de la chanson peut être obtenu en utilisant Producer Upload API comme illustré ci-dessous :

Vous pouvez spécifier le contenu suivant :
  • action : le comportement de la tâche de chanson, actuellement supporte : generate, cover, extend, upload_cover, upload_extend, replace_section, swap_vocals, swap_instrumentals, variation, cette reprise utilise le paramètre cover.
  • lyric : texte des paroles
  • title : le titre de la chanson.
  • custom : si le mode personnalisé est utilisé pour générer, par défaut c’est false.
  • audio_id : l’ID de la chanson à reprendre.
Exemple de remplissage ci-dessous :

Une fois rempli, le code généré est le suivant :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Continuer l’écriture de la chanson

Si vous souhaitez continuer l’écriture de la chanson, nous devons passer le paramètre action avec la valeur : extend, ensuite nous devons générer une chanson personnalisée en fonction des paroles, du titre et du style. Si vous souhaitez continuer l’écriture d’une chanson que vous avez téléchargée, vous pouvez définir le paramètre action sur upload_extend et entrer l’ID de la chanson que vous souhaitez continuer. L’ID de la chanson peut être obtenu en utilisant l’API de téléchargement du producteur, comme illustré ci-dessous :

Exemple de remplissage :

Une fois rempli, le code généré automatiquement est le suivant :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Variation musicale

Si vous souhaitez générer une nouvelle musique avec un effet similaire basé sur la valeur de seed de la musique précédente, nous devons passer le paramètre action avec la valeur : variation, ensuite vous pouvez générer une nouvelle musique avec un effet similaire. Exemple de remplissage :

Une fois rempli, le code généré automatiquement est le suivant :

Le code correspondant :

Remplacer un segment

Si vous souhaitez remplacer un segment de la chanson, nous devons passer la valeur du paramètre action à : replace_section, ensuite nous devons personnaliser la génération de la chanson en fonction des paroles et du titre. Si vous souhaitez continuer à remplacer un segment de la chanson que vous avez téléchargée, vous pouvez définir le paramètre action sur upload_replace_section et entrer l’ID de la chanson que vous avez téléchargée, l’ID de la chanson peut être obtenu en utilisant Producer Upload API comme indiqué dans l’image ci-dessous :

L’exemple de remplissage est comme suit :

Une fois rempli, le code généré est comme suit :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Reprise instrumentale

Si vous souhaitez utiliser l’opération de reprise instrumentale officielle, vous pouvez définir la valeur du paramètre action sur : swap_instrumentals, ensuite nous allons générer une chanson personnalisée en fonction des paroles et du titre. Exemple de remplissage ci-dessous :

Une fois rempli, le code généré automatiquement est le suivant :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Reprise vocale

Si vous souhaitez utiliser l’opération de reprise vocale officielle, vous pouvez définir la valeur du paramètre action sur : swap_vocals, ensuite nous allons générer une chanson personnalisée en fonction des paroles, du titre et du style. Exemple de remplissage ci-dessous :

Une fois rempli, le code généré automatiquement est le suivant :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Séparation des paroles et de la musique

Si vous souhaitez utiliser l’opération officielle de séparation des paroles et de la musique, vous pouvez définir la valeur du paramètre action sur : stems, ensuite nous devons procéder à la séparation des paroles et de la musique en fonction de l’ID de la chanson. Remplissez l’exemple comme suit :

Une fois rempli, le code généré automatiquement est le suivant :

Le code correspondant :
Les tests sont autorisés, l’effet généré est similaire.

Rappel asynchrone

Étant donné que le temps de génération de l’API Producer Audios peut parfois être relativement long, si l’API ne répond pas pendant longtemps, la requête HTTP maintiendra la connexion, entraînant une consommation supplémentaire de ressources système. Ainsi, cette API propose également un support de rappel asynchrone. Le processus global est le suivant : lorsque le client initie une requête, il spécifie un champ callback_url supplémentaire. Après que le client a lancé la requête API, l’API renverra immédiatement un résultat contenant un champ task_id, représentant l’ID de la tâche actuelle. Lorsque la tâche est terminée, le résultat de la tâche générée sera envoyé au callback_url spécifié par le client sous forme de POST JSON, incluant également le champ task_id, permettant ainsi de relier le résultat de la tâche par ID. Voyons comment procéder avec un exemple. Tout d’abord, le rappel Webhook est un service capable de recevoir des requêtes HTTP, le développeur doit le remplacer par l’URL de son propre serveur HTTP. Pour faciliter la démonstration, nous utilisons un site d’exemple Webhook public https://webhook.site/, en ouvrant ce site, vous obtiendrez une URL Webhook, comme illustré : Copiez cette URL, vous pouvez l’utiliser comme Webhook, l’exemple ici est https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1. Ensuite, nous pouvons définir le champ callback_url sur l’URL Webhook ci-dessus, tout en remplissant les paramètres correspondants, le contenu spécifique est illustré comme suit :

En cliquant sur exécuter, vous pouvez constater que vous obtiendrez immédiatement un résultat, comme suit :
Après un moment, vous pouvez observer le résultat de la tâche générée sur https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1, comme illustré : Le contenu est le suivant :
On peut voir que le résultat contient un champ task_id, les autres champs étant similaires à ceux mentionnés ci-dessus, ce champ permettant d’associer les tâches.

Gestion des erreurs

Lors de l’appel de l’API, si une erreur se produit, l’API renverra le code d’erreur et les informations correspondantes. Par exemple :
  • 400 token_mismatched : Mauvaise requête, probablement en raison de paramètres manquants ou invalides.
  • 400 api_not_implemented : Mauvaise requête, probablement en raison de paramètres manquants ou invalides.
  • 401 invalid_token : Non autorisé, jeton d’autorisation invalide ou manquant.
  • 429 too_many_requests : Trop de requêtes, vous avez dépassé la limite de taux.
  • 500 api_error : Erreur interne du serveur, quelque chose s’est mal passé sur le serveur.

Exemple de réponse d’erreur

Conclusion

Grâce à ce document, vous avez compris comment utiliser l’API de génération d’audios de producteurs pour générer de la musique à partir de mots-clés d’entrée. Nous espérons que ce document vous aidera à mieux vous connecter et à utiliser cette API. Si vous avez des questions, n’hésitez pas à contacter notre équipe de support technique.