Processo di richiesta
Per utilizzare l’API, è necessario prima andare alla pagina corrispondente dell’API di generazione degli audio del produttore per richiedere il servizio corrispondente. Una volta entrati nella pagina, fare clic sul pulsante “Acquire”, come mostrato nell’immagine:
Se non si è ancora effettuato il login o la registrazione, si verrà automaticamente reindirizzati alla pagina di accesso che invita a registrarsi e accedere. Dopo aver effettuato il login o la registrazione, si verrà automaticamente riportati alla pagina corrente.
Alla prima richiesta, verrà offerto un credito gratuito, che consente di utilizzare gratuitamente questa API.
Utilizzo di base
Per generare canzoni, è possibile inserire liberamente un testo, ad esempio, se voglio generare una canzone sul Natale, posso inserirea song for Christmas, come mostrato nell’immagine:

accept: il formato della risposta desiderata, qui è impostato suapplication/json, ovvero formato JSON.authorization: la chiave per chiamare l’API, che può essere selezionata direttamente dopo la richiesta.
action: l’azione per questo compito di generazione musicale, per generare una canzone ègenerate.model: il modello utilizzato per creare la canzone, attualmente ci sono principalmente: 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: il contenuto del testo della canzone.custom: se generare la canzone in modo personalizzato.prompt: parole chiave in modalità ispirazione.title: informazioni sul titolo della canzone.audio_id: ID della canzone di riferimento, utilizzato per continuare o riprodurre.continue_at: inizia a continuare la canzone da un numero di secondi specificato.replace_section_start/replace_section_end: tempo di inizio e fine del segmento da sostituire, in secondi.lyrics_strength: intensità del testo, che indica il grado di influenza del testo nella generazione audio, selezionabile tra 0-1, predefinito 0.7.sound_strength: intensità delle parole chiave audio, selezionabile tra 0.2-1, predefinito 0.7.cover_strength: intensità della cover tra 0.2-1, predefinito 1.weirdness: grado di eccentricità dello stile, selezionabile tra 0-1, predefinito 0.5.callback_url: URL per il quale è necessario il risultato del callback.instrumental: se è in modalità senza testo.

success, lo stato attuale del compito di generazione musicale.data, il risultato di questo compito musicaleid, l’ID del compito di generazione musicale attuale.sound, le parole chiave del compito di generazione musicale attuale.seed, il valore seme del compito di generazione musicale attuale.audio_url, il link audio del compito di generazione musicale attuale.image_url, il link della copertina del compito di generazione musicale attuale.image_id, l’ID della copertina del compito di generazione musicale attuale.state, lo stato attuale del compito di generazione musicale.duration, le informazioni sulla durata della musica attuale.progress, il valore di progresso del compito musicale attuale.model, le informazioni sul modello utilizzato per il compito di generazione musicale attuale.lyric, le informazioni sul testo del compito di generazione musicale attuale.
data.
Inoltre, se si desidera generare il codice di integrazione corrispondente, è possibile copiarlo direttamente, ad esempio, il codice CURL è il seguente:
Generazione personalizzata
Se si desidera generare testi personalizzati, è possibile inserire il testo: In questo caso, il campolyric può contenere contenuti simili a:
- lyric: testo della canzone
- custom: impostato su
true, rappresenta la generazione personalizzata, questo parametro è impostato su false per impostazione predefinita, rappresenta la generazione tramiteprompt. - title: il titolo della canzone. 填写样例如下:


Cover di canzoni
Se desideri effettuare un’operazione di cover su una canzone già generata, puoi inserire la canzone generata sopra per fare la cover, successivamente dobbiamo generare una canzone personalizzata in base al testo, al titolo. Se desideri continuare a fare la cover di una canzone che hai caricato, puoi impostare il parametroaction su upload_cover e inserire l’ID della canzone che desideri continuare a cantare, l’ID della canzone può essere ottenuto utilizzando Producer Upload API come mostrato nell’immagine sottostante:

- action: il comportamento di questo compito musicale, attualmente supporta: generate, cover, extend, upload_cover, upload_extend, replace_section, swap_vocals, swap_instrumentals, variation, per questa cover utilizziamo il parametro
cover. - lyric: testo della canzone
- title: titolo della canzone.
- custom: se utilizzare la modalità personalizzata per generare, di default è false.
- audio_id: ID della canzone da coprire.


Continuare a scrivere la canzone
Se vuoi continuare a scrivere la canzone, dobbiamo passare il valore del parametroaction come: extend, poi dobbiamo generare la canzone in base al testo, al titolo e allo stile.
Se vuoi continuare a scrivere una canzone che hai caricato, puoi impostare il parametro action su upload_extend e inserire l’ID della canzone che desideri continuare a scrivere. L’ID della canzone può essere ottenuto utilizzando Producer Upload API, come mostrato nell’immagine qui sotto:



Variazione musicale
Se vuoi generare una nuova musica simile basata sul valore seed della musica precedente, dobbiamo passare il valore del parametroaction come: variation, poi possiamo generare una nuova musica simile.
Esempio di compilazione:


Sostituzione di sezioni
Se si desidera sostituire una sezione della canzone, è necessario passare il valore del parametroaction come: replace_section, successivamente dobbiamo generare la canzone in modo personalizzato in base al testo e al titolo.
Se si desidera continuare a sostituire sezioni di una canzone caricata, è possibile impostare il parametro action su upload_replace_section e inserire l’ID della canzone caricata che si desidera continuare a scrivere, l’ID della canzone può essere ottenuto utilizzando Producer Upload API come mostrato nell’immagine seguente:



Versione strumentale
Se desideri utilizzare l’operazione di versione strumentale ufficiale, puoi impostare il valore del parametroaction su: swap_instrumentals, successivamente dobbiamo generare una canzone personalizzata in base al testo, al titolo.
Esempio di compilazione:


Versione vocale
Se desideri utilizzare l’operazione di versione vocale ufficiale, puoi impostare il valore del parametroaction su: swap_vocals, successivamente dobbiamo generare una canzone personalizzata in base al testo, al titolo, allo stile.
Esempio di compilazione:


Separazione di testi e musica
Se si desidera utilizzare l’operazione ufficiale di separazione di testi e musica, è possibile impostare il valore del parametroaction su: stems, successivamente dobbiamo procedere alla separazione di testi e musica in base all’ID della canzone.
Esempio di compilazione:


Callback asincrona
Poiché il tempo di generazione dell’API Producer Audios può a volte essere relativamente lungo, se l’API non risponde per un lungo periodo, la richiesta HTTP manterrà la connessione, causando un consumo aggiuntivo di risorse di sistema, quindi questa API offre anche supporto per callback asincrone. Il flusso complessivo è: quando il client avvia la richiesta, specifica un campocallback_url aggiuntivo, dopo che il client ha avviato la richiesta API, l’API restituirà immediatamente un risultato, contenente un campo task_id, che rappresenta l’ID del compito corrente. Quando il compito è completato, il risultato del compito generato verrà inviato al callback_url specificato dal client in formato JSON POST, che include anche il campo task_id, in modo che il risultato del compito possa essere associato tramite l’ID.
Di seguito, attraverso un esempio, vediamo come procedere.
Innanzitutto, il callback Webhook è un servizio in grado di ricevere richieste HTTP, gli sviluppatori dovrebbero sostituirlo con l’URL del server HTTP che hanno costruito. Qui, per comodità di dimostrazione, utilizziamo un sito Web pubblico di esempio per Webhook https://webhook.site/, aprendo questo sito si ottiene un URL Webhook, come mostrato nell’immagine:
Copia questo URL e puoi usarlo come Webhook, l’esempio qui è https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1.
Successivamente, possiamo impostare il campo callback_url su questo URL Webhook, mentre inseriamo i parametri corrispondenti, il contenuto specifico è mostrato nell’immagine:

内容如下:
task_id 字段,其他的字段都和上文类似,通过该字段即可实现任务的关联。
错误处理
在调用 API 时,如果遇到错误,API 会返回相应的错误代码和信息。例如:400 token_mismatched:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.400 api_not_implemented:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.401 invalid_token:Non autorizzato, token di autorizzazione non valido o mancante.429 too_many_requests:Troppe richieste, hai superato il limite di frequenza.500 api_error:Errore interno del server, qualcosa è andato storto sul server.

