Tutoriale
API ElevenLabs Sound Effects v2: generare e scaricare effetti sonori
Genera effetti sonori MP3 da 0,5 a 22 secondi da testo, a $0.0029 al secondo. Con casi reali, codice curl/Python, controllo del loop e lettura dei risultati delle attività.
TL;DR
- ElevenLabs Sound Effects v2 converte una descrizione testuale in un effetto sonoro MP3; apri la pagina del modello per ascoltare esempi esistenti.
- La fatturazione si basa sulla durata richiesta, $0.0029 al secondo; 2 secondi costano $0.0058; il prezzo è stato verificato il 25 ottobre 2026, controlla il prezzo.
- Invia l'attività tramite l'interfaccia HiAPI
/v1/tasksper ottenere untaskId, poi interroga il risultato.
Prima di eseguire l'esempio Python, esegui python -m pip install requests nello stesso ambiente Python.
Ascolta prima un esempio di due secondi
Questo è un caso di impatto a bassa frequenza dal taglio cinematografico già presente nella pagina del modello; di seguito sono riportati il suo prompt completo e l'audio.
Spacious cinematic braam with a deep sub-bass impact, metallic shimmer and a short reverb tail, suitable for a high-impact movie trailer moment.

Ascolta l'effetto sonoro completo
elevenlabs/sound-effects-v2, 2 secondi, prompt_influence: 0.3, loop: false, MP3, al prezzo attuale di $0.0058. Dopo aver aperto il link precompilato, imposta separatamente la durata e i controlli.
Come compilare i parametri
| Campo | Obbligatorio | Valori e descrizione |
|---|---|---|
model |
Sì | elevenlabs/sound-effects-v2, a livello superiore del corpo della richiesta |
input.prompt |
Sì | Da 1 a 450 caratteri, descrive suono, materiale, azione e spazio |
input.duration_seconds |
Sì | Da 0,5 a 22 secondi, supporta decimali; deve essere specificato esplicitamente |
input.prompt_influence |
No | Da 0 a 1, predefinito 0,3 |
input.loop |
No | Valore booleano, predefinito false |
Restituisce un MP3 a 44,1 kHz e 128 kbps per volta. loop serve a far combaciare il più possibile inizio e fine, non allunga l'audio; i suoni di sottofondo lunghi vengono ripetuti in loop dal riproduttore.
curl: invia il primo effetto sonoro
L'esecuzione dell'esempio crea un'attività reale e la fatturazione avviene in base alla durata. Inserisci la chiave nella variabile d'ambiente del server HIAPI_API_KEY. I tentativi ripetuti della stessa richiesta aziendale riutilizzano la chiave di idempotenza; le nuove richieste di effetti sonori usano una nuova chiave.
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: sfx-example-001" \
-d '
{
"model": "elevenlabs/sound-effects-v2",
"input": {
"prompt": "Spacious cinematic braam with a deep sub-bass impact, metallic shimmer and a short reverb tail, suitable for a high-impact movie trailer moment.",
"duration_seconds": 2,
"prompt_influence": 0.3,
"loop": false
}
}'
Ottieni l'ID attività da data.taskId nella risposta di creazione, poi interroga GET /v1/tasks/<taskId>.
Python: invio, attesa e salvataggio
Dopo aver installato requests, esegui l'esempio seguente. Considera come stati finali solo success e fail; queued, handling e archiving richiedono di continuare ad attendere.
import json
import os
import time
from pathlib import Path
import requests
api = "https://api.hiapi.ai"
key = os.environ.get("HIAPI_API_KEY", "")
if not key or any(ord(c) < 33 or ord(c) > 126 for c in key) or any(c in key for c in (chr(34), chr(39))):
raise SystemExit("Check the key environment variable; do not print its value")
headers = {"Authorization": f"Bearer {key}"}
payload = json.loads(r'''
{
"model": "elevenlabs/sound-effects-v2",
"input": {
"prompt": "Spacious cinematic braam with a deep sub-bass impact, metallic shimmer and a short reverb tail, suitable for a high-impact movie trailer moment.",
"duration_seconds": 2,
"prompt_influence": 0.3,
"loop": false
}
}
''')
response = requests.post(
f"{api}/v1/tasks", json=payload,
headers={**headers, "Idempotency-Key": "sfx-example-001"}, timeout=30,
)
response.raise_for_status()
task_id = response.json()["data"]["taskId"]
Path("task-id.txt").write_text(task_id, encoding="utf-8")
print("Task ID saved to task-id.txt:", task_id)
deadline = time.monotonic() + 600
while time.monotonic() < deadline:
response = requests.get(f"{api}/v1/tasks/{task_id}", headers=headers, timeout=30)
response.raise_for_status()
task = response.json()["data"]
if task["status"] == "fail":
raise RuntimeError(task.get("error", "Task failed"))
if task["status"] == "success":
audio = next(item for item in task["output"] if item.get("type") == "audio")
result = requests.get(audio["url"], timeout=120)
result.raise_for_status()
Path("effect.mp3").write_bytes(result.content)
print("Saved effect.mp3")
break
time.sleep(4)
else:
raise TimeoutError(f"Keep this taskId for later lookup: {task_id}")
Tre controlli prima della messa in produzione
- Errori e timeout. Controlla lo stato HTTP e l'errore dell'attività; dopo il timeout di attesa, l'esempio conserva il taskId per continuare le interrogazioni successive ed evitare invii duplicati.
- Parametri errati. In caso di 400
INVALID_REQUEST, verifica la durata obbligatoria, l'intervallo numerico e i tipi dei campi; non riprovare identico. L'addebito anticipato delle attività fallite viene rimborsato. - Salvataggio dei risultati. Dopo il successo, leggi l'URL audio e salvalo tempestivamente. Per le attività in batch puoi anche configurare
callback.urlper ricevere notifiche di stato finale.
Domande frequenti
Quanto può essere lungo l'effetto sonoro generato?
Ogni volta da 0,5 a 22 secondi, supporta secondi decimali, duration_seconds è obbligatorio.
loop allunga automaticamente l'effetto sonoro?
No. Serve a migliorare la continuità tra inizio e fine; la durata resta determinata da duration_seconds.
Quanto costa un effetto sonoro di due secondi?
Calcolando $0.0029 al secondo, due secondi costano $0.0058; le attività fallite rimborsano l'addebito anticipato.
Quando è possibile scaricare l'audio?
Attendi che status sia success, poi leggi la voce con type uguale a audio in output; durante la fase archiving continua ad attendere.
Continua l'integrazione
Articoli correlati
Vedi tutti gli articoli →-
Tutoriale
Casi di Recraft Creative Upscale: paesaggi e acquerelli ingranditi
Osserva le variazioni di texture su baita, lago e cittadina ad acquerello, distingui il risultato completo dall'anteprima e controlla i dettagli ridisegnati.
-
Tutoriale
Chiave API OpenAI non valida: 401, variabili d'ambiente e verifica della configurazione di progetto
Distingui gli errori 401, 403 e 429 di OpenAI, controlla variabili d'ambiente, impostazioni di organizzazione e progetto e verifica le credenziali con una richiesta in sola lettura.
-
Tutoriale
Raccolta completa di prompt per Kling 4.0: 6 scene da cui copiare direttamente per creare video
Prodotti e-commerce, cibo, paesaggi di viaggio, momenti di vita quotidiana, b-roll con audio e image-to-video: ogni scena ha un video reale, il prompt completo e un link con compilazione automatica con un clic.