Sylvakru: кросс-платформенный музыкальный плеер для локальных библиотек
Sylvakru — это кросс-платформенный музыкальный плеер для локальных библиотек и самохостинг-медиа сервисов, созданный с использованием Flutter. Это решение подойдет тем, кто ищет альтернативу популярным музыкальным приложениям и хочет управлять своей музыкальной коллекцией без привязки к облачным сервисам.
Программа поддерживает различные операционные системы: Android, iOS, Windows, Linux и macOS, а также различные форматы аудио, включая MP3, FLAC, AAC и другие. Основные источники музыки — это локальные файлы, WebDAV, Navidrome и Emby. Важно отметить, что iOS-версия уже доступна в App Store, что упрощает доступ для пользователей Apple.
Чтобы запустить Sylvakru, тебе нужно установить Flutter и соответствующие зависимости (для Ubuntu/Debian, например, clang, lld и другие). Обрати внимание, что поддержка метаданных в некоторых форматах может быть ограничена, так как теги только читаются.
Проект Sylvakru (森露) представляет собой кроссплатформенный музыкальный плеер, который поддерживает локальные музыкальные библиотеки и сервисы с самохостингом. Он доступен на устройствах под управлением Android, iOS, Windows, Linux и macOS. Sylvakru позволяет организовать доступ к музыке, хранящейся локально на устройстве, а также к аудиофайлам, размещённым на таких платформах, как WebDAV, Navidrome и Emby.
Имя Sylvakru до этого было известно как Particle Music. Важной новостью является то, что версия для iOS теперь доступна в App Store.
Поддерживаемые форматы
Sylvakru поддерживает множество аудиоформатов и соответствующих метаданных. Вот некоторые из них:
- AAC (ADTS) - метаданные: ID3v2, ID3v1
- MP3 - метаданные: ID3v2, ID3v1, APE
- FLAC - метаданные: Vorbis Comments, ID3v2*
- WAV - метаданные: ID3v2, RIFF INFO
- Ogg Vorbis - метаданные: Vorbis Comments
* Некоторые теги могут быть доступны только для чтения из-за отсутствия официальной поддержки.
Зависимости и аудиообработка
Для работы с аудиозаписями проект использует библиотеки:
- audio_tags_lofty — для чтения и записи аудиотегов.
- media_kit — для воспроизведения аудио, основанный на mpv/FFmpeg.
Установка и запуск
Чтобы установить Sylvakru, необходимо сначала установить Flutter, следуя официальным инструкциям. Далее установки будут различаться в зависимости от операционной системы:
Ubuntu/Debian
sudo apt install clang lld cmake ninja-build pkg-config libgtk-3-dev liblzma-dev libsecret-1-dev
sudo apt install libmpv-dev
git clone https://github.com/AfalpHy/sylvakru.git
cd sylvakru
flutter doctor -v
flutter run
flutter run --release
flutter build linux
flutter build linux && ./generate_deb.sh
flutter build linux && ./generate_rpm.sh
Windows
git clone https://github.com/AfalpHy/sylvakru.git
cd sylvakru
flutter doctor -v
flutter run
flutter run --release
flutter build windows
macOS & iOS
brew install cocoapods
git clone https://github.com/AfalpHy/sylvakru.git
cd sylvakru
flutter doctor -v
flutter run
flutter run --release
flutter build macos
flutter build ios --release --no-codesign && mkdir -p Payload && cp -r build/ios/iphoneos/Runner.app Payload/ && zip -r sylvakru.ipa Payload && rm -rf Payload
Android
git clone https://github.com/AfalpHy/sylvakru.git
cd sylvakru
flutter doctor --android-licenses
flutter doctor -v
flutter run
flutter run --release
flutter build apk
flutter build apk --split-per-abi
flutter build apk --dart-define=TV=true
Ограничения
Sylvakru поставляется с некоторыми ограничениями, связанными с поддержкой тегов для определённых форматов. Например, для тегов, таких как APE и ID3v2, доступ к ним может быть только для чтения. Также, несмотря на кроссплатформенность, могут возникнуть различия в функционале и производительности на разных устройствах и операционных системах.
Для пользователей, заинтересованных в поддержке USB Exclusive Mode на Android, есть соответствующий форк проекта. Для более подробной информации и участия в проекте, можно обратить внимание на его репозиторий на GitHub.
Открыть на GitHub: AfalpHy/sylvakru →
RepoRadar