Об этом проекте
PearTune — это одноранговый музыкальный плеер для тех, кто хранит музыку на собственной машине. Библиотека остается на этой машине — Umbrel, NAS, старый настольный ПК — а телефон подключается к ней напрямую через зашифрованное одноранговое соединение. Ничего не выставляется в интернет, и файлы никогда не копируются на чужой сервер. README позиционирует проект вокруг той части самостоятельного хостинга музыки, с которой люди реально сталкиваются: удаленный доступ, то есть обратные прокси, проброс портов, VPN, динамический DNS или платные уровни удаленного доступа.
Архитектура состоит из двух частей. Хост работает на машине с музыкой, обслуживает библиотеку и хранит список устройств, которым разрешен доступ. Приложение работает на телефоне и один раз связывается с хостом при сканировании QR-кода. Соединения описываются как сквозное шифрование и взаимная аутентификация, поэтому хост идентифицирует вызывающее устройство через само соединение, а не через пароли или строки подключения.
Источники библиотеки выбираются в панели управления, а не редактированием compose-файла: существующий сервер Navidrome или другой Subsonic-API (используя его библиотеку, обложки и транскодирование), существующий сервер Jellyfin или обычная папка с музыкальными файлами, чьи теги PearTune читает сам (ID3, Vorbis, MP4, FLAC, включая встроенные обложки). Переключение источников сохраняет настройки каждого. Plex намеренно не поддерживается, и в README указана причина: сервер Plex можно читать только через облачную учетную запись plex.tv, чей токен истекает еженедельно.
Контроль доступа — по устройству и по человеку, с отзывом, который вступает в силу немедленно, включая середину песни. Временные гостевые пропуска истекают сами по себе через заданное время и показывают гостю обратный отсчет. В приложении пользователи могут просматривать по исполнителю, альбому, жанру или треку с обложками, искать по всей библиотеке, использовать бесшовное воспроизведение, перемешивание, повтор, таймер сна и фоновое/экранное аудио. Дополнительные функции: плейлисты, созданные на телефоне, плюс серверные плейлисты только для чтения, загрузка альбомов для офлайн-прослушивания, избранное и точки возобновления, которые следуют за пользователем между его устройствами (с передачей воспроизведения, а не дублированием), очередь запросов для допущенных людей, управление устройствами владельца с телефона и объединение нескольких библиотек в одно представление.
Статус распространения, как описано: 1.0 на iOS через App Store; Android в закрытом тестировании на Google Play, с APK на странице релизов и Zapstore в качестве временного решения; установщики хоста для macOS (подписанные и нотариально заверенные), Windows и Linux, Docker-образ и листинг в магазине приложений сообщества Umbrel. Сборка для Windows пока не имеет сертификата подписи, поэтому SmartScreen предупреждает при первом запуске. Start9 не является поддерживаемой целью, потому что StartOS запускает сервисы за контейнерным NAT, через который одноранговые соединения не могут пробиться, что вынуждает использовать ретрансляцию. Когда прямое соединение невозможно, необязательный ретранслятор PeerLoom пересылает уже зашифрованный трафик; он может видеть, что устройство общается с хостом и сколько данных передается, но не содержимое, и не хранит копий. Он включен по умолчанию и может быть отключен в Настройки > Соединение. Проект лицензирован под MIT, с шрифтом Manrope и пятью демо-треками CC0, записанными в THIRD-PARTY.md.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.