Open source music player written in Python; not yet ready for general consumption.
NOTE: This is alpha software. Configuration and other data may not be preserved across code changes. Functionality may change or disappear without warning.
- Plays local audio files.
- Supports ReplayGain.
- Supports gapless playback.
- Runs on Linux and macOS.
- Focus primarily on album playback, but offer track-focused playback options too.
- Easily handle a music library with about 10k files.
- Handle a variety of metadata gracefully. E.g., track titles longer than 255 code points, non-square album art, and bidirectional text.
- Internationalize and localize the app as much as possible.
- last.fm scrobbling
- MPRIS support
- Playback of remote streams
- MusicBrainz integration
- Easy to install packages on Linux and macOS
- Run on Windows.
- Easily handle a music library with about 100k files.
- Music library management. There are other good tools for this, e.g., MusicBrainz Picard and Ex Falso.
- Almost all code should be tested:
- Static analysis is great for catching bugs, so we use pylint and pytype.
- The code mostly follows the Google Python Style Guide.
- YAPF makes it easier to code without needing to think about formatting too much, so we use it.
sudo apt install \
gir1.2-gst-plugins-base-1.0 \
gir1.2-gstreamer-1.0 \
gir1.2-gtk-3.0 \
gstreamer1.0-plugins-good \
libgirepository1.0-dev \
python3-frozendict \
python3-gi \
python3-jinja2 \
python3-mutagen
This is not an officially supported Google product.