drowe67 / freedv-gui

GUI Application for FreeDV – open source digital voice for HF radio
https://freedv.org/
GNU Lesser General Public License v2.1
206 stars 52 forks source link

Add relative volume settings in config for both transmit monitors #732

Closed barjac closed 3 months ago

barjac commented 3 months ago

When using the voice keyer or live transmit monitors to hear your own transmission, the volume is generally much higher than necessary.

If there were settings to attenuate these in maybe 1dB steps relative to the RX audio level then comfortable listening levels could be set for each.

I suspect that the level needed for live TX will need to be considerably lower than that for the voice keyer so I think each does need its own setting.

tmiw commented 3 months ago

Thanks for this. Any thoughts on where the volume level should be settable from? (i.e. an additional slider or two in the existing Filter dialog or from some other location)

barjac commented 3 months ago

Maybe a new section called 'Monitor Levels' under Tools->Options->Audio?

tmiw commented 3 months ago

Maybe a new section called 'Monitor Levels' under Tools->Options->Audio?

Hmm, not sure about that one either; Tools->Options has traditionally been a location for settings that aren't supposed to change when a session is running (with the exception of the VK folder path now, of course). I see a few options:

  1. Rename Tools->Filters to Tools->Audio Adjustment or similar and add the monitor volume controls there, or
  2. Create a separate window just for configuring the monitor levels (accessible via the right-click menu for the VK and PTT buttons).

Maybe @Tyrbiter has some feedback as well?

Tyrbiter commented 3 months ago

Option 2 is preferable in my opinion.

barjac commented 3 months ago

I did not expect that once set as a value by a user that these would need to be adjusted on the fly. In the same way that in other software I use, a relative setting for callsign ID which is sent in the background at a lower level than the main signal is configured.

Don't forget that these would be 'relative' to any master system volume setting in use.

If the master volume is first set to a normal working level and suitable relative monitor levels are set in the configuration then I would expect that they would be left alone.

Temporary increase or decrease would be best done with the master volume control to avoid disturbing the configured relative monitor setting.

I just edited this part of my reply as I did initially think I would prefer option 2, however on reflection I think option 1 would avoid GUI clutter as this is not something that will be needed often enough to warrant such easy access. Those context menus are quite 'wordy' already so maybe better left alone?

tmiw commented 3 months ago

See https://github.com/drowe67/freedv-gui/pull/733. Let me know how that goes for you guys.