Skip to content
paralax034Public

About

The fast music player with low memory, cpu usage!

Topics

Resources

Stars

4 stars

Watchers

1 watching

Forks

Latest commit

 

History

410 Commits

Folders and files

Repository files navigation

Lite Music Player (LMP)

A high-performance, resource-efficient native YouTube Music desktop client for Windows.
Engineered with .NET 11, Avalonia UI 12.1, and Native AOT.

Runtime UI Framework Compilation Platform License

Download | Report Issue | Changelog


English | Русский


demo-hero.mp4

English

Overview

Most modern desktop music players are web applications packaged into heavy Chromium/Electron wrappers. They often consume 600 MB to 1.5 GB of RAM, launch slowly, and experience frame drops during navigation.

LMP is a fully native client built without web technologies. It compiles directly to machine code (Native AOT) and utilizes hardware-accelerated rendering, delivering instant UI responsiveness, minimal memory footprint, and native YouTube Music integration.


Performance Comparison

Metric Web / Electron Clients LMP (Native AOT) Impact
Cold Startup 4.0 – 8.0 s ~1.2 s Instant launch
Active Playback RAM 600 MB – 1.2 GB ~180 – 240 MB Up to 4x less memory
Minimized / Tray RAM 350 – 700 MB ~130 – 160 MB Zero background waste
Distribution Size 120 – 250 MB ~16 MB (.7z) Compact standalone build
UI Rendering 30 – 60 FPS (CPU bound) 60 – 144+ FPS Skia GPU Compositor

Core Features

Visual Customization and Dynamic Effects

  • Built-in theme presets: Paralax Purple, AMOLED Black, Classic Green, Ocean Deep, and more.
  • Real-time animated audio wave border reacting to currently playing tracks.
  • Customizable animation speeds and full control over accent colors.
feature-theming.mp4

EBU R128 / LUFS Loudness Normalization

  • Integrated volume normalization matching modern streaming standards.
  • Dual-mode processing (Spotify-like smooth attenuation vs. YouTube standard).
  • Configurable target LUFS threshold (-25 to -10 LUFS) and maximum gain limiting.
  • Custom non-linear volume curves (Quadratic / Linear / Cubic).
feature-audio.mp4

YouTube Cloud & Local Playlist Synchronization

  • Complete two-way sync for playlists, favorites (Liked Songs), and track metadata.
  • Smart conflict resolution engine (Merge, Duplicate, or Overwrite remote playlists).
  • Quick playlist creation with custom artwork, color tagging, and cloud backup.
  • Multi-account management with instant session switching.
feature-sync.mp4

Intelligent Streaming, Caching and Network Economy

  • Adaptive Chunk Streaming: Instant track playback without waiting for full audio downloads.
  • Two-Tier Storage Cache: Configurable disk and RAM quotas for audio files, album covers, and search indexes.
  • Offline Mode: Seamless local playback for cached and downloaded tracks.
  • Automated YouTube Cipher Bypass: Background decryption of sig, n-token, and poToken parameters with automatic client profile rotation.
feature-storage.mp4

Technical Architecture & Internal Pipeline (Click to expand)
  • Compilation Model: Fully trimmed Native AOT compilation via the .NET ILC compiler into an independent native executable without JIT overhead.
  • Audio Pipeline: Direct Windows WASAPI / WinMM audio output engine coupled with native Concentus (Opus) and SharpJaad (AAC) decoders feeding lock-free ring buffers (LockFreeRingBuffer).
  • MVVM Layer: Zero-reflection view models driven by compile-time Source Generators (CommunityToolkit.Mvvm).
  • Data Persistence: Raw ADO.NET SQLite database operations paired with high-speed binary serialization (MemoryPack).
  • Network Stack: Centralized NetworkManager providing connection pooling, DNS-over-HTTPS (DoH), and system/custom proxy support.
  • Tooling Ecosystem: Cross-platform build automation engine and zero-allocation static analysis toolset powered by Python 3.

Installation & Build

Portable Binary (Ready to run)

Download the latest LMP-Release-latest.7z from the dev release, extract to any folder, and launch LMP.exe.

Building from Source

Requirements:

  • Windows 10 / 11 (x64)
  • .NET 11.0 SDK
  • Python 3.10+ (for cross-platform build orchestration and tooling)
  • Visual Studio Build Tools (C++ Desktop Development workload for Native AOT linking)
# Clone the repository
git clone https://github.com/paralax034/LMP.git
cd LMP

# Run in debug mode (via cross-platform build engine)
python build.py debug
# or on Windows:
build.bat debug

# Build standalone Native AOT release
python build.py publish
# or on Windows / Unix:
build.bat publish
# ./build.sh publish


Русский

Описание проекта

Большинство современных десктопных музыкальных клиентов представляют собой веб-страницы, обёрнутые в тяжёлый Chromium/Electron. Они расходуют от 600 МБ до 1.5 ГБ оперативной памяти, долго запускаются и подтормаживают при навигации.

LMP (Lite Music Player) — полностью нативное десктопное приложение без использования веб-движков. Проект компилируется напрямую в машинный код (Native AOT) и использует аппаратный GPU-рендеринг, обеспечивая мгновенный запуск, стабильный фреймрейт и нативную интеграцию с YouTube Music.


Сравнение производительности

Параметр Web / Electron клиенты LMP (Native AOT) Преимущество
Холодный запуск 4.0 – 8.0 с ~1.2 с Мгновенная готовность
ОЗУ при воспроизведении 600 МБ – 1.2 ГБ ~180 – 240 МБ До 4 раз меньше памяти
ОЗУ в трее / фоне 350 – 700 МБ ~130 – 160 МБ Экономия ресурсов системы
Размер архива 120 – 250 МБ ~16 МБ (.7z) Компактный дистрибутив
Отрисовка UI 30 – 60 FPS (нагрузка на ЦП) 60 – 144+ FPS Плавный GPU Skia рендер

Основные возможности

Персонализация и живые визуальные эффекты

  • Встроенные цветовые темы: Paralax Purple, AMOLED Black, Classic Green, Ocean Deep и другие.
  • Реактивная волновая анимация рамки играющего трека в реальном времени.
  • Настройка скорости пульсации и полное управление акцентными цветами интерфейса.
feature-theming.mp4

Нормализация звука (LUFS / EBU R128)

  • Аппаратное выравнивание громкости между разнородными треками.
  • Режимы обработки: двухсторонний (как в Spotify) или только понижение (стандарт YouTube).
  • Выбор целевого уровня громкости (от -25 до -10 LUFS) и ограничение максимального усиления.
  • Настройка кривых затухания громкости (Квадратичная / Линейная / Кубическая).
feature-audio.mp4

Синхронизация плейлистов с YouTube Music

  • Двусторонний синк локальных плейлистов, лайков («Понравившиеся») и метаданных.
  • Разрешение конфликтов при импорте (Объединить треки, Создать копию, Пропустить).
  • Создание плейлистов с выбором обложки, цветового кода и сохранением в аккаунт.
  • Поддержка нескольких аккаунтов с быстрым переключением сессий.
feature-sync.mp4

Потоковое воспроизведение, кэш и экономия сети

  • Чанковый стриминг: Треки начинают звучать моментально без ожидания полной загрузки файла.
  • Двухуровневый кэш: Раздельные настраиваемые квоты на диске и в RAM для аудио, обложек и поиска.
  • Оффлайн-режим: Бесшовное воспроизведение сохраненных треков при отсутствии подключения.
  • Обход блокировок YouTube: Фоновая дешифровка токенов sig, n-token, poToken и динамическая ротация клиентских профилей для защиты от троттлинга скорости.
feature-storage.mp4

Техническая архитектура приложения (Нажмите, чтобы развернуть)
  • Модель компиляции: Native AOT сборка через ILC-компилятор .NET в единый независимый бинарный файл без участия JIT.
  • Аудио-пайплайн: Прямой вывод через WASAPI / WinMM и программные декодеры Concentus (Opus) / SharpJaad (AAC) с неблокирующими кольцевыми буферами (LockFreeRingBuffer).
  • Слой MVVM: Компилируемые привязки и Source Generators библиотеки CommunityToolkit.Mvvm без использования динамической рефлексии.
  • Хранилище данных: Прямое взаимодействие с SQLite через низкоуровневый ADO.NET и бинарную сериализацию MemoryPack.
  • Сетевой стек: Централизованный NetworkManager с пулом соединений, поддержкой DNS-over-HTTPS (DoH) и системных/кастомных прокси.
  • Инструментарий: Кроссплатформенный движок сборки и статические анализаторы без аллокаций памяти на базе Python 3.

Установка и сборка

Готовая сборка (Portable)

Скачайте архив LMP-Release-latest.7z из dev, распакуйте в любую папку и запустите LMP.exe.

Сборка из исходников

Требования:

  • Windows 10 / 11 (x64)
  • .NET 11.0 SDK
  • Python 3.10+ (для кроссплатформенного сборочного движка и утилит)
  • Visual Studio Build Tools (компоненты «Разработка классических приложений на C++» для компоновщика Native AOT)
# Клонирование репозитория
git clone https://github.com/paralax034/LMP.git
cd LMP

# Запуск в режиме отладки (через кроссплатформенный сборочный движок)
python build.py debug
# или на Windows:
build.bat debug

# Публикация нативного релиза (Native AOT)
python build.py publish
# или на Windows / Unix:
build.bat publish
# ./build.sh publish

Developed by paralax034 with <3

About

The fast music player with low memory, cpu usage!

Topics

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages