Guide de configuration d'un bot Discord Text-to-Speech (2026)

Guide complet pour configurer un bot Discord text-to-speech en 2026. Couvre Voicemod TTS, Streamcord, les bots personnalisés Discord.js + ElevenLabs, le routage des canaux vocaux et les raccourcis clavier.

Si vous voulez que Discord prononce du texte à voix haute – que vous soyez un streamer qui achemine le chat Twitch dans un canal vocal, un utilisateur qui préfère taper, ou un développeur qui crée un outil de narration personnalisé – un bot Discord de synthèse vocale est la bonne solution. Ce guide couvre toutes les options pratiques disponibles en 2026 : les bots hébergés que vous pouvez ajouter en un seul clic, la commande TTS native de Discord, et une procédure pas à pas pour créer un bot personnalisé avec Discord.js et l’API ElevenLabs.


TL;DR

  • La commande /tts native de Discord est côté client – elle joue l’audio par les haut-parleurs de l’auditeur, pas par un canal vocal.
  • Streamcord TTS est l’option hébergée la plus populaire pour les streamers qui veulent que le chat Twitch soit lu à voix haute dans les canaux vocaux Discord.
  • Voicemod TTS fournit des voix de fantaisie et de personnage via un bot géré.
  • Un bot personnalisé Discord.js + ElevenLabs vous donne la meilleure qualité vocale et un contrôle complet, avec un temps de création inférieur à une heure.
  • Les raccourcis pour déclencher les commandes TTS peuvent être mappés via les paramètres de liaison de touches Discord ou via des outils externes comme AutoHotkey.
  • VoxBooster s’associe aux bots TTS pour les flux de travail hybrides où vous voulez à la fois la narration de chat synthétisée et une voix modifiée en direct.

Pourquoi les bots TTS existent et ce qu’ils font réellement

La commande /tts intégrée de Discord est souvent mal comprise. Lorsque vous tapez /tts bonjour, le client Discord de bureau lit ce texte à voix haute par vos haut-parleurs en utilisant le moteur TTS du système d’exploitation. Les autres utilisateurs du canal ne l’entendent pas par le canal vocal – ils ne l’entendent que s’ils ont aussi leur propre Discord TTS activé et que leur client lit le message localement.

Un bot Discord de synthèse vocale fonctionne différemment. Le bot est un processus côté serveur avec sa propre connexion au canal vocal. Lorsqu’il est déclenché, il synthétise la parole à partir du texte et diffuse l’audio résultant dans le canal vocal lui-même. Tout le monde dans ce canal vocal l’entend, de la même manière qu’il entendrait un autre participant parler. Cette distinction – local pour le client par rapport au diffusage de canal – est la raison entière de l’existence des bots pour ce cas d’usage.

Scénarios courants où cela importe :

  • Configuration de streaming : Vous êtes en direct sur Twitch et voulez que les messages de chat des spectateurs soient lus à voix haute dans l’appel vocal Discord que vous partagez avec les co-streamers.
  • Accessibilité : Un membre du serveur ne peut ou ne veut pas utiliser de microphone ; le bot TTS lui permet de participer aux discussions vocales en tapant.
  • Annonces : Un bot lit les alertes de modération, les attributions de rôles ou les messages programmés dans un canal sans opérateur humain.
  • Narration personnalisée : Les développeurs créent des bots qui narrent les événements du jeu, les scores ou les alertes en temps réel avec des voix IA de haute qualité.

Option 1 : Commande /tts native de Discord

Avant de vous tourner vers un bot, vérifiez si la commande intégrée de Discord répond à vos besoins.

Comment l’activer : Sur votre serveur, allez à Paramètres du serveur → Aperçu → Activer la synthèse vocale. Sous les paramètres avancés de votre canal, définissez Autoriser quiconque à envoyer des messages TTS (ou limitez-le à des rôles spécifiques).

Comment l’utiliser : Dans tout canal texte avec TTS activé, tapez /tts [votre message]. Discord lit le message à voix haute par les haut-parleurs du destinataire en utilisant le moteur TTS du système d’exploitation.

Limitations :

  • L’audio va aux haut-parleurs locaux, pas à la diffusage du canal vocal.
  • La qualité vocale dépend du moteur TTS du système d’exploitation de l’auditeur (Microsoft David, Zira, etc. sur Windows).
  • Chaque auditeur doit avoir TTS activé dans Paramètres → Accessibilité → Autoriser la lecture et l’utilisation de la commande /tts.

Meilleur pour : L’accessibilité rapide ou les situations où chaque utilisateur a juste besoin d’entendre le texte lu localement – pas pour le streaming ou les annonces de groupe.


Option 2 : Bot TTS Voicemod

