Музыкальный плеер который не просит подписку и дружит с Rust

09 апр 2026
2,239
213
24
2 месяца

Периодически я ловлю себя на мысли, что современные музыкальные стриминги превратились в раздутые комбайны. Они навязывают подкасты, требуют ежемесячную плату и в любой момент могут отозвать лицензию на ваш любимый альбом. На днях наткнулся на интересный проект BloomeeTunes, который пытается усидеть на двух стульях: дает удобство стриминга и оставляет контроль над медиатекой в руках пользователя.

Что это такое и зачем оно нужно

Bloomee — это опенсорсный плеер, собранный на Flutter. Казалось бы, очередное приложение на Dart, но здесь есть любопытный нюанс. Разработчик подружил UI-фреймворк Google с Rust для обработки логики плагинов. И это, пожалуй, главная фишка проекта.

Идея простая: само приложение — это пустая оболочка с красивым интерфейсом. Вы подключаете к нему внешние модули (плагины), и плеер начинает тянуть музыку из сети. При этом ваши локальные MP3-файлы, пылящиеся в папках на диске, никуда не деваются. Они живут в общем плейлисте рядом с треками из интернета.

Плагины на Rust и безопасность

Обычно системы плагинов в мобильных или десктопных плеерах — это головная боль для безопасности. Здесь автор решил использовать формат .bex. Это защищенная система плагинов, работающая на бэкенде из Rust.

Реклама

Что это дает нам как пользователям? Во-первых, скорость работы. Во-вторых, изоляцию. Плагин не может просто так залезть в ваши личные файлы или украсть пароли, он жестко ограничен API плеера. При этом система умеет обновлять эти модули автоматически. Если какой-то источник музыки изменил способ выдачи данных, плагин обновится, и вам не придется переустанавливать весь плеер.

Чем Bloomee радует в ежедневном использовании

В плеере есть несколько функций, которые редко встретишь в любительских проектах такого уровня.

Умная замена битых ссылок

Знакомая ситуация: вы собрали идеальный плейлист в стриминге, а через неделю половина треков заблокирована. В Bloomee встроена фича Smart Replace. Если плеер понимает, что ссылка на поток больше не работает, он автоматически пытается найти рабочую альтернативу через установленные плагины.

Караоке и тайминги

Тексты песен здесь не просто полотно текста. Плеер поддерживает синхронизированные по времени лирики. Если тайминг немного сбит (бывает, что текст бежит впереди звука), можно вручную выставить смещение прямо в окне воспроизведения.

Скробблинг и интеграции

Для тех, кто до сих пор по привычке ведет статистику прослушиваний, есть поддержка Last.fm. Причем она работает хитро: если у вас пропал интернет, плеер кэширует историю прослушиваний локально и «выплевывает» её в сервис, как только сеть появится. Также завезли Discord Rich Presence — друзья будут видеть, какой редкий инди-рок вы сейчас слушаете.

Взгляд на внутренности

Если вы разработчик, то код проекта может быть интересен как пример реализации паттерна BLoC в связке с тяжелыми нативными вставками.

Для вывода звука используется библиотека just_audio. Это стандарт де-факто для Flutter, но здесь она дополнена кастомным эквалайзером и механизмом кроссфейда (плавного перехода между песнями).

Интерфейс выглядит чисто, без лишнего визуального шума. Автор активно использует возможности Flutter для создания адаптивного дизайна: приложение одинаково адекватно смотрится и на Android, и на Windows.

Стоит ли переходить на него

Я бы не сказал, что Bloomee прямо сейчас заставит вас удалить Spotify или Яндекс Музыку. Это скорее инструмент для тех, кто ценит приватность и хочет иметь один плеер для всего одновременно.

Проект стоит попробовать, если:

  • У вас большая коллекция музыки в файлах, но хочется иногда слушать что-то новое из сети.
  • Вы устали от рекламы и алгоритмов, которые подсовывают одно и то же.
  • Вам нравится идея модульности, где вы сами решаете, откуда плеер будет брать контент.

Скачать его можно на GitHub в разделе релизов или через F-Droid (репозиторий IzzyOnDroid). Сейчас доступны версии для Android, Windows и Linux. К сожалению, автор предупреждает о появлении фейковых сайтов проекта, так что лучше брать APK напрямую из проверенных источников.

Проект живой, автор активно отвечает на тикеты и приглашает контрибьютить. Если вы только начинаете изучать Flutter, Bloomee — отличный пример того, как построить приложение с использованием чистой архитектуры и BLoC. Можно заглянуть в код, чтобы подсмотреть, как реализован импорт плейлистов из JSON или работа с нативными медиа-контроллерами системы.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.