Inspired by funnebot by @Chazoshtare
beepbot is a lightweight, interactive Twitch sound bot that lets your chat trigger custom sound memes, generate text-to-speech (TTS) voices in multiple languages, and apply audio effects.
- Open
config.envwith a text editor and enter your Twitch channel name:CHANNEL=your_channel_name - Place your sound files in
.wavformat (44100 Hz recommended) into thesoundsfolder. The filename (excluding the.wavextension) automatically becomes the chat command. - Run the executable file.
- When updating to a new version, you only need to replace the old
beepbot.exefile with the new one. Do not overwrite your configuredconfig.envfile or thesoundsfolder to avoid losing your data.
- File Duration: Use short sounds (1–10s). The bot caches all audio into RAM for instant, lag-free playback. Long music tracks will quickly overload your computer's RAM.
- The release package already includes a
soundsfolder with a samplebeep.wavfile. You can run the bot immediately and test it in your chat using the!m beepcommand.
The main command for viewers is:
!m [sound_name_or_language_code]-[effects]
!m rand— play a random sound from thesoundsfolder.
Specify the language code before the text you want to read:
!m en hello chat— read the text in English.!m jp ohayo— read the text in Japanese.
Full list of supported languages
- Simultaneous Mix (using
+):!m sound1+sound2-rs(both sounds will play at the exact same time, reversed). - Sequential Chain (using spaces):
!m sound1-sp150 en hello sound2(plays sped-up sound1, then reads "hello" in English, and finally plays sound2).
Viewers can modify any sound or TTS by adding parameters separated by a hyphen - (order does not matter):
| Parameter | Effect | Range | Description |
|---|---|---|---|
sp[value] |
Speed | 10 - 200 | Playback speed and pitch (Default: 100.sp150 is faster, sp50 is slower). |
cs[value] |
Cut start | 0 - 100 | Cuts the specified percentage of the sound from the start (e.g., cs20). |
ce[value] |
Cut end | 0 - 100 | Cuts the specified percentage of the sound from the end (e.g., ce20). |
rs |
Reverse | — | Plays the sound backward. |
lq |
Low Quality | — | Applies an 8-bit retro sound effect (bitcrushing). |
er |
Ear Rape | — | Applies an extreme volume overdrive. |
dl |
Delay | — | Applies a decaying echo effect. |
vb |
Vibrato | — | Applies a pitch-vibrating effect. |
ga |
Gacha | — | Randomly adds unused effects. The number of added effects depends on how many you already specified (if you have already specified 3 or more, no effects are added unless you trigger a rare 5% jackpot, which adds 1 more) |
(Examples: !m ru-sp150 hello, !m omg-ga)
ℹ️ Note: Trimming (cs/ce) is always applied to the original sound first, before any other effects are processed.
| Command | Description |
|---|---|
!m mute / unmute |
Mutes / unmutes the bot (instantly stops audio, clears the queue). |
!m qon / qoff |
Enables / disables sequential queue (if qoff, sounds will overlap concurrently). |
!m eron / eroff |
Enables / disables global ear safety (strictly blocks the er effect). |
!m stop |
Instantly stops currently playing sound and clears the entire queue. |
!m skip |
Instantly interrupts current sound and plays the next queued item. |
beepbot — это легкий интерактивный Twitch-бот, который позволяет зрителям запускать звуковые мемы, озвучивать текст (TTS) на разных языках и накладывать аудиоэффекты.
- Откройте файл
config.envтекстовым редактором и впишите имя вашего Twitch-канала:CHANNEL=имя_вашего_канала - Положите свои аудиофайлы в формате
.wav(рекомендуется частота 44100 Гц) в папкуsounds. Название файла (без расширения) становится командой вызова. - Запустите исполняемый файл бота.
- При выходе новой версии достаточно заменить старый файл
beepbot.exeна новый. Не перезаписывайте уже настроенный файлconfig.envи папкуsounds, чтобы не потерять свои данные.
- Длительность звуков: Используйте короткие звуки (1–10 сек). Бот хранит аудио в ОЗУ для мгновенного воспроизведения. Длинные треки быстро перегрузят оперативную память вашего компьютера.
- Релизный архив уже содержит папку
soundsс тестовым файломbeep.wav. Вы можете сразу запустить бота и проверить его работу в чате командой!m beep.
Основная команда для зрителей:
!m [имя_звука_или_код_языка]-[эффекты]
!m rand— проиграть случайный звук из папкиsounds.
Укажите код языка перед текстом, который нужно озвучить:
!m ru привет чат— озвучить текст на русском.!m jp аниме— озвучить текст на японском.
Полный список поддерживаемых языков
- Микс (одновременно через
+):!m sound1+sound2-rs(звуки запустятся одновременно и оба проиграются реверсом). - Цепочка (последовательно через пробел):
!m sound1-sp150 ru привет sound2(сначала проиграется ускоренный sound1, затем по-русски озвучится слово «привет», а в конце запустится sound2).
Эффекты добавляются через дефис - после имени звука или кода языка (порядок не имеет значения):
| Параметр | Эффект | Диапазон | Описание |
|---|---|---|---|
sp[число] |
Скорость | 10 - 200 | Скорость и высота воспроизведения (норма: 100. sp150 — быстрее и выше, sp50 — медленнее и ниже). |
cs[число] |
Срез начала | 0 - 100 | Отрезать указанный процент звука с начала (например, cs20). |
ce[число] |
Срез конца | 0 - 100 | Отрезать указанный процент звука с конца (например, ce20). |
rs |
Реверс | — | Воспроизвести звук задом наперед. |
lq |
Лоу-фай | — | Эффект 8-битного ретро-звука (биткрашинг). |
er |
Перегруз | — | Экстремальный перегруз громкости (Ear Rape). |
dl |
Эхо (Delay) | — | Эффект плавного затухающего эхо. |
vb |
Вибрация | — | Эффект плавного дрожания частоты (Vibrato). |
ga |
Гача (Gacha) | — | Случайно добавляет неиспользованные эффекты. Количество зависит от того, сколько эффектов вы уже ввели вручную (если введено 3 или более, не добавится ничего, кроме редкого 5% шанса сорвать джекпот и получить +1 эффект). |
(Примеры: !m ru-sp150 привет, !m omg-ga)
ℹ️ Примечание: Обрезка (cs/ce) всегда применяется к исходному звуку первой, до наложения любых других эффектов.
| Команда | Описание |
|---|---|
!m mute / unmute |
Заглушить / включить бота (при mute текущие звуки обрываются, очередь очищается). |
!m qon / qoff |
Включить / выключить очередь (при qoff звуки в чате накладываются параллельно). |
!m eron / eroff |
Включить / выключить глобальную безопасность ушей (блокирует эффект er для всех). |
!m stop |
Мгновенно выключить текущий звук и полностью очистить очередь. |
!m skip |
Прервать текущий звук и запустить следующий из очереди. |