Skip to content

Conversation

@HolonProduction
Copy link

@HolonProduction HolonProduction commented May 13, 2025

Closes #265

Adds loudness normalization for songs which have ReplayGain metadata.

  • Adjustment is done using the LoudnessEnhancer AudioEffect. I did not find a way to handle peaks as described in the ReplayGain spec using the MediaPlayer API. Supporting peak adjustments would probably require a migration to media3 and implementation of a custom AudioProcessor (but I don't know much about audio, maybe there is a way to achieve it with existing AudioEffects 🤷).
  • The queue now has an "owning album" attached which is set when launching playback from an album. This prop is used to automatically select an appropriate ReplayGain normalization mode (album for songs from the owning album, track for all other songs). There is also a setting to always use the same mode.

Important note: Metaphony does not seem to read APE tags on MP3 (or mixed tag containers). So songs that were tagged with the Linux tool mp3gain won't work properly.

TODO:

  • i18n is currently blocked by [Bug] Hitting translation key limit #819
  • UX when trying to use ReplayGain without Metaphony
  • Take a look at queue serialization and the new queue field
  • Display ReplayGain information in the properties dialog

image

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] Replay Gain

1 participant