If you organize your music in folders rather than letting an app index a "library", mpz is the folder player for you. A free, open-source, native C++/Qt 6 music player for large local
collections on Linux, macOS and Windows. No indexing step: just folders, and playlists you build from them by middle-clicking.
The 3-column UI shows the directory tree, the list of playlists, and tracks from the selected playlist. Middle-click a folder and it becomes a playlist.
No silence between tracks, including single-file albums split by a CUE sheet. Decoded audio is buffered in memory (100 MB by default, adjustable in
Settings → Advanced), which also makes seeking instant. Qt 6 only.
Volume normalization, so albums mastered at different levels play equally loud. Existing ReplayGain tags are read as they are, and mpz can measure tracks itself: the current playlist, the
selection or the whole library, analysed in the background. Results go either into a sidecar database, leaving your audio files untouched, or into tags written into the files. Track or
album gain, with a preamp and clipping prevention. Qt 6 only.
Streams in
m3u,
m3u8 and
pls playlists play directly. There is also a dedicated Radio library with built-in stations from
SomaFM, Radio Paradise, FIP, France Musique and Nightride FM, plus your own. Stream playlists still play
directly, or import into the library. HTTPS, a radio row view, and stream titles from IceCast's
status-json.xsl are supported. The playback log keeps the history of what
played.
OS media integration: MPRIS on Linux (remote control, e.g. via
KDE Connect), SMTC and taskbar controls on Windows, Now Playing and native menu/Dock on macOS, plus a
system tray with playback controls.
Cover art from tags or folder images, and lyrics embedded in tags or in
.lrc/.txt sidecar files. Both can also come from online sources, opt-in and off by default: nothing is fetched until you enable a provider in
Settings → Online lyrics & covers. Covers come from Deezer, Apple Music or
Cover Art Archive, lyrics from
LRCLIB, NetEase, QQ Music or Lyrics.ovh. Both show in the Track Info dialog or in dockable panels that follow
the playing track. Tags are read and written via
TagLib
(ID3v2, Vorbis Comment, MP4, APE), editable in the built-in tag editor, album artist and disc number included, as columns and sort keys too. Audio formats go through your system's codecs
(QtMultimedia with the GStreamer or ffmpeg backend on Linux, native backends on macOS and Windows): FLAC, MP3, Ogg Vorbis, Opus, Speex, AAC, ALAC, M4A/M4B/MP4, WAV, AIFF, WMA/ASF, APE,
WavPack, Musepack, TTA, MKA, DSD, Shorten.
The dynamic range meter gives a per-track and album DR log in the foobar2000 Dynamic Range Meter format, from the playlist context menu or the track info dialog (Qt 6 only). The seekbar
can show the track waveform (off by default in Settings → Interface), and the output device button shows the selected device name.
Drag and drop files and folders from your file manager, reorder tracks within a playlist by dragging, and drag folders, radio stations and tracks between the three panels. Playback order
per playlist and global: sequential, random, or no-loop. Track sorting presets. Global media-key hotkeys and a keyboard shortcuts dialog where every shortcut is editable. Update check on
Windows, macOS and the Linux AppImage. UI in English, Russian, Japanese and Serbian.
Feature list
- Folder player: plays straight from your folders, no indexing step
- 3-column UI: directory tree, playlists, tracks
- Middle-click a folder to make it a playlist
- Drag and drop from the file manager, and between the three panels
- Gapless playback, with instant seeking
- Equalizer: 10-band graphic and parametric, AutoEq presets, per output device
- ReplayGain: reads or measures gain, stored in a sidecar database or in tags, with preamp and clipping prevention
- Output device switch
- Internet radio: station library, HTTPS, IceCast stream titles
- CUE sheets, gapless on single-file albums
- Dynamic range meter in the foobar2000 DR format
- Waveform in the seekbar
- OS media integration: MPRIS, SMTC and taskbar, Now Playing and Dock, system tray
- Global media-key hotkeys, every shortcut editable
- Experimental mpd client mode
- m3u, m3u8 and pls playlists, including radio streams
- Playback order per playlist and global: sequential, random, no-loop
- Track sorting presets
- Cover art and lyrics from tags, folder images and .lrc/.txt sidecars, plus opt-in online sources
- Tag editor via TagLib: ID3v2, Vorbis Comment, MP4, APE
- Formats via system codecs: FLAC, MP3, Ogg Vorbis, Opus, Speex, AAC, ALAC, M4A/M4B/MP4, WAV, AIFF, WMA/ASF, APE, WavPack, Musepack, TTA, MKA, DSD, Shorten
- Playback log
- Update check on Windows, macOS and Linux AppImage
- UI in English, Russian, Japanese, Serbian
- Native C++/Qt 6
- Follows your desktop theme
- Linux, macOS, Windows
What is mpz?
A free and open-source folder player for large local music collections, built with C++ and Qt. It treats your folder structure as the library, with a 3-column UI for the directory tree,
playlists and tracks.
Is mpz a folder player?
Yes. It plays music straight from your folder structure instead of importing it into a database. Middle-click any folder to turn it into a playlist. Your directory tree is the library,
with no global indexing step.
Is mpz a Foobar2000 alternative?
Partly. mpz is inspired by Foobar2000, especially its "Album list", but it is not a clone: a faithful cross-platform clone is neither feasible nor the goal. It keeps the features the
author has used daily for years, in a native folder-based player for Linux, macOS and Windows, where Foobar2000 is Windows-only.
Can mpz handle very large music collections?
Yes, that is what it is built for. Your folder structure is the library, so nothing gets scanned into a database before you can play anything.
What platforms does mpz support?
Linux, macOS and Windows. On Linux, install the native packages (openSUSE, Debian, Fedora, Ubuntu, RedHat, Mageia, Arch, Manjaro) for x86_64 and aarch64, or from the AUR, Flathub (flatpak install flathub org.mpz_player.mpz) or an AppImage. On Windows, take a release from GitHub: 64-bit x64, native ARM64 (Windows on ARM) or legacy 32-bit. On macOS, take the .dmg from GitHub releases. That
build is unsigned, so Gatekeeper blocks it on first launch: either remove the quarantine flag with xattr -dr com.apple.quarantine "/Applications/mpz music player.app", or
click Open Anyway under System Settings → Privacy & Security. Building from source works on any platform with Qt and a C++ compiler.
Is mpz available as a Flatpak?
Yes, on Flathub as org.mpz_player.mpz. Install it with
flatpak install flathub org.mpz_player.mpz, or from your desktop's software centre. It works on any distribution, but prefer the native packages if your distro is supported.
Does mpz have a mobile app (Android or iOS)?
No. mpz is a desktop player for Linux, macOS and Windows; there is no Android or iOS version. On Linux you can control playback from a phone over MPRIS, for example via
KDE Connect.
Is mpz free?
Yes. mpz is free and open-source software, licensed under the GNU GPL v3.
Does mpz support streaming services?
No, mpz focuses on local music files. Internet radio works (a radio library with built-in stations, plus m3u, m3u8 and pls stream playlists), but
streaming services are not supported.
Does mpz play internet radio?
Yes, and always has: stream playlists in m3u, m3u8 and pls play like any other playlist. Version 2.1.0 added a radio library with built-in stations
from SomaFM, Radio Paradise, FIP, France Musique and Nightride FM plus your own, HTTPS, a radio row view, and stream titles from IceCast's status-json.xsl. Stream playlists
still play directly, or import into the library.
What audio formats does mpz support?
FLAC, MP3, Ogg Vorbis, Opus, Speex, AAC, ALAC, M4A/M4B/MP4, WAV, AIFF, WMA/ASF, APE, WavPack, Musepack, TTA, MKA, DSD (DSF/DFF) and Shorten, played through your system's codecs
(QtMultimedia with the GStreamer or ffmpeg backend on Linux, native backends on macOS and Windows). Playlists and radio streams: m3u, m3u8, pls.
Since playback uses system codecs, exact format availability depends on what is installed.
Does mpz support gapless playback?
Yes, anywhere in your library. Decoded audio is buffered in memory (100 MB by default, configurable in Settings → Advanced), which also makes seeking instant. Qt 6 builds only.
Does mpz have an equalizer?
Yes. 10-band graphic and full parametric modes, importing presets from AutoEq, SquigLink and similar sources. On/off and preset are per output device ("Default" counts as one), the
presets themselves are shared. The EQ follows the device in use, so unplugging headphones switches it along with the audio. It runs on the gapless engine, so gapless has to be enabled.
Qt 6 only.
Does mpz support ReplayGain?
Yes. mpz reads existing ReplayGain tags and can measure tracks itself: the current playlist, the selection, or the whole library, analysed in the background. Results are stored either in
a sidecar database, which leaves the audio files untouched, or written into the files as tags. Track or album gain, with a preamp and clipping prevention. Qt 6 only.
Does mpz support CUE sheets?
Yes, including gapless playback of single-file albums split by a CUE sheet.
Does mpz measure dynamic range (DR)?
Yes. Select tracks and pick "Dynamic range" in the playlist context menu, or open it from the track info dialog, to get a per-track and album DR log in the foobar2000 Dynamic Range Meter
format. Qt 6 only.
What languages is mpz available in?
The interface is translated into English, Russian, Japanese and Serbian, and follows your system language by default.
Can mpz act as an mpd client?
Yes, as an experimental mode. You can add an mpd server as a library folder. There are caveats: see the
mpd impedance mismatch section of the README.
Does mpz support lyrics?
Yes. Lyrics can be embedded in tags, loaded from .lrc or .txt sidecar files, or fetched online from
LRCLIB, NetEase, QQ Music or Lyrics.ovh. Online lookup is opt-in: nothing is fetched until you enable a
provider in Settings → Online lyrics & covers. Lyrics show up in the Track Info dialog or in a dockable Lyrics panel.
Can mpz download missing cover art?
Yes, once you turn it on. Cover art comes from tags or folder images first, and when neither has one mpz can look it up online through Deezer, Apple Music or
Cover Art Archive. These sources are opt-in and off by default: enable and reorder them in
Settings → Online lyrics & covers, where downloaded covers can also be cleared.
Can mpz edit tags?
Yes, there is a built-in tag editor for track metadata (title, artist, album and so on) on the formats TagLib supports: ID3v2, Vorbis Comment, MP4 and APE.
Why is it called mpz?
The "z" reflects a no-nonsense approach: no clutter, no distractions.