As someone who downloads or buys their music to listen to via VLC, it’s quite annoying when the volume level between files aren’t consistent. Especially when I’m unable to easily to change the volume like when I’m doing physical labor as an example. So it can go from a perfectly reasonable volume, to damaging my ears, and then to where I can barely hear. I was thinking of going in and manually editing them myself to be consistent amongst each other at some point, but then it got me thinking. Is there an application that will equalize the volume on your audio files for you? If not, would anyone else have a use for one besides me? I’d love to know either way.
You will want to use something like Foobar2000 to scan the files then write replaygain metadata to each file.
Then you enable replaygain in VLC and it should work as you want.
ffmpeg can do it. I haven’t used it in a while, but here is a good start How can I normalize audio using ffmpeg?
There’s also mp3gain, but this looks better maintained
The process you’re looking for is called loudness normalization. You want to batch normalize your audio files to a set LUFS value(probably around - 14LUFS). I think there is a way to do this in batch proccessing with audacity.
If playing through VLC, why not use the built in normalizer? Or you can go the more painful route of re-encoding each file to a normalized audio, something I haven’t done since 2k, for use on other devices
Well, I forgot to mention that I don’t just use these audio files on my Linux machine. I use SyncThingy in order to use the same files on my phone as well (which runs LineageOS). So, unless VLC for Android also has that feature, I would prefer a solution that works regardless of which platform I’m using, thus why I was looking to do re-encoding on Linux. Though admittedly, I was also wondering if the answer was no because I thought I might have finally found a decent idea for a project
If you need a GUI, Audacity is a popular audio editor that has many features, one of which is normalizing levels. If you need to automate via CLI, ffmpeg is probably the tool for the job, as others have mentioned.
There’s also Tenacity, which is a fork of Audacity after it was bought by some company iirc. I was actually considering to use it to manually adjust the audio of each file. I didn’t know it had a normalize feature already though, guess it can just do the work for me then
There are several possibilities, here is one : https://github.com/M-Igashi/mp3rgain
Another : https://github.com/tapscodes/MuseAmp
in vlc, right click>tools>effects and filters>compressor. adjust threshold to your liking, you don’t really need to mess with the other sliders.
edit: you can also go to preferences>audio>normalize volume to: (set what you like)
- Deadbeef
- Wine foobar2000
- rsgain command line