radiOLA — онлайн-радио с распознаванием треков
Android-приложение, опубликовано в RuStore: сотни радиостанций и бэкенд, который знает, что сейчас играет в эфире
Посмотреть вживую (откроется в новой вкладке)Задача
Слушателю радио нужно видеть, какой трек играет, в одно касание найти его в своём музыкальном сервисе и вернуться к истории эфира.
Что сделали
- Каталог станций с фильтрами по тегам, поиском и избранным
- Текущий трек в реальном времени по WebSocket и история эфира
- Обложки и данные о треках из музыкальных баз, чарты
- Поиск текущего трека в восьми музыкальных сервисах одним нажатием
- Фоновое воспроизведение с управлением с экрана блокировки и гарнитуры, таймер сна, эквалайзер, виджет
- Вход по magic-link и синхронизация настроек
Инженерные решения
«Сейчас в эфире» из 10+ источников
- «Что играет» собирается из более чем десяти источников: отдельные парсеры для радиосетей и чтение ICY-метаданных прямо из аудиопотока
- Распознавание трека по фрагменту эфира, когда станция не отдаёт метаданные
- Kotlin
- Jetpack Compose
- Media3 / ExoPlayer
- Room
- Hilt
- NestJS 11
- Prisma
- PostgreSQL
- Redis / BullMQ
- Socket.IO