ReplayGain seems not applied

Issue description:

Hi, it seems like duplicate, but I can’t find any answers in the forum. I’ve applied ReplayGain on my media using foobar2000. I’ve sync Jellyfin, update it to 10.9, and also clear all caches of Symfonium. When using logs, it seems that ReplayGain is active because I have some information about volume change, but the volume remains the same. I have compared with foobar2000, and the difference is huge. Also, I toggle ReplayGain on and off (with a reload of the music), and there are no differences at all. The rest of my metadata are written with mp3tag.

Logs:

Upload description: debug (10).log As shown on the log, ReplayGain seems to be applied, but I have no difference in volume. For example the first song as a new volume of 0.81 and the second a new volume of 0.35, but the second one is way more louder than the first. One thing that seems weird is the line where its write trackReplayGain=null and albumReplayGain=null.

Additional information:

 

 

Reproduction steps:

 
Tag ReplayGain using foobar2000
Update Jellyfin library
Sync Symfonium to Jellyfin
Clear all Symfonium caches
Play the song
 

Media provider:

Jellyfin

Screenshots:

     

The logs does not show the init of the player, but have you enabled the hi res option?

Yes I have. It seems that uninstall and re-install the app fix the problem. Weird…

It’s just that some options are not instantly applied.

But ReplayGain currently does not work with hi res since it’s bit perfect there’s no processor attached.

2 Likes

I had the same problem with the replay gain not working until I switched off the HiRes setting.

But why is that the case? AutoEQ, preamplifier and other settings also work with HiRes switched on.

Replaygain would not change the bit-accurate decoding, would it?

1 Like

I’ve just explained above, but yes AudioProcessor do changes the bits to apply the volume.

And for the moment ExoPlayer does not support audioprocessors when in hires float mode.

I don’t know the DSP chain from Symfonium. But if I understand correctly, replaygain is applied directly during decoding by the audioprocessor.

If HiRes is switched on, decoding is done directly without the audioprocessor, so no replay gain is applied.

After that, the preamplification, EQs etc. are added (because these still work when HiRes is switched on).

If HiRes is switched on, wouldn’t it be possible to apply the replaygain values like a pre(post)amplifier after decoding?

Not properly due to delays in the events and apply of the things. There would be a couple of sample or even more at the wrong level and that could be worse if going from +10 to -10 the track at -10 would play a little at +10 and destroy ears :slight_smile:

Ok, thanks for the explanation (and the great work for this app)! :pray: