Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
139 stars 2 forks source link

Voice indicator volume bar gets stuck when using steam audio #2047

Open epicEaston197 opened 5 months ago

epicEaston197 commented 5 months ago

Describe the Underlying Issue

When I am speaking the green bar that's indicating my voice volume just gets stuck for no reason

To Reproduce

  1. speak into your microphone
  2. Observe that your voice facet volume indicator is stuck and doesn't return to home

Expected Behavior

The voice volume indicator should reset to 0 when I'm not speaking

Screenshots / Video

No response

Additional Context

I originally thought this was an issue with mods but after uninstalling my mods testing the issue then uninstalling Resonite and reinstalling it I'm experiencing the same issue

Reporters

@epicEaston197

epicEaston197 commented 5 months ago

okay apparently this happens when your microphone is set to steam

epicEaston197 commented 5 months ago

I just realized that this is probably not a content issue I looked into it and it's a problem of how Resonite handles the steam microphone there's nothing that the content team can do to fix this

shiftyscales commented 5 months ago

Could you please look at the input source in another program like OBS? @epicEaston197 The easiest answer for this seems like the input might be continually creating some sort of background noise.

I'd also recommend checking against other components like the VolumeMeter component to confirm that the audio is continually above one.

epicEaston197 commented 5 months ago

Could you please look at the input source in another program like OBS?

Unfortunately this is a exclusive problem with the steam microphone which isn't available in OBS image and I have no reason to suspect that there might be background audio even if there was background audio it shouldn't be significant enough to make the bar stay perfectly in place

I looked at the component and the values were completely static when I was done talking so if there was background audio it would have to be perfectly level and even if it was it should return to a consistent value

and from what I could tell it is using my microphone on my headphones as the input when steam microphone is selected

shiftyscales commented 5 months ago

I looked at the component and the values were completely static when I was done talking

And as I requested above- what about on other components like the VolumeMeter? Does that also remain as a static value >0?

epicEaston197 commented 5 months ago

I looked at the component and the values were completely static when I was done talking

And as I requested above- what about on other components like the VolumeMeter? Does that also remain as a static value >0?

Volume meter works perfectly fine as expected

shiftyscales commented 5 months ago

Okay- which component had you meant when saying 'the values were completely static' @epicEaston197? AudioDeviceVolume? Or something else?

epicEaston197 commented 5 months ago

Okay- which component had you meant when saying 'the values were completely static' @epicEaston197? AudioDeviceVolume? Or something else?

AudioDeviceVolume

shiftyscales commented 5 months ago

I see- could you also post a screenshot of the OpusStream from your voice source, @epicEaston197? I'd like to try and isolate where those values are being pulled/generated from.

epicEaston197 commented 5 months ago

image

shiftyscales commented 5 months ago

I think I might have a probable cause for what's happening here.

Using my modmic wireless, I pulled the USB receiver from my PC while talking, and the last value persisted on the volume meter until such point as I re-added the receiver and thus the device.

So my suspicion about what is happening is that the steam streaming microphone is probably shutting itself off at the driver level once it detects the user has stopped talking so that it does not need to needlessly encode any background signal noise produced, generating additional network traffic for what is effectively silence being transmitted.

Resonite could possibly handle this case better, e.g. if it no longer detects the device to zero out the volumes- but this is otherwise also a low-priority issue because it does not affect the actual function of these components.