POST https://api.acedata.cloud/fish/tts.
Processo di richiesta
Per utilizzare l’API Fish TTS, prima vai al Pannello di controllo di Ace Data Cloud per ottenere il tuo API Token, da conservare per uso futuro.
Se non hai ancora effettuato il login o registrato, verrai automaticamente reindirizzato alla pagina di login che ti invita a registrarti e accedere, una volta completato verrai riportato automaticamente alla pagina corrente.
Un API Token è sufficiente per accedere a tutti i servizi della piattaforma, non è necessario richiederne uno separato per ogni servizio. La prima richiesta riceverà un credito gratuito, per un’esperienza gratuita; se il credito è insufficiente, puoi ricaricare il saldo generale nel pannello di controllo.
📘 Documentazione completa: Fish TTS API →
Intestazione della richiesta
Campi del corpo della richiesta
La clonazione istantanea accetta solo URL audio HTTPS, non accetta MessagePack, Base64, data URI o URL con credenziali. L’audio di riferimento è consigliato tra 10 e 270 secondi; Studio utilizza un intervallo più conservativo di 10-60 secondi.
Esempio 1: Richiesta minima (text + format=mp3)
audio_url punta al CDN di questa piattaforma, può essere scaricato direttamente con GET o riprodotto in <audio>. La risposta finale di successo restituirà anche il cost di livello superiore, dove amount è il credito effettivamente addebitato; se ci sono sconti sul conto, list_amount indica il credito prima dello sconto. Il link è disponibile a lungo termine, ma si consiglia comunque di conservarne una copia nel proprio storage.
Esempio 2: Utilizzo del tono di clonazione reference_id
Di seguito viene utilizzato un tono di voce spagnolo pubblico sulla piattaforma Fish (_id può essere recuperato tramite Fish Model Query):
Esempio 3: Clonazione istantanea di suoni (references)
Posizionare l’audio di riferimento su un indirizzo HTTPS pubblico e fornire il testo esatto pronunciato. Questo suono è utilizzato solo per questa sintesi e non creerà un modello a lungo termine:
Esempio 3: Regolare la velocità / volume (prosody)
speed maggiore di 1 accelera, minore di 1 rallenta; volume in dB, 0 significa invariato, numero positivo guadagna, numero negativo attenua.
Esempio 5: Cambiare modello + controllare bitrate
Per passare al modello stabile, utilizzare l’intestazione HTTPmodel: s1, aggiungere mp3_bitrate: 128 nel corpo della richiesta per controllare il bitrate MP3:
Esempio 6: Forma d’onda PCM grezza
Se è necessario eseguire un montaggio in tempo reale nel browser o elaborare successivamente (mixaggio, variazione di velocità) sul client, si consiglia di utilizzarepcm:
L’estensione del link segue ilformatnella richiesta:mp3ottiene.mp3,wavepcmottengono.wav(contenitore WAV, PCM a 16 bit).
Callback asincrono (callback_url)
La sintesi di testi lunghi può richiedere da alcuni secondi a decine di secondi, se la connessione si interrompe è necessario riprovare. Dopo aver passato callback_url nel corpo della richiesta, l’interfaccia restituirà immediatamente {task_id, started_at}, quando il processo è completato, il risultato completo verrà richiamato a quell’URL in formato JSON POST, con lo stesso task_id e il cost finale di questa richiesta. La conferma del compito iniziale non è ancora completata, quindi non include cost.
callback_url riceverà un messaggio simile a:
task_id; il response.cost registrato nello stato finale corrisponde al cost nel callback, vedere il documento per maggiori dettagli.
Gestione degli errori
400 token_mismatched: parametri di richiesta mancanti o non validi (il più comune ètextvuoto, oformatcon valori diversi damp3/wav/pcm).401 invalid_token: il token di autenticazione non esiste o è non valido.429 too_many_requests: superamento del limite di velocità dell’account.500 api_error: errore interno del server.
message, ad esempio:
Conclusione
Il costo minimo per integrare Fish TTS è: sostituire l’autenticazione con il token della piattaforma nel codice già esistente che chiamaapi.fish.audio/v1/tts, e nel corpo della richiesta includere esplicitamente format: "mp3". Per testi lunghi, si consiglia di utilizzare callback_url per il callback asincrono; per la scoperta del reference_id del tono vocale clonabile, si prega di utilizzare Fish Model Query e Fish Model Get.
