tg-streaming-bot
Self-hosted Telegram-бот, который стримит фильмы, музыку, радио и живое ТВ в групповой голосовой чат — чтобы друзья из разных городов смотрели вместе и синхронно.
Self-hosted Telegram-бот, превращающий групповой голосовой чат в совместный просмотр. Включаешь фильм, YouTube, интернет-радио или живое ТВ в звонок — и все видят одни и те же кадры, синхронно, с телефона или десктопа. Построен на Pyrogram + py-tgcalls, с загрузкой через yt-dlp и перекодированием через ffmpeg — плюс опциональный Reality-VPN sidecar для сетей, где голос Telegram фильтруется.
О проекте
Зона работы
- Стримит видео/аудио в групповые голосовые чаты Telegram через py-tgcalls
- Архитектура бот + ассистент-аккаунт (бот не может зайти в звонок)
- Источники: YouTube, радио, IPTV (50k+ каналов), файлы, живой m3u8
- Общее inline-управление: пауза/перемотка/мастер-громкость для всей комнаты
- Reality-VPN sidecar, туннелирующий сигналинг + голосовой UDP
Что было сделано
- Решена проблема «бот не может зайти в звонок» через ассистент-аккаунт на py-tgcalls.
- YouTube сделан надёжным через pipeline «скачать, затем стримить» (клиент android_vr).
- Осознал, что голос идёт по UDP, и сделал полноценный VPN sidecar, а не прокси.
Результат
Синхронный совместный просмотр через Telegram — фильмы, радио и живое ТВ в одном групповом звонке, управление с любого телефона.
Что я бы улучшил сейчас
Стриминг во время загрузки, продвинутое управление очередью и больше источников (роутинг Spotify/SoundCloud).