callback_url), la struttura del corpo della richiesta è la stessa dell’upstream. L’indirizzo è POST https://api.acedata.cloud/fish/tts.
Processo di Richiesta
Per utilizzare Fish TTS API, prima vai al Ace Data Cloud Console per ottenere il tuo API Token, da tenere come riserva.
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 ti darà un credito gratuito, per un’esperienza gratuita; se il credito è insufficiente, puoi ricaricare il saldo generale nella console.
📘 Documentazione Completa: Fish TTS API →
Intestazione della Richiesta
Campi del Corpo della Richiesta
La denominazione dei campi è completamente identica all’upstream. Ad eccezione di callback_url, gli altri campi hanno significato e valori come indicato nella documentazione ufficiale TTS di Fish.
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>. Il link è disponibile a lungo termine, ma si consiglia comunque di conservarne una copia nel proprio storage.
Esempio 2: Utilizzo del timbro vocale clone reference_id
Di seguito viene utilizzato un timbro vocale spagnolo pubblico sulla piattaforma Fish (_id può essere recuperato tramite Fish Model Query):
Esempio 3: Regolazione della Velocità / Volume (prosody)
speed maggiore di 1 accelera, minore di 1 rallenta; volume in dB, 0 indica nessuna variazione, numeri positivi guadagno, numeri negativi attenuazione.
Esempio 4: Cambio Modello + Controllo Bitrate
Attraverso l’intestazione HTTPmodel: s1 si passa al modello stabile, aggiungendo mp3_bitrate: 128 nel corpo della richiesta per controllare il bitrate MP3:
Esempio 5: Forma d’onda PCM grezza
Per scenari in cui è necessario effettuare un’unione in tempo reale nel browser, o per elaborazioni successive (mixaggio, variazione della 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’API restituirà immediatamente {task_id, started_at}, e quando il processo è completato, il risultato completo verrà richiamato a quell’URL in formato JSON POST, includendo lo stesso task_id.
callback_url riceverà un messaggio simile a:
task_id, vedere la documentazione 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: attivazione del limite di velocità dell’account.500 api_error: errore interno del server.
message, per facilitare l’individuazione del campo non valido, ad esempio:
Conclusione
Il costo minimo per integrare Fish TTS è: sostituire il token di autenticazione nel codice esistente che chiamaapi.fish.audio/v1/tts con il token della piattaforma, e includere esplicitamente nel corpo della richiesta format: "mp3". Per scenari di testo lungo, si consiglia di utilizzare callback_url per il callback asincrono; per la scoperta del reference_id del timbro vocale, si prega di utilizzare Fish Model Query e Fish Model Get.
