Commandes et workflows complets d’ElevenLabs pour la synthèse vocale par IA et la génération de voix.
Authentification API
| Commande | Description |
|---|
curl -H "xi-api-key: <api-key>" <endpoint> | Authentification API |
export ELEVEN_API_KEY=<key> | Définir la variable d’environnement |
elevenlabs auth login | Se connecter au compte |
elevenlabs auth logout | Se déconnecter du compte |
elevenlabs auth status | Vérifier le statut d’authentification |
API Texte-à-Parole
| Endpoint | Description |
|---|
POST /v1/text-to-speech/{voice_id} | Générer un discours |
POST /v1/text-to-speech/{voice_id}/stream | Flux de parole |
GET /v1/voices | Lister les voix disponibles |
GET /v1/voices/{voice_id} | Obtenir les détails de la voix |
POST /v1/voices/add | Ajouter une voix personnalisée |
Gestion des Voix
| Commande | Description |
|---|
GET /v1/voices | Lister toutes les voix |
GET /v1/voices/{voice_id} | Obtenir les informations vocales |
DELETE /v1/voices/{voice_id} | Supprimer la voix personnalisée |
POST /v1/voices/{voice_id}/edit | Modifier les paramètres vocaux |
GET /v1/voices/settings | Obtenir les paramètres vocaux |
Génération de Parole
| Commande | Description |
|---|
curl -X POST "https://api.elevenlabs.io/v1/text-to-speech/21m00Tcm4TlvDq8ikWAM" -H "xi-api-key: <key>" -H "Content-Type: application/json" -d '{"text": "Hello world"}' | Génération de discours de base |
curl -X POST "https://api.elevenlabs.io/v1/text-to-speech/21m00Tcm4TlvDq8ikWAM/stream" -H "xi-api-key: <key>" | Streaming speech |
SDK Python
| Commande | Description |
|---|
pip install elevenlabs | Installer Python SDK |
from elevenlabs import generate, play | Importer SDK |
generate(text="Hello", voice="Bella") | Générer un discours |
play(audio) | Lire l’audio généré |
save(audio, "output.mp3") | Enregistrer le fichier audio |
Clonage de Voix
| Commande | Description |
|---|
POST /v1/voices/add | Cloner la voix à partir d’échantillons |
POST /v1/voices/{voice_id}/samples | Ajouter des échantillons vocaux |
DELETE /v1/voices/{voice_id}/samples/{sample_id} | Supprimer l’échantillon vocal |
GET /v1/voices/{voice_id}/samples | Lister les échantillons vocaux |
Paramètres Vocaux
| Paramètre | Description |
|---|
stability | Cohérence vocale (0.0-1.0) |
similarity_boost | Similarité vocale (0.0-1.0) |
style | Style de parole (0.0-1.0) |
use_speaker_boost | Améliorer la similarité des haut-parleurs |
| Format | Description |
|---|
mp3_44100_128 | MP3 44,1 kHz 128 kbps |
mp3_22050_32 | MP3 22,05 kHz 32 kbps |
pcm_16000 | PCM 16 kHz |
pcm_22050 | PCM 22,05 kHz |
pcm_24000 | PCM 24 kHz |
pcm_44100 | PCM 44,1 kHz |
Voix Prédéfinies
| Voice ID | Nom | Description |
|---|
21m00Tcm4TlvDq8ikWAM | Rachel | Américaine féminin |
AZnzlk1XvdvUeBnXmlld | Domi | American female |
EXAVITQu4vr4xnSDxMaL | Bella | Américaine féminin |
ErXwobaYiN019PkySvjV | Antoni | Homme américain |
MF3mGyEYCl7XYWbV9V6O | Elli | Américaine féminin |
TxGEqnHWrfWFTfGW9XjX | Josh | Homme américain |
VR6AewLTigWG4xSOukaG | Arnold | Homme américain |
pNInz6obpgDQGcFmaJgB | Adam | Homme américain |
SDK Node.js
| Commande | Description |
|---|
npm install elevenlabs | Installer Node.js SDK |
const { ElevenLabsAPI } = require('elevenlabs') | Importer SDK |
const client = new ElevenLabsAPI({ apiKey: 'key' }) | Initialiser client |
client.textToSpeech.generate() | Générer un discours |
Audio en Streaming
| Commande | Description |
|---|
POST /v1/text-to-speech/{voice_id}/stream | Streamer l’audio |
curl -X POST -H "xi-api-key: <key>" --data-raw '{"text":"Hello"}' --output audio.mp3 | Flux vers fichier |
Fonctionnalités du Voice Lab
| Fonctionnalité | Description |
|---|
Voice Design | Créer des voix synthétiques |
Voice Cloning | Cloner des voix existantes |
Professional Cloning | Clonage vocal de haute qualité |
Voice Library | Parcourir la collection vocale |
Limites de Taux API
| Plan | Caractères/Mois | Requêtes Concurrentes |
|---|
Free | 10 000 | 2 |
Starter | 30 000 | 3 |
Creator | 100 000 | 5 |
Pro | 500 000 | 10 |
Scale | 2 000 000 | 25 |
Gestion des Erreurs
| Code d’erreur | Description |
|---|
400 | Mauvaise Requête |
401 | Non autorisé |
403 | Interdit |
404 | Non trouvé |
422 | Unprocessable Entity |
429 | Trop de Requêtes |
500 | Erreur de serveur interne |
Paramètres Avancés
| Paramètre | Description |
|---|
model_id | Modèle TTS à utiliser |
voice_settings | Configuration vocale |
pronunciation_dictionary_locators | Prononciations personnalisées |
seed | Génération reproductible |
Configuration du Webhook
| Commande | Description |
|---|
POST /v1/webhooks | Créer un webhook |
GET /v1/webhooks | Lister les webhooks |
DELETE /v1/webhooks/{webhook_id} | Supprimer webhook |
PUT /v1/webhooks/{webhook_id} | Mettre à jour le webhook |
Projets et Doublage
| Commande | Description |
|---|
POST /v1/projects | Créer un projet |
GET /v1/projects | Lister les projets |
POST /v1/dubbing | Créer un projet de doublage |
GET /v1/dubbing/{dubbing_id} | Obtenir le statut de doublage |
Analytiques d’Utilisation
| Commande | Description |
|---|
GET /v1/user/subscription | Obtenir les informations d’abonnement |
GET /v1/user | Obtenir les informations de l’utilisateur |
GET /v1/usage/character-stats | Obtenir les statistiques d’utilisation |
Outil CLI
| Commande | Description |
|---|
elevenlabs --help | Afficher l’aide |
elevenlabs tts --text "Hello" --voice Rachel | Générer un discours |
elevenlabs voices list | Lister les voix |
elevenlabs voices clone --name "MyVoice" | Cloner la voix |
| Code | Description |
|---|
audio = generate(text="Hello", voice="Bella", model="eleven_monolingual_v1") | Génération de base |
play(audio) | Lire l’audio |
save(audio, "hello.mp3") | Enregistrer dans un fichier |
| Code | Description |
|---|
const audio = await elevenlabs.generate({ text: "Hello", voice: "Rachel" }) | Générer un audio |
fs.writeFileSync("audio.mp3", audio) | Enregistrer dans un fichier |
| Étape | Description |
|---|
1. Upload samples | Fournir des échantillons vocaux |
2. Train model | L’IA apprend les modèles vocaux |
3. Test generation | Vérifier la qualité vocale |
4. Fine-tune settings | Ajuster les paramètres |
5. Deploy voice | Utiliser en production |
| Pratique | Description |
|---|
Clear audio samples | Enregistrements de haute qualité |
Diverse samples | Diverses émotions/styles |
Consistent speaker | Même personne tout au long |
Proper length | 1-5 minutes au total |
Good microphone | Enregistrement professionnel |
| Plateforme | Intégration |
|---|
Discord Bot | Génération de message vocal |
Podcast | Narration automatisée |
E-learning | Voix-off de cours |
Gaming | Voix des personnages |
Accessibility | Synthèse vocale pour personnes malvoyantes |
| Problème | Solution |
|---|
Poor voice quality | Améliorer la qualité des échantillons |
Rate limit exceeded | Mettre à niveau le plan ou attendre |
Authentication failed | Vérifier la clé API |
Voice not found | Vérifier l’ID vocal |
Audio distortion | Ajuster les paramètres vocaux |
| Variable | Description |
|---|
ELEVEN_API_KEY | Clé d’authentification API |
ELEVEN_API_URL | URL de base de l’API |
ELEVEN_TIMEOUT | Délai de requête |
| Fichier | Description |
|---|
.elevenlabs.json | Fichier de configuration |
voices.json | Définitions vocales |
settings.json | Paramètres par défaut |
| Métrique | Description |
| --------- | ------------- |
Characters used | Utilisation mensuelle |
API calls | Nombre de requêtes |
Voice generations | Audio créé |
Error rate | Requêtes échouées |