Specs

Formats and requirements

Vesqen plays local lossless and compressed audio on Android 9.0 or later. Format support depends on your phone’s decoders; strict USB DAC output has separate requirements. These details describe the current release; check each release’s notes for changes.

Requirements

Android
9.0 or later
Strict USB output
Android 14 or later, a phone that opens the bit-perfect path, and a USB DAC with a matching mixer profile
Network
Only for optional usage statistics, device report uploads and update checks; playback and the library never use it

Audio formats

Lossless
FLAC, ALAC, WAV, AIFF; 16, 24 and 32-bit integer PCM
Lossy
MP3, AAC, Ogg Vorbis, Opus
Extensions
.flac .alac .m4a .wav .aif .aiff .mp3 .aac .ogg .opus
Decoding
Android’s and the phone’s own decoders through Media3, so some phones may not play every format

Output

System output
Android’s normal output; works with the speaker, wired headphones, USB and Bluetooth
Strict USB output
Android 14’s official bit-perfect mixer API; stops playback with a reason if a condition fails
Chain log
Records the source file, decoder, app processing, AudioTrack and route while playing

Library

Sources
Android’s media library, or folders you add
Browse
Albums, artists, folders, genres and playlists
Sort
Title, artist, album, recently added, recently played, most played
Search
By title, artist or album
Play
Queue, shuffle and repeat, favorites

Install package

Release
APK on GitHub Releases; the app finds new versions and installs them after you confirm. Google Play once Google approves it
Signing certificate SHA-256
74:3E:96:FC:B7:1D:C5:81:88:49:68:19:A0:01:A2:7C:D8:8D:90:91:62:C5:AE:92:9C:87:BF:A2:9A:B8:62:93
Languages
English, Simplified Chinese, Traditional Chinese, Japanese
License
Apache 2.0; the source code is public on GitHub

What each chain value means: how it works