agersant / polaris

Polaris is a music streaming application, designed to let you enjoy your music collection from any computer or mobile device.
MIT License
1.45k stars 83 forks source link

ReplayGain support #131

Open jansol opened 3 years ago

jansol commented 3 years ago

Counts as a must-have feature for me. With the wide variety of styles in my library a plain volume setting isn't sufficient as files can have very different loudness (especially in shuffle all mode which I use a lot).

The usual "auto" behavior for replaygain is to use track gain when shuffle is on and album gain when it's not. Most players also allow users to choose auto, always track gain and always album gain.

The easiest way to handle this is probably to modulate the user-set playback volume with the track/album gain found in the file's tags. I believe youtube is doing something like this, considering that they show the set/adjusted volume in Stats for Nerds.

jansol commented 3 years ago

Moved the playback side of things to polaris-web, since that's where it belongs.

Now scanning replaygain for files that are missing the relevant tags would be relevant to this repo and could be nice but I'd rather not have polaris write anything to my music files without my explicit approval (I have beets taking care of all tagging). Keeping that info in the db would be one option if the user doesn't allow writing new tag data.

agersant commented 3 years ago

Agreed this would be a valid addition. I do think Polaris should only worry about reading existing replay gain tags, writing metadata has always been left to users' preferred solutions.