Como criar um bot de música para o Discord
Nesta página
Um bot de música é um bot do Discord que entra num canal de voz e reproduz áudio. A parte do bot — comandos, uma fila, uma mensagem «a tocar agora» — é código de bot normal. A parte difícil é o áudio: obter as faixas, codificá-las e transmiti-las para o canal de voz sem falhas.
Este guia explica as duas formas de tratar o áudio, que bibliotecas continuam a funcionar depois das alterações de voz do Discord em 2026 e o que um bot de música pode e não pode tocar. Se nunca criou um bot, comece por como criar um bot do Discord.
Primeiro: a voz encriptada do Discord (DAVE)
Desde 1 de março de 2026, o Discord só permite chamadas de voz com encriptação ponto a ponto, através de um protocolo chamado DAVE. Um bot feito com uma biblioteca que não o suporte deixa de conseguir entrar em canais de voz. É por isso que muitos tutoriais e repositórios antigos de bots de música deixaram de funcionar.
Antes de começar, confirme que a sua stack é suficientemente recente:
| Biblioteca | Suporte a DAVE a partir de |
|---|---|
| discord.py | 2.7.0, instalada como discord.py[voice] |
| @discordjs/voice | 0.19, que exige Node.js 22.12 ou mais recente |
| Servidor Lavalink | 4.2.0 |
| discord-player | 7.2.0 |
Duas formas de reproduzir áudio: Lavalink ou FFmpeg
| Lavalink | FFmpeg no bot | |
|---|---|---|
| Como funciona | Um servidor de áudio separado transmite a música; o bot envia-lhe comandos | O próprio bot descodifica e transmite o áudio com FFmpeg |
| O bot precisa de | Uma biblioteca cliente de Lavalink | FFmpeg e Opus instalados junto ao bot |
| Escala até | Muitos servidores ao mesmo tempo; um Lavalink pode servir vários bots | Poucos servidores, antes de o CPU do bot se tornar o limite |
| Indicado para | Qualquer bot que espera ver crescer | Aprender, ou um bot para um único servidor |
A maioria dos bots de música públicos usa Lavalink. O FFmpeg é mais simples para começar, porque só há um programa a executar.
Bibliotecas cliente de Lavalink com manutenção
Estes clientes constam da lista oficial do Lavalink e lançaram versões em 2026 com as alterações de voz acima:
- JavaScript (discord.js): lavalink-client, Shoukaku, Riffy, Moonlink.js
- Python (discord.py): Wavelink, lavalink.py, mafic, pomice
- C#: Lavalink4NET
- Java (JDA): Lavalink-Client
Cada um liga-se a um servidor Lavalink com um host, uma porta e uma palavra-passe, e dá ao seu bot comandos como pesquisar, tocar, saltar e volume. A configuração do servidor em si é explicada em como alojar um servidor Lavalink.
Em JavaScript existe também o discord-player, que trata o áudio dentro do bot. A versão atual já não suporta o YouTube; toca SoundCloud, Vimeo, anexos e links do Spotify ou Apple Music através de outras fontes.
O método FFmpeg, em poucas linhas
Para ver a voz a funcionar, toque um ficheiro que seja seu. Em Python, instale o extra de voz e confirme que o ffmpeg está no sistema:
pip install "discord.py[voice]"
Depois, dentro de um comando de barra, entre no canal de quem o invocou e toque um ficheiro local:
channel = interaction.user.voice.channel
voice = await channel.connect()
voice.play(discord.FFmpegPCMAudio("song.mp3"))
await interaction.response.send_message("Playing.")
Em JavaScript, o equivalente é @discordjs/voice com @discordjs/opus e FFmpeg. Um bot a sério acrescenta uma fila, comandos para saltar e parar, e sai do canal quando este fica vazio.
O que um bot de música pode tocar
É aqui que a maioria dos bots de música se mete em sarilhos, por isso esclareça isto antes de construir:
- Os termos do YouTube não permitem descarregar nem retransmitir o seu conteúdo sem autorização, nem contornar as suas proteções. Grandes bots de música foram encerrados precisamente por isso.
- As diretrizes da comunidade do Discord proíbem partilhar conteúdo que viole a propriedade intelectual de quem quer que seja, e o dono do bot é responsável pelo que ele faz.
- Fontes mais seguras: música sua ou para a qual tem licença, bibliotecas livres de direitos e Creative Commons, rádios online que o permitam e ficheiros que os seus membros carreguem com direito a partilhá-los.
O Lavalink e os seus plugins conseguem tecnicamente tocar a partir de muitos sites; se tem permissão para o fazer é outra questão, e cabe-lhe a si responder.
Alojar um bot de música
Um bot de música tem de estar online e manter uma ligação estável enquanto transmite, algo que um PC doméstico em Wi-Fi raramente consegue durante muito tempo. No alojamento de bots Discord da HytHost:
- O bot corre no runtime Node.js, Python, Java, Go, C# ou Bun que escolher na encomenda.
- O Lavalink é um runtime próprio. Corre como servidor separado: encomende um plano para o bot e outro com o runtime Lavalink ou, num plano com vários slots de bot, peça-nos para passar um deles para Lavalink.
- Aponte o cliente Lavalink do bot para o endereço, a porta e a palavra-passe do servidor Lavalink, tal como aparecem no respetivo painel.
Manter o próprio bot online, com reinício automático e o token num local seguro, é explicado em como alojar um bot do Discord 24/7.
Execute o bot e o seu servidor Lavalink no alojamento de bots Discord da HytHost — Node.js, Python, Java, Lavalink e mais, desde €0.89/mês.
Ver planos de alojamento de botsPerguntas frequentes
Muito provavelmente por causa da voz encriptada do Discord. Desde 1 de março de 2026, só os clientes que suportam o protocolo DAVE conseguem entrar em chamadas de voz. Atualize para discord.py 2.7, @discordjs/voice 0.19 ou Lavalink 4.2 ou mais recente, e para um cliente Lavalink atual.
Não. Um bot pequeno pode transmitir diretamente com FFmpeg. O Lavalink compensa quando o bot toca em vários servidores ao mesmo tempo, porque tira ao bot o trabalho do áudio.
Tecnicamente algumas ferramentas ainda conseguem, mas os termos do YouTube não permitem descarregar nem retransmitir o seu conteúdo sem autorização, e essas ferramentas avariam com frequência. Música sua ou com licença é a escolha segura.
Com discord.js, um cliente Lavalink como lavalink-client ou Shoukaku; com discord.py, Wavelink ou lavalink.py. Escolha um com uma versão de 2026, para que suporte a voz encriptada do Discord.
O bot em si é leve; o que pesa é o trabalho do áudio. Com Lavalink, dê ao servidor Lavalink cerca de 1 GB para um bot pequeno (a nossa recomendação) e ao bot o que ele precisaria sem música.
Coloque o seu bot de música online
O alojamento de bots Discord da HytHost executa o seu bot e o seu servidor Lavalink, com base de dados MySQL e cópias de segurança — desde €0.89/mês.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursEste guia foi útil?