200.5 KiB GUI.
The development Windows executable includes its icon and Opus decoder. Windows system services handle audio output and the window; the player brings its own assembly decoders.
Windows x86-64 · Assembly · MIT
Lev's Assembly Media Player.
A small audio player with handwritten assembly decoders and a quiet, compact interface. Built to use fewer resources. Growing toward the media you play in mpv.
Source builds: WAV, AIFF/AIFC, FLAC, MP3, Vorbis and development Opus. Downloaded v0.3.0 includes WAV, FLAC, MP3 and Vorbis.
LAMP / 001
The development Windows executable includes its icon and Opus decoder. Windows system services handle audio output and the window; the player brings its own assembly decoders.
A separate decoder feeds a PCM queue. Event-driven WASAPI playback absorbs short scheduling stalls, with no decoder work in the audio refill path.
Drop a file, pause with Space, seek with the arrows. Controls fade from view during playback, and redraw timers stop while idle or paused.
Source builds play Ogg/Opus families 0 and 1 with RFC 8251 updates. Family 1 layouts with up to eight speaker channels are downmixed to stereo; 112 modern-libopus file comparisons pass. All 120 official elementary-decoder vector checks pass. Native FLAC adds 1–8 channels at 4–32-bit depths, with speaker-mask-aware stereo downmix and 404 verified files. WAV adds 1–8 channels, valid PCM precision and float64, with 965 verified files. RF64/BW64 audio framing adds 64-bit lengths, with 538 container files and 16 sparse large-file fixtures; ADM rendering remains unfinished. AIFF/AIFC adds signed PCM and float audio, ordered Core Audio layouts and 1,977 verified files. Vorbis adds 1–255 native channels, documented stereo output and 797 verified files; native surround routing remains unfinished. MP3 retains its documented mono/stereo profile. WAV and AIFF/AIFC seek directly, native FLAC searches validated frames, and MP3, Vorbis and Opus use sparse seek indexes. Video, subtitles and streaming are not yet available. Read exact coverage and limits ↗
The goal is to support everything relevant that mpv supports: formats, playback, rendering, subtitles, streaming and automation, while keeping the runtime small and measuring every performance claim.
Ogg family 0 playback and all 120 official vector checks pass.
Indexed seeking and Opus multistream stereo downmix are in source. Playlists, broader multichannel support and device changes remain.
RF64/BW64 and AIFF/AIFC audio are in source. AAC, ALAC and broader containers remain.
Modern video formats, hardware decode and efficient presentation.
Timed text, styled subtitles, HTTP, HLS and DASH.
Configurable controls, IPC and the relevant long tail of media.
The prototype has reference PCM comparisons, bounded stress tests and headless playback measurements against mpv and VLC on the same machine. Startup/seek observations and playback, paused and idle CPU/RAM are recorded; wakeups, shipping-GUI performance and audible latency remain unmeasured. Buffering reduces the risk of stutters; no player can guarantee uninterrupted audio through arbitrary system or driver stalls.
Read the measurements and their limits ↗