Voicemod, mieux connu pour son changeur de voix de bureau, exploite un bot Discord qui apporte sa bibliothèque vocale à la fonctionnalité de synthèse vocale.

Ce qu’il propose :

  • Une bibliothèque de voix de fantaisie et de personnage (robotique, dessin animé, grave, etc.).
  • Interface simple de commande slash : /tts [voix] [message].
  • Pas de téléchargement de modèle de voix personnalisé – vous êtes limité à la bibliothèque prédéfinie de Voicemod.
  • Niveau gratuit disponible ; les voix premium nécessitent un abonnement Voicemod.

Configuration :

  1. Visitez la page du bot Discord de Voicemod et cliquez sur Ajouter au serveur.
  2. Autorisez le bot avec les autorisations Connecter, Parler et Lire les messages.
  3. Rejoignez un canal vocal sur votre serveur.
  4. Utilisez /tts suivi de votre nom de voix choisi et du texte du message.

Limitations : La sélection de voix est limitée à la bibliothèque de Voicemod. Si vous avez besoin d’une voix humaine qui sonne naturellement ou d’un personnage personnalisé, cela ne suffira pas.


Option 3 : Streamcord TTS pour les streamers

Streamcord est le bot Discord de synthèse vocale incontournable pour les streamers qui veulent que les messages du chat Twitch soient lus à voix haute dans un canal vocal Discord. Il connecte Twitch et Discord nativement.

Ce qu’il propose :

  • Connecte votre canal Twitch à un canal vocal Discord.
  • Lit les messages du chat Twitch à voix haute avec voix, vitesse et hauteur configurables.
  • Prend en charge TTS réservée aux abonnés, les rachats de points de canal comme déclencheurs TTS et le filtrage des messages.
  • Configuration de commande slash et tableau de bord.

Configuration :

  1. Allez sur streamcord.io et cliquez sur Ajouter à Discord.
  2. Autorisez sur votre serveur avec les autorisations requises.
  3. Utilisez /tts setup et suivez les invites pour lier votre canal Twitch et sélectionner un canal vocal Discord cible.
  4. Configurez les paramètres de voix sur streamcord.io/dashboard.

Routage du canal vocal : Streamcord rejoint le canal vocal que vous spécifiez lors de la configuration. Vous pouvez modifier le canal cible via le tableau de bord sans réinviter le bot. Pour le faire vous suivre entre les canaux, utilisez la commande /tts move.

Configuration du raccourci pour Streamcord : Streamcord lui-même n’a pas de système de raccourci clavier de bureau dédié. Les streamers lient généralement une touche Push-to-Talk dans Discord pour leur propre microphone, puis utilisent une liaison de touche séparée dans OBS ou StreamDeck pour déclencher les commandes de chat. Pour un contrôle plus précis, les scripts AutoHotkey peuvent envoyer des commandes /tts via des raccourcis clavier en simulant l’entrée Discord.


Option 4 : Bot personnalisé avec Discord.js + API ElevenLabs

Pour la meilleure qualité vocale et un contrôle complet du comportement, construisez votre propre bot Discord de synthèse vocale en utilisant Discord.js v14 et l’API ElevenLabs. Cela vous donne accès aux voix de qualité studio d’ElevenLabs, au clonage vocal, à la synthèse multilingue et au réglage des paramètres par demande.

Prérequis

  • Node.js 18+
  • Un jeton d’application Discord et de bot (discord.com/developers)
  • Une clé API ElevenLabs (elevenlabs.io)
  • FFmpeg installé et sur votre PATH (requis par @discordjs/voice pour l’encodage audio)

Étape 1 : Initialiser le projet

mkdir discord-tts-bot && cd discord-tts-bot
npm init -y
npm install discord.js @discordjs/voice @discordjs/opus elevenlabs libsodium-wrappers ffmpeg-static

Étape 2 : Enregistrer la commande slash

Créez deploy-commands.js :

const { REST, Routes, SlashCommandBuilder } = require('discord.js');

const commands = [
  new SlashCommandBuilder()
    .setName('tts')
    .setDescription('Parlez du texte dans votre canal vocal')
    .addStringOption(opt =>
      opt.setName('text').setDescription('Texte à parler').setRequired(true)
    )
].map(cmd => cmd.toJSON());

const rest = new REST({ version: '10' }).setToken(process.env.DISCORD_TOKEN);

(async () => {
  await rest.put(
    Routes.applicationGuildCommands(process.env.CLIENT_ID, process.env.GUILD_ID),
    { body: commands }
  );
  console.log('Commandes enregistrées');
})();

Exécutez node deploy-commands.js une fois pour enregistrer la commande slash /tts sur votre serveur.

Étape 3 : Construire le bot

Créez index.js :

const { Client, GatewayIntentBits } = require('discord.js');
const { joinVoiceChannel, createAudioPlayer, createAudioResource, AudioPlayerStatus } = require('@discordjs/voice');
const { ElevenLabsClient } = require('elevenlabs');
const { Readable } = require('stream');

const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildVoiceStates] });
const eleven = new ElevenLabsClient({ apiKey: process.env.ELEVENLABS_API_KEY });

const VOICE_ID = 'your-elevenlabs-voice-id'; // p. ex. 'EXAVITQu4vr4xnSDxMaL' pour Rachel

client.on('interactionCreate', async interaction => {
  if (!interaction.isChatInputCommand() || interaction.commandName !== 'tts') return;

  const text = interaction.options.getString('text');
  const voiceChannel = interaction.member?.voice?.channel;

  if (!voiceChannel) {
    return interaction.reply({ content: 'Rejoignez d\'abord un canal vocal.', ephemeral: true });
  }

  await interaction.deferReply({ ephemeral: true });

  const audioStream = await eleven.textToSpeech.convertAsStream(VOICE_ID, {
    text,
    model_id: 'eleven_multilingual_v2',
    voice_settings: { stability: 0.5, similarity_boost: 0.75 }
  });

  const connection = joinVoiceChannel({
    channelId: voiceChannel.id,
    guildId: interaction.guildId,
    adapterCreator: interaction.guild.voiceAdapterCreator,
  });

  const player = createAudioPlayer();
  const resource = createAudioResource(Readable.from(audioStream));

  player.play(resource);
  connection.subscribe(player);

  player.on(AudioPlayerStatus.Idle, () => connection.destroy());

  await interaction.editReply({ content: 'Parlant.' });
});

client.login(process.env.DISCORD_TOKEN);

Étape 4 : Configurer les variables d’environnement

Créez .env :

DISCORD_TOKEN=your_bot_token
CLIENT_ID=your_app_client_id
GUILD_ID=your_server_id
ELEVENLABS_API_KEY=your_elevenlabs_key

Exécutez node index.js, rejoignez un canal vocal sur votre serveur et tapez /tts Bonjour, c'est mon bot TTS personnalisé.

Choisir un modèle de voix

ElevenLabs propose plusieurs modèles en 2026 :

ModèleLatenceQualitéLangues
eleven_turbo_v2_5~250msBon32
eleven_multilingual_v2~400msExcellent29
eleven_flash_v2_5~75msBon32

Pour l’utilisation Discord en temps réel, eleven_flash_v2_5 minimise le délai entre la commande et la parole. Pour une narration de qualité prioritaire, eleven_multilingual_v2 est le meilleur choix.


Routage du canal vocal : motifs pratiques

Quel que soit le bot que vous utilisez, le routage du canal vocal suit les mêmes modèles de base.

Modèle suivre l’utilisateur : Le bot rejoint le canal vocal dans lequel se trouve l’utilisateur appelant au moment de l’utilisation de la commande. C’est le paramètre par défaut pour la plupart des bots et l’implémentation dans l’exemple Discord.js ci-dessus. Aucune préconfiguration requise.

Modèle canal fixe : Vous désignez un ID de canal spécifique dans la configuration du bot. Le bot parle toujours dans ce canal, peu importe où se trouve l’utilisateur appelant. Meilleur pour les bots d’annonce ou les salles TTS dédiées.

Modèle multicanal : Une configuration plus complexe où différents canaux texte correspondent à différents canaux vocaux. Dans Discord.js, vous implémentez cela avec un objet de mappage de canal et résolvez le canal vocal cible du canal texte source.

Modèle de suivi dynamique : Le bot surveille les événements voiceStateUpdate et se déplace pour suivre un utilisateur désigné entre les canaux vocaux. Utile pour les streamers qui changent fréquemment de salle au cours d’une session.


Configuration du raccourci pour les commandes TTS

La plupart des bots TTS sont déclenchés par des commandes slash, pas par des raccourcis. Mais vous pouvez créer des flux de travail efficaces avec quelques approches.

Liaisons de touches intégrées de Discord : Allez sur Paramètres Discord → Liaisons de touches. Vous ne pouvez pas lier de commandes de texte arbitraires ici – seulement Push-to-Talk, rendre muet, assourdir et des actions Discord similaires. Pour TTS, les liaisons de touches ne sont pas directement applicables.

AutoHotkey (Windows) : Vous pouvez mapper un raccourci pour taper une commande /tts [message prédéfini] et appuyer sur Entrée dans la fenêtre Discord :

^F1:: ; Ctrl+F1
  WinActivate, Discord
  Send, /tts Votre message prédéfini ici{Enter}
return

StreamDeck : Si vous utilisez un Elgato StreamDeck, l’action “Texte” peut envoyer des frappes de touche à n’importe quelle fenêtre active. Configurez un bouton StreamDeck pour que vous puissiez vous concentrer sur l’entrée de texte Discord et tapez votre commande /tts. C’est plus rapide et plus fiable qu’AutoHotkey pour les scénarios de streaming en direct.

Mot-clés côté bot : Pour les bots personnalisés, vous pouvez implémenter un déclencheur de préfixe dans un canal texte au lieu d’une commande slash – tout message dans un canal désigné qui commence par un préfixe configuré est automatiquement envoyé à TTS. Cela transforme chaque message en déclencheur TTS sans raccourci.


Flux de travail hybrides : bots TTS + modificateur de voix en direct

Un bot TTS gère la parole synthétisée à partir du texte. Il ne touche pas votre microphone. Cela signifie que les bots TTS et les modificateurs de voix en direct comme VoxBooster coexistent sans conflit dans le même canal vocal.

Une configuration hybride pratique pour les streamers :

  1. Streamcord TTS lit vos messages de chat Twitch à voix haute dans le canal vocal Discord dans lequel se trouvent vos co-streamers.
  2. VoxBooster modifie votre vraie voix de microphone en temps réel – que ce soit la suppression du bruit, un effet de hauteur ou un personnage vocal clonné.
  3. Vos co-streamers entendent les deux : le bot TTS parlant des messages de spectateurs, et votre voix modifiée en direct.

Les deux flux audio sont indépendants. Le bot TTS génère l’audio à partir de sa propre connexion. Votre audio microphone passe par le périphérique virtuel de VoxBooster avant d’atteindre Discord. Discord les mélange de la même manière qu’il mélange deux participants dans un canal.

Cette approche hybride est particulièrement efficace pour les créateurs de contenu qui veulent un environnement audio plus riche sans obliger les spectateurs ou les co-streamers à installer quoi que ce soit au-delà de Discord.


Dépannage des problèmes courants

Le bot se connecte mais ne produit aucun son : Vérifiez que FFmpeg se trouve sur votre PATH et que @discordjs/opus s’est installé correctement. Exécutez ffmpeg -version dans un terminal pour vérifier. Si opus manque, essayez npm rebuild @discordjs/opus.

La commande TTS a une latence longue : La latence de l’API ElevenLabs dépend du modèle que vous avez choisi et de la longueur du texte d’entrée. Basculez vers eleven_flash_v2_5 pour une latence plus faible. Pour les messages plus longs que ~200 caractères, envisagez de diviser le texte avant d’envoyer.

Le bot se déconnecte en plein lecture : C’est généralement un délai de connexion vocale. Ajoutez un gestionnaire connection.on('error') et reconnectez-vous en cas d’échec. Assurez-vous que votre serveur a une connectivité UDP sortante stable sur le port 443 (protocole vocal de Discord).

Streamcord TTS ne lit pas tous les messages : Streamcord filtre certains types de messages par défaut. Vérifiez votre tableau de bord Streamcord sous Filtres pour autoriser les messages non-abonnés et désactiver le filtrage du contenu si souhaité.

La commande Discord /tts ne fonctionne pas : Confirmez que TTS est activé dans les paramètres de votre serveur et que le canal spécifique permet TTS. Les utilisateurs individuels doivent également avoir la lecture TTS activée dans leurs propres paramètres d’accessibilité Discord.


Résumé

En 2026, la configuration d’un bot Discord de synthèse vocale prend n’importe où de deux minutes (Streamcord ou Voicemod) à moins d’une heure (Discord.js personnalisé + ElevenLabs). Le bon choix dépend de vos exigences de qualité vocale, de la quantité de personnalisation dont vous avez besoin et de la question de savoir si vous créez pour votre propre serveur ou pour une configuration de streaming en production. Discord /tts native couvre la lecture côté client de base sans bot. Les bots hébergés comme Streamcord couvrent le cas d’usage du streamer avec une configuration minimale. Un bot personnalisé Discord.js avec ElevenLabs vous donne des voix IA de qualité studio avec un contrôle programmatique complet sur tous les aspects de la parole.

Pour la configuration audio de streaming la plus polyvalente, combinez un bot TTS pour la narration de chat avec VoxBooster pour la modification vocale en direct – deux outils, un canal vocal, zéro conflit.

Essayez VoxBooster — essai gratuit de 3 jours.

Clonage vocal en temps réel, soundboard et effets — partout où vous parlez déjà.

  • Sans carte bancaire
  • ~30 ms de latence
  • Discord · Teams · OBS
Essayer gratuitement 3 jours