Site icon AppTractor

BeatStream — стриминг музыки с собственным Python-сервером

BeatStream — Android-приложение для стриминга музыки, внутри которого работает собственный Python-сервер.

Самое интересное здесь то, что вместо «тонкого» клиента, взаимодействующего с удаленным сервером, весь бэкенд работает ПРЯМО ВНУТРИ APK-файла. С помощью Chaquopy в приложение встроен сервер на Python + Flask, а компонент WebView обращается к нему по адресу 127.0.0.1. Таким образом, приложение полностью автономно и не требует внешнего сервера.

Для работы со звуком используются нативные средства Android: воспроизведение реализовано через ExoPlayer и MediaSession. Благодаря этому музыка продолжает играть при выключенном экране или переключении на другие приложения, а в панели уведомлений доступны элементы управления (воспроизведение/пауза, следующий/предыдущий трек, полоса прокрутки). Веб-интерфейс выполняет роль пульта управления и синхронизируется с нативным плеером.

Функции:

Технологический стек: Python/Flask, Chaquopy, ExoPlayer/media3, одностраничное приложение (SPA) на чистом JavaScript.

BeatStream на GitHub: https://github.com/dereeqw/BeatStream
Платформа: Android
⭐️: 2
Exit mobile version