axel10/vynody
A visually appealing and feature-rich Flutter music player - axel10/vynody
132 stars · 12 forks
README
Vynody
English | 简体中文
Vynody is a visually refined, feature-rich, and lightweight cross-platform local music player. Built with Flutter for a sleek modern UI and integrated with platform-specific native audio backends, it delivers a unified experience while unlocking low-level hardware audio capabilities across all platforms. Why Vynody? I am both a music enthusiast and a software developer. For a long time, the local music player ecosystem across different platforms has been severely fragmented—either plagued by dated UIs, bloated resource usage, or jarring inconsistencies across devices. To craft a clean, pure, and cohesive listening experience, I decided to build this application. Vynody is developed using a modern Vibe Coding (AI-assisted development) workflow. After months of intensive iterations and real-device testing, Vynody offers solid stability, maturity, and performance for daily use. Beyond fast media library indexing, lightweight system footprints, and smooth local playback, Vynody brings unique and advanced features rarely found in traditional players:
Karaoke-style word-by-word synced lyrics and AI timeline generation Serverless cross-device LAN syncing for music tracks, playlists, and lyrics Customizable themes and progress bar visual styles Deep native platform optimization across Windows, macOS, Linux, iOS, and Android.
Downloads
Platform Channel Note / Link
Windows Microsoft Store / GitHub Microsoft Store · GitHub Releases (Free)
macOS Mac App Store / GitHub Mac App Store · GitHub Releases (Free)
iOS Apple App Store Download on App Store
Android GitHub Releases Download APK (Free)
Linux GitHub Releases GitHub Releases (Free)
Screenshots
Features
Full Cross-Platform Native Experience: Supports Windows, macOS, Linux, iOS, and Android with platform-optimized native audio engines. Windows WASAPI Exclusive Mode: Direct, bit-perfect audio output bypassing system mixers. Fast Local Library & Instant Indexing: Intelligent scanning with millisecond-level incremental updates and ultra-low CPU/RAM usage. Audio Fingerprinting & Tag Completion: Powered by AcoustID and MusicBrainz to identify unknown tracks and automatically fill metadata & high-res artwork. Comprehensive Lyric Capabilities:
LRCLIB Integration: Instant lyric search and automatic matching. AI-Powered Generation: Generates precise timestamped lyrics with word-by-word (Karaoke) sync and timeline corrections. Multilingual Translation: One-click translation with dual-language display.
Serverless Local Network (LAN) Sync: Auto-discovery of local instances to seamlessly transfer music files, bidirectionally sync Playlists, lyric caches, and translation databases, plus a browser Web interface for instant uploads/downloads. Universal Remote Music Libraries:
Streaming Servers: Connect to self-hosted Navidrome and Jellyfin instances. Remote Storage: Mount WebDAV and SMB shares with on-demand chunked header parsing to immediately display tags without full song downloads.
Immersive Visuals & Desktop Interaction: Real-time audio spectrum, waveforms, dynamic album art color extraction, multiple progress bar styles, desktop queue drawer, and global shortcuts. Sleep Timer: Countdown timer for automatic bedtime playback shutoff.
Architecture & Audio Engines Vynody uses Flutter across all platforms for UI presentation and system interaction, paired with platform-tailored native audio backends:
Platform Audio Engine Implementation
Windows Audio Core (Rust) Rodio backend integrated with FFmpeg decoding; supports WASAPI Exclusive mode
Linux Audio Core (Rust) Rodio backend integrated with FFmpeg decoding
macOS Audio Core (Rust) Rodio backend, AVFoundation decoding prioritized with FFmpeg fallback
iOS Audio Core (Rust) Rodio backend, AVFoundation decoding prioritized with FFmpeg fallback
Android ExoPlayer (Media3) Leverages Android Audio Offload for hardware-level low power consumption
Core Tech Stack & Integrations:
UI & Architecture: Flutter 3.x + Riverpod state management Database: SQLite + Drift for high-speed local indexing and caching Remote Services & Protocols: LRCLIB (lyrics), Navidrome / Jellyfin (streaming), WebDAV / SMB (remote storage & on-demand metadata parsing) Audio Intelligence: AcoustID (fingerprints), MusicBrainz (metadata), configurable AI models (lyrics & translation) Networking: UDP broadcast discovery + embedded HTTP sharing server
Development & Setup Prerequisites
Flutter SDK (3.x) Rust toolchain (with cargo) Native build toolchain for your target OS (Xcode / Visual Studio / Android SDK & NDK)
Cloning git clone --recurse-submodules https://github.com/axel10/vynody cd vynody
💡 If you cloned without --recurse-submodules, run git submodule update --init before building.
Running flutter pub get flutter run -d <device-id> Contributing Issues and Pull Requests are welcome! Before submitting code, please ensure tests pass: flutter test License Licensed under the GPL-3.0 License.


