ElevenLabs Sound Effects
Générer des effets sonores à partir de descriptions textuelles — supporte la boucle, la durée personnalisée et le contrôle de l'adhérence au prompt.
Configuration : Voir Installation Guide. Pour JavaScript, utilisez uniquement les packages
@elevenlabs/*.
Quick Start
Python
from elevenlabs import ElevenLabs
client = ElevenLabs()
audio = client.text_to_sound_effects.convert(
text="Thunder rumbling in the distance with light rain",
)
with open("thunder.mp3", "wb") as f:
for chunk in audio:
f.write(chunk)
JavaScript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
import { createWriteStream } from "fs";
const client = new ElevenLabsClient();
const audio = await client.textToSoundEffects.convert({
text: "Thunder rumbling in the distance with light rain",
});
audio.pipe(createWriteStream("thunder.mp3"));
cURL
curl -X POST "https://api.elevenlabs.io/v1/sound-generation" \
-H "xi-api-key: $ELEVENLABS_API_KEY" -H "Content-Type: application/json" \
-d '{"text": "Thunder rumbling in the distance with light rain"}' \
--output thunder.mp3
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
text |
string (required) | — | Description de l'effet sonore désiré |
model_id |
string | eleven_text_to_sound_v2 |
Modèle à utiliser |
duration_seconds |
number | null | null (auto) | Durée 0,5–30s ; calculée automatiquement si null |
prompt_influence |
number | null | 0.3 | Degré de suivi du prompt (0–1) |
loop |
boolean | false | Générer un son en boucle transparente (modèle v2 uniquement) |
Examples with Parameters
# Looping ambient sound, 10 seconds
audio = client.text_to_sound_effects.convert(
text="Gentle forest ambiance with birds chirping",
duration_seconds=10.0,
prompt_influence=0.5,
loop=True,
)
# Short UI sound, high prompt adherence
audio = client.text_to_sound_effects.convert(
text="Soft notification chime",
duration_seconds=1.0,
prompt_influence=0.8,
)
Output Formats
Passez output_format comme paramètre de requête (cURL) ou paramètre SDK :
| Format | Description |
|---|---|
mp3_44100_128 |
MP3 44,1 kHz 128 kbps (défaut) |
pcm_44100 |
Raw non compressé qualité CD |
opus_48000_128 |
Opus 48 kHz 128 kbps — compressé efficace |
ulaw_8000 |
μ-law 8 kHz — téléphonie |
Liste complète : mp3_22050_32, mp3_24000_48, mp3_44100_32, mp3_44100_64, mp3_44100_96, mp3_44100_128, mp3_44100_192, pcm_8000, pcm_16000, pcm_22050, pcm_24000, pcm_32000, pcm_44100, pcm_48000, ulaw_8000, alaw_8000, opus_48000_32, opus_48000_64, opus_48000_96, opus_48000_128, opus_48000_192.
Prompt Tips
- Soyez spécifique : « Heavy rain on a tin roof » > « Rain »
- Combinez des éléments : « Footsteps on gravel with distant traffic »
- Précisez le style : « Cinematic braam, horror » ou « 8-bit retro jump sound »
- Mentionnez l'ambiance/contexte : « Eerie wind howling through an abandoned building »
Error Handling
try:
audio = client.text_to_sound_effects.convert(text="Explosion")
except Exception as e:
print(f"API error: {e}")
Erreurs courantes :
- 401 : Clé API invalide
- 422 : Paramètres invalides (vérifiez la plage de durée, la plage de prompt_influence)
- 429 : Limite de débit dépassée