Audio Normalization In Resonite (LUFS Support)
Is your feature request related to a problem? Please describe.
During events like "Movie Nights" and "Watch Parties", users notice that content (from any source they found a link to) would sometimes play audio at a louder or quieter than normal levels than one would expect. In extreme cases, sometimes maxing out the volume slider of a video player would not be enough for those super quiet moments, and then jarring when the next piece of content that is played then blasts the user's eardrums, and vice versa.
Normalizing the audio will solve this, yet I have no clue on where or how I can set the loudness (not volume) of media content nor found an issue talking about it on here. This issue applies to anything that has audio, not just for my use case.
Describe the solution you'd like
Some way in components or ProtoFlux that allows for setting, controlling, and modifying the amount of loudness some media content has, similar to how LUFS is used in other streaming sites (Spotify, Apple Music, etc). Maybe the new Awwdio system could support this?
Usually loudness is set to a default of -14 or -16 LUFS in other platforms and services to keep things consistent, but that is up to the devs on what they want to use and how to use it in this case.
Describe alternatives you've considered
Some alternatives I considered:
- Dealing with the uncertainty of how loud some content is when bringing it into Resonite
- For users that have a lot of content that they wish to provide during those events would have to go through their entire collection of media and painfully and destructively adjust their audio for the sake of normalization in Resonite
- Use an external service to route the media to first, then send the normalized playback into Resonite (That adds another layer to deal with in the chain, and I rather have Resonite be the trusted destination to control the loudness using a native solution)
Additional Context
Running a theater that swaps content without changing the volume level makes it obvious to users, hence this request.
Requesters
- AmasterAmaster