Discussion:
Replay Gain
Róbert Kohányi
2011-02-19 19:18:29 UTC
Permalink
Hi,

I'd like to know in what kind of manner cmus supports replay gain? It reads
the replay gain information from tags (like foobar) or calculates it
on-the-fly?

I've read through the cmus manual and I see that it supports replay gain,
but by reading the manual and searching the mailing-list archives on this I
didn't *gain* useful information regarding my question.

Thanks!

Regards,
Kohányi Róbert
Gregory Petrosyan
2011-02-19 19:35:31 UTC
Permalink
On Sat, Feb 19, 2011 at 10:18 PM, Róbert Kohányi
Post by Róbert Kohányi
Hi,
I'd like to know in what kind of manner cmus supports replay gain? It reads
the replay gain information from tags (like foobar) or calculates it
on-the-fly?
Hi!

Cmus scales the volume based only on the replaygain tags; it does not
calculate the gain.

                Gregory
Jason Woofenden
2011-02-19 21:36:49 UTC
Permalink
Post by Gregory Petrosyan
On Sat, Feb 19, 2011 at 10:18 PM, Róbert Kohányi
Post by Róbert Kohányi
Hi,
I'd like to know in what kind of manner cmus supports replay gain? It reads
the replay gain information from tags (like foobar) or calculates it
on-the-fly?
Hi!
Cmus scales the volume based only on the replaygain tags; it does not
calculate the gain.
This is a killer feature. I originally came to use cmus after
several other players failed to do replaygain on vorbis files.

(My criteria was that it have a queue, support replaygain on vorbis
files and that I could pause/play prev/next from an external
script. I though most players would meet those criteria, but none
of the major players did. Weird.)

I'd love to add a note to the manual saying what file types have
replaygain support in cmus... but I don't know. It seems to work on
ogg vorbis, I think it works on mp3, any others?

Take care, - Jason
Gregory Petrosyan
2011-02-20 09:17:48 UTC
Permalink
Post by Jason Woofenden
I'd love to add a note to the manual saying what file types have
replaygain support in cmus... but I don't know. It seems to work on
ogg vorbis, I think it works on mp3, any others?
It should work on Musepack, too. Also, it should work with every
format with free-form tags (FLAC etc.), where tags for RG are like
"replaygain_track_gain".

By the way, since cmus does sample scaling for RG and softvol itself,
they only work for 2 channel 16 bits for channel sample format (I
assume it is the most popular one, but not the only one existing
though).

                Gregory
Johannes Weißl
2011-02-23 02:33:36 UTC
Permalink
Hello Róbert,
Post by Róbert Kohányi
I'd like to know in what kind of manner cmus supports replay gain? It reads
the replay gain information from tags (like foobar) or calculates it
on-the-fly?
As others said, it reads tags, no calculation is done. Files that were
modified directly (e.g. with mp3gain) are supported on all
players/devices anyway.

I wrote a patch that lets you display / sort by replay gain values,
which is pretty useful (i.e. see which files are not recognized /
tagged):
http://gitorious.org/~jmuc/cmus/jw-cmus/commits/rgain

It is not ready for inclusion as we need long format options first
(currently %x, %X, %z, %Z are used).
Post by Róbert Kohányi
I've read through the cmus manual and I see that it supports replay gain,
but by reading the manual and searching the mailing-list archives on this I
didn't *gain* useful information regarding my question.
The standard freeform tags for replay gain are:
replaygain_track_gain, replaygain_track_peak,
replaygain_album_gain, replaygain_album_peak

Here a short list how the input plugins support RG (with the two patches
I just submitted):

aac (.aac): std. freeform tags (TXXX ID3v2), RVA2 ID3v2
ffmpeg (.wma, .ape): possibly std. freeform tags (not tested!)
flac (.flac, .fla): std. freeform tags (vorbis comment)
mad (.mp3, .mp2): std. freeform tags (TXXX ID3v2 and APEv2), RVA2 ID3v2
modplug (.mod, ...): --- (no tags?)
mp4 (.mp4, .m4a, .m4b): std. freeform tags (com.apple.iTunes MP4 tags)
mpc (.mpc): mpc-header, std. freeform tags (APEv2)
vorbis (.ogg): std. freeform tags (vorbis comment)
wavpack (.wv): std. freeform tags (APEv2)
wav (.wav): --- (no tags?)


@Jason: It would be great to have them in the manual, although maybe
better on the website and not in the manpage, what do you think?


Johannes

Loading...