2023-05-23 09:28:20 -04:00
|
|
|
# Emmental
|
|
|
|
Emmental is a music player built using Python, GStreamer, and GTK.
|
|
|
|
It tries to make it really easy to listen to your music, the default
|
|
|
|
"Collection" playlist contains all your music files and is a fallback when
|
|
|
|
other playlists run out of tracks.
|
2019-01-24 09:35:41 -05:00
|
|
|
|
2023-05-23 09:28:20 -04:00
|
|
|
## Features
|
|
|
|
* MPRIS2
|
|
|
|
* ReplayGain
|
|
|
|
* Gapless playback
|
2023-06-01 11:14:40 -04:00
|
|
|
* Background listening mode
|
2023-05-23 09:28:20 -04:00
|
|
|
* Automatically pause after a user-configured number of tracks
|
|
|
|
* Playlist creation and management
|
|
|
|
* Automatic playlists based on Artists, Albums, Genres, Decades, and Years
|
|
|
|
* Multiple library path support
|
|
|
|
* Plays all audio formats supported by GStreamer
|
2023-06-01 11:14:40 -04:00
|
|
|
* Renamed and updated tracks detection (using MusicBrainzIDs)
|
2023-05-23 09:28:20 -04:00
|
|
|
|
|
|
|
## Dependencies
|
|
|
|
* Python3
|
|
|
|
* dateutil
|
|
|
|
* gobject
|
|
|
|
* musicbrainzngs
|
|
|
|
* mutagen
|
|
|
|
* pyxdg
|
|
|
|
* GStreamer
|
|
|
|
* GStreamer good plugins (optional)
|
|
|
|
* GStreamer bad plugins (optional)
|
|
|
|
* GStreamer ugly plugins (optional)
|
|
|
|
* GTK4
|
|
|
|
* xdg-user-dirs-gtk
|
|
|
|
* Libadwaita
|
|
|
|
|
|
|
|
## Installing
|
|
|
|
Running `make install` will install Emmental to `/usr/local` by default.
|
|
|
|
This can be changed during install:
|
|
|
|
```
|
|
|
|
PREFIX=/usr make install
|
|
|
|
```
|
|
|
|
|
|
|
|
ArchLinux users can also install Emmental though the
|
|
|
|
[AUR](https://aur.archlinux.org/packages/emmental)
|
|
|
|
|
|
|
|
## Q & A
|
|
|
|
### 1. What's with the name? Why 'emmental'?
|
|
|
|
Emmental was the cheese used in a
|
|
|
|
[late-2018 experiment](https://www.smithsonianmag.com/smart-news/hip-hop-and-mozart-improve-flavor-swiss-cheese-180971721/)
|
|
|
|
to learn if playing music while a cheese ages has an impact on flavor
|
|
|
|
(spoiler alert: it did). I have a habit of naming projects and computers after
|
|
|
|
cheeses, so when I started this project I named it after the cheese used in
|
|
|
|
this experiment.
|
|
|
|
|
|
|
|
### 2. How do I edit my tracks?
|
|
|
|
Emmental doesn't have a built-in tag editor but it can detect when track
|
|
|
|
files have been edited in an external program. I highly recommend using a
|
|
|
|
dedicated tag editing program like
|
|
|
|
[MusicBrainz Picard](https://picard.musicbrainz.org/), it does a much better
|
|
|
|
job at tag editing than I ever will.
|
|
|
|
|
|
|
|
### 3. What is the ReplayGain "Decide automatically" option?
|
|
|
|
ReplayGain has two operating modes, "track" and "album", that the user can
|
|
|
|
select between. Emmental builds on this and can automatically choose between
|
|
|
|
the two based on the source playlist for a given track. This means if the
|
|
|
|
current track comes from an Album playlist, ReplayGain will use "album mode"
|
|
|
|
and if it comes from other playlists it will use "track mode".
|