Resonite-Issues icon indicating copy to clipboard operation
Resonite-Issues copied to clipboard

Add microphone volume slider to the settings menu

Open epicEaston197 opened this issue 9 months ago • 10 comments

Is your feature request related to a problem? Please describe.

Voice normalization for me makes by voice way too loud but turning it off can make my voice too quiet

Describe the solution you'd like

I want a quick and easy way of being able to adjust my microphone volume in game

Describe alternatives you've considered

Turning off voice normalization but this can make my voice too quiet

Additional Context

I am making this issue as I'm in a session with TheBasementNerd and they brought up that users should Turn off voice normalization as its overwhelming other users

Requesters

@epicEaston197 @TheBasementNerd

epicEaston197 avatar Feb 20 '25 21:02 epicEaston197

It sounds to me that voice normalization itself isn't the problem- put perhaps how you have it configured?

You can already tune how the normalization works- are you unable to find any values that work well for you, @epicEaston197?

If you read the various normalization settings and their descriptions- you should be able to resolve this issue with the existing tooling.

LexiBasilisk avatar Feb 20 '25 21:02 LexiBasilisk

It sounds to me that voice normalization itself isn't the problem- put perhaps how you have it configured?

You can already tune how the normalization works- are you unable to find any values that work well for you, @epicEaston197?

If you read the various normalization settings and their descriptions- you should be able to resolve this issue with the existing tooling.

I just want a volume slider for how loud my voice is And I can't see how these other options do that In short this has almost nothing to do with voice normalization Image

epicEaston197 avatar Feb 20 '25 22:02 epicEaston197

You have a very low normalization threshold set, @epicEaston197. If you read the description- you would note that is says

"Using this setting you can control the threshold when the incoming audio will be amplified. If your normal speech is too quiet, and it's not getting amplified, lower this setting. If random quiet noises are being amplified, increase it."

You have that set to a very low value- as such- you are effectively always amplifying your voice. Even if you otherwise wouldn't have to. Increasing that slider's value should help.

Increasing the noise gate attack slider would also ensure there is more time for the volume to ramp up- rather than just instantly being loud.

LexiBasilisk avatar Feb 20 '25 22:02 LexiBasilisk

A microphone volume slider would be helpful in multiple ways.

For many users voice normalization is a solution looking for a problem. We just need mic gain along with compression/ducking to prevent hard clipping. Normalization needlessly amplifies noise when a voice is realistically quiet. With normalization on it is not possible to speak quietly. This robs voices of life-like dynamics and realism.

Many of my friends do not need normalization and sound better without it, but they are forced to use it because there is no mic volume slider.

Having this inside of Resonite actually provides an advantage in that a built-in compressor/ducker could handle the full dynamic range of the mic, whereas applying gain with an external program introduces additional clamping before Resonite which lowers the clipping threshold.

If the normalizer had a slider to make it less aggressive and allow quieter sounds then it would be more useful to users who need it.

I've also heard EpicEaston and yes, they can be uncomfortably loud through no fault of their own. There is no reason that the normalization threshold or the noise gate attack would help with this. Raising the normalization threshold causes other problems instead, like dropping out while speaking, and raising the noise gate attack causes confusing volume pumping. These are not the correct solutions to these problems.

fulgenscode avatar Apr 10 '25 12:04 fulgenscode

I'm not sure why this is now or ever was marked Needs More Information. Microphone gain settings are an extremely normal slider to have in a game, and are in every single other program I've ever used that can accept a microphone input.

Especially with the nature of being able to switch between VR and Desktop, and the general nature of all the VR HMD programs, being able to adjust your gain before any amplification or compression is extremely vital to having clear and consistent volume levels. Resonite is very difficult to configure your microphone for and often requires you to break out into Windows and start playing with the levels and gain specifically for it, and then adjusting the compression levels.

ko-tengu avatar May 28 '25 01:05 ko-tengu

Question here is if you want volume adjustment or volume gain. If we just do volume slider, that's usually adjusting existing volume - like from 0 % to 100 %.

Gain would help with the voice being too quiet, that's going above 100 % - but this also risks distortion, with normalization is meant to avoid.

I think the original intent here was more with the volume normalization - most users should really not be turning it off, because it helps bring people to the same level. So asking for this feature in combination with "people should turn it off" feels like there's some underlying issue. And generally we like to address underlying issues, rather than "mask them".

It's the typical "XY problem" - from my perspective, asking for this feature as a solution to having to turn normalization off feels like we should instead fix normalization - if the feature is broken, then we don't work around it by adding a separate feature - we'll want to put our time into fixing another feature instead.

But I don't quite understand why is it being turned off.

EDIT: Also I feel like adjusting this in Windows should generally be preferable solution, since that's global. Ideally microphone level should be at good value coming into Resonite. We're in a situation where each app has to do its own settings for this, which is a bit... odd.

Doesn't mean we won't necessarily add it, but it does feel like fixing the problem in the wrong place. I don't know why you would not want to use the volume adjustment functionality that's already in your system - it's there, it's meant to fix things like this - use it!

Frooxius avatar May 28 '25 01:05 Frooxius

I don't know why you would not want to use the volume adjustment functionality that's already in your system - it's there, it's meant to fix things like this - use it!

Because a BUNCH of programs, especially games from what I've noticed, don't all output the same level. I've had games where I've had to boost my mic by 5 to 10 db, and others where I've had to drop it by some db. Having to adjust the OS for each game would be tedious and having to do it just for Res would be really annoying, especially since it'd mess with these other games mic balances.

TisFoolish avatar May 28 '25 01:05 TisFoolish

Yeah, just in VR I have different volume levels for VRChat, Contractors, and I would in Resonite but I'm not allowed to. Usually you get the OS level set to a volume that sounds correct in it's testing program and then adjust each individual program because they're all doing different processing to the audio along the way.

Resonite does in fact have a different volume level than everything else, so being able to adjust it would be very appreciated.

ko-tengu avatar May 28 '25 01:05 ko-tengu

I see, that's a fair point!

That makes it a much better reason to prioritize this in my view. Thank you!

Frooxius avatar May 28 '25 02:05 Frooxius

I know this all from direct testing. The normalizer applies a minimum 5x gain which does not really standardize voice volumes, it is just a flat minimum gain applied to everyone. It actually forces some users to be louder than the others by not allowing them to reduce their gain. These users also have distorted voices because their mic gain becomes the inverse of the crest factor of their voice (#4166) when the compressor is active.

The normalizer threshold is already a gain setting, it is just so confusing to use because it updates only when clipping, and it is the inverse of gain (gain = 1/threshold). Users give up trying to use it because it doesn't update responsively, they can't apply a gain of less than 5, and it is backwards from the typical "left-to-right = more" logic.

Adding an extra gain control just to fill in the missing 1-5x gain area will increase confusion. We don't need 2 sliders to control 1 parameter. If the normalization threshold slider were a gain slider and the gain was updated responsively, users would have much less confusion. If a separate gain control is added, then the normalization threshold slider is actually no longer useful and can just be left at 100%, unless the >5x gain limitation is serving some purpose.

Limiting gain to no less than 5x can serve a useful purpose, in that it forces users to maintain at least 5x headroom on their mic before it goes to Resonite. This forces them to leave enough headroom in their Windows controls to avoid frequent clipping during conversation. However this should be more of a suggestion because it simply won't work for some users.

fulgenscode avatar May 28 '25 04:05 fulgenscode