diff --git a/README.md b/README.md index f4e7a2c..1d6dfd9 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,17 @@ - Извлечение точных метаданных через официальные открытые каталоги и аудио-матчинг с YouTube Music CDN (Opus 160 / MP3 320k). - **Обход цензуры и региональных блокировок**: - Если трек в каталоге РФ заблокирован или зацензурен («запикан»), движок автоматически переключается на глобальные источники и скачивает полноценную **Explicit (18+)** версию. +- **Мультисервисный поиск & Предпрослушивание**: + - Параллельный поиск по **Яндекс Музыке**, **SoundCloud**, **YouTube** и **Apple Music**. + - Сквозное ранжирование по точности совпадения: лучшие совпадения сразу со всех платформ показываются вверху. + - Определение цензуры: бейджи `🔞 18+ Explicit` (без цензуры) и `⚠️ Clean` (зацензуренная версия). + - Встроенный аудиоплеер предпрослушивания с возможностью перемотки на лету (**HTTP Range 206**). + - Прямое скачивание в браузер или добавление в очередь сервера в 1 клик. +- **🌊 Моя Волна (Smart Wave V1)**: + - Автономный генератор персональных рекомендаций на основе профиля вкусов (звёздочки, скробблы, топ артистов из `navidrome.db`). + - Скользящий буфер на 25 треков в `/music/AI Recommendations/Моя Волна/` (~180 МБ). + - **Авто-ротация**: если трек лайкнут в Navidrome — переносится в основную библиотеку навсегда; если лежит более 7 дней без лайка — автоматически удаляется. + - Автоматическая генерация умного плейлиста `Моя Волна.nsp` и `Моя Волна.m3u8` для всех Subsonic клиентов. - **Интеграция с Navidrome**: - Организация каталога по стандарту: `/music/{Artist}/{Album}/{Track_Number} - {Title}.mp3`. - Автоматическое скачивание построчных караоке-текстов (`.lrc`). @@ -40,17 +51,23 @@ cp .env.example .env docker compose up -d --build ``` -Сервис будет доступен по адресу: `http://127.0.0.1:8005` (или через обратный прокси). +Сервис доступен по адресу: `http://127.0.0.1:8005` (или `https://music.qpid.pro/sync/`). --- ## 🔌 API Эндпоинты - `GET /` — Веб-интерфейс управления. +- `GET /api/search?q={query}` — Сквозной поиск по всем платформам с ранжированием. +- `GET /api/stream?url={url}` — Аудио-стриминг для плеера с поддержкой Range-запросов и перемотки. +- `GET /api/direct-download?url={url}` — Прямая отдача файла в браузер. - `POST /api/download` — Запуск задачи на скачивание по ссылке: ```json { "url": "https://music.yandex.ru/album/123/track/456" } ``` - `POST /api/sync/yandex-likes` — Запуск полной синхронизации понравившихся треков из Яндекс Музыки. +- `GET /api/wave/status` — Статус буфера «Моей Волны» и якорные артисты. +- `POST /api/wave/generate` — Генерация свежих рекомендаций и наполнение буфера Волны. +- `POST /api/wave/rotate` — Ротация буфера (перенос лайкнутых в библиотеку, очистка устаревших). - `GET /api/tasks` — Список активных задач и прогресс выполнения. - `GET /api/history` — История и статистика загруженной музыки. \ No newline at end of file