Skip to content

Latest commit

 

History

History
64 lines (52 loc) · 5.35 KB

File metadata and controls

64 lines (52 loc) · 5.35 KB

Lite Music Player (LMP) by paralax034

Легковесный десктопный клиент YouTube Music для Windows. Написан на .NET 10 и Avalonia UI. Главная цель проекта — экстремальная оптимизация ресурсов (CPU/RAM/Сеть). В отличие от официального PWA и Electron-клиентов, LMP потребляет в среднем 250 МБ RAM (в свернутом виде падает до 230 МБ). Буду рад продолжить искать методы сокращения потребления ресурсов.

⚡ Под капотом

  • Свой аудио-пайплайн: Отказ от LibVLC. Используется связка NAudio + Concentus (Opus) / SharpJaad (AAC) с ручным управлением PCM-буферами.
  • Умный стриминг: Треки грузятся чанками с упреждающим чтением. Мгновенный старт без ожидания полной загрузки.
  • Агрессивный кэш: Двойное кэширование (RAM + Диск) аудио, изображений и результатов поиска.
  • YT-Bypass: Встроенные C#-дешифраторы sig, n-token, poToken абсолютно реально! Обход bot-detection через ротацию клиентов (Android VR, Web,iOS). Множественные полифиллы для обмана ютуба.
  • Offline-First БД: SQLite + EF Core с поддержкой полнотекстового поиска (FTS5).
  • Просмотр 2000 треков в одном списке: Оптимизированный рендеринг UI-списков (виртуализация) с помощью новейшей Avalonia 12!

🛠 Текущий статус (Июнь 2026)

Проект в активной разработке. Базовый фундамент готов, идет наращивание UI-фич.

Что уже работает:

  • Воспроизведение треков напрямую с серверов YouTube
  • Многопоточное кэширование аудио и обложек
  • Поиск по базе YT Music и локальной библиотеке
  • Управление плейлистами с ютуба и локально (И их редактирование, синхронизация)
  • Очередь треков (pre-shuffle алгоритм при перемешивании)
  • Авторизация через Google Cookies (SAPISID)
  • Двусторонняя синхронизация лайков и плейлистов
  • История прослушиваний (Recently Played)
  • Уведомления внутри программы
  • Нормализация аудио и её полная настройка (подробнее в программе)
  • Мониторинг потребления ОЗУ
  • Поддержка нескольких аккаунтов

🗺 Roadmap (Ближайшие планы, я их честно выполню когда баги исправлю)

Статус Фича Описание
🔄 Радио (Mixes) Генерация бесконечного плейлиста "Похожее" на основе текущего трека.
📅 Глобальные хоткеи Управление плеером в фоновом режиме.
🚀 Эквалайзер Базовый 5-полосный EQ (интеграция в пайплайн NAudio).
🚀 Импорт плейлистов Парсинг и перенос ссылок из Spotify/Apple Music.
🚀 Главная страница с рекомендациями Персонализированная подборка треков, альбомов и артистов (Как любимый Youtube Music).

🔧 Сборка и запуск

Требования:

  • Windows 10/11 (x64)
  • .NET 11.0 SDK

Быстрый старт из консоли:

git clone https://github.com/Scream034/LMP.git
cd LMP
dotnet run --project LMP.csproj -c Debug

Скрипты сборки (в корне проекта):

  • build.bat debug — обычная сборка с Hot Reload.
  • build.bat optimized — Debug-сборка с оптимизациями компилятора (для тестов производительности).
  • build.bat release — релизная сборка.
  • build.bat publish — собирает Portable-версию (Self-Contained) в папку publish и пакует в .7z (не требует установленного .NET на ПК).
  • build.bat clean — очистка bin / obj.

📜 Заметка разработчикам

Если вы хотите помочь с разработкой или протестировать аудио-пайплайн: В Debug конфигурации нажмите F9 для открытия окна отладки (состояние кэшей, принудительный GC) или F10 для запуска интеграционных тестов дешифраторов без UI.