Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI: Better VoIP and Mumble support integration in the menus #143

Closed
11 of 12 tasks
kai-li-wop opened this issue Apr 8, 2022 · 5 comments
Closed
11 of 12 tasks

UI: Better VoIP and Mumble support integration in the menus #143

kai-li-wop opened this issue Apr 8, 2022 · 5 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@kai-li-wop
Copy link
Member

kai-li-wop commented Apr 8, 2022

The UI offers several VoiP settings via the sound settings page of the setup menu and is bundled there with several other sound options. Some of the provided and very useful engine features are still missing there and are only available via the command console by entering CVARs. It would be helpful to add those features to the UI. As the sound options page is not offering enough space for this, a transfer of the voip options to the network options page could be helpful. This also makes more sense as the VOIP options nowadays depend on the data rate setting and not on the OpenAL setting any more.

ToDo

  • New graphics NET/VOIP (on/off) to replace NETWORK button
  • Replace voice chat radio button with spin button to select between off, build-in voip support and Mumble link support. Build-in voip is the default. To save space Build-in voip options should hide Mumble link options when selected and vice versa. With voip off selected all options should be hidden and inactive instead of greyed.
  • Transfer the rest of existing voice chat options from sound page to network page
  • Add missing voice capture multiplier as slider option (cl_voipCaptureMult). Reset the default value in WoP from 4 to 2, like suggested in the voip readme of ioq3
  • Add send target support; see @mgerhardy PR#163. spatial is default.
  • Add Mumble scale slider (cl_mumbleScale) and show it when Mumble link is selected, hide all other options
  • Ad useful tool tips to all option on the menu page
  • Make sure that all sliders have a useful multiplier for small values between 0 and 1 scale. Values like that should be transferred to a 0 to 100 scale, like percentages. It makes it much easier to use and adjust the sliders via mouse and keyboard.
  • Add send targets 'none', 'attacker', 'spatial' and 'crosshair' to voice chat ingame menu, it only provides 'team' and 'all' for now. spatial is default.
  • Handle input of negative values by using sliders which can happen when first using mouse and keyboard. Solution is to transform input values to integer first before setting them. All sliders should be scaled to useful display values so that digits after decimal point should not matter.
  • Voice Amplifier slider should also allow float values below 1. Range should be from 0.1 to 5, not 0 to 10. Prevent accidentality negative values input differently.
  • Optional: Enhance cl_voipSendTarget to accept also 'team' #145
@kai-li-wop kai-li-wop added the enhancement New feature or request label Apr 8, 2022
@kai-li-wop kai-li-wop added this to the v1.7.0 milestone Apr 8, 2022
@kai-li-wop kai-li-wop self-assigned this Apr 8, 2022
@kai-li-wop kai-li-wop moved this to In Progress in WoP 1.7.x Apr 8, 2022
@kai-li-wop kai-li-wop changed the title UI: Better VoIP and Mumble suport integration into the system menu UI: Better VoIP and Mumble support integration in the menus Apr 8, 2022
@kai-li-wop
Copy link
Member Author

@mgerhardy It seems that 'team' in the send target list of the ingame voice chat menu was never used. I cannot find any code handling this. If we want to keep it, we need to create code to provide a list with client numbers of the current team and send it via cl_voipSendTarget. What do you think? For now i removed 'team' from the list.

@kai-li-wop kai-li-wop moved this from In Progress to Ready for Review in WoP 1.7.x Apr 8, 2022
kai-li-wop added a commit that referenced this issue Apr 11, 2022
... and prevent people from input of negative values by using sliders with mouse and keyboard. see #143
@3aTmE
Copy link

3aTmE commented May 7, 2022

I tried to get the In-Game voice chat running.
Works way better than it used to be, but still got mixed Results.

Observations :

OPEN AL

  • Voice Amplifier can't be set below 1 any value below 1 set this automatically to 0
  • Using the Capture Mode : Automatic adds an horrible Echo.
  • Even as i got the best results using OPEN AL it is still quite stutters a lot. (See Sound-Quality)

SDL

  • Unlike OPEN AL, in SDL you can actually set a value below 1 in the Voice Amplifier.
  • The sound is in general way quieter and not as aggressive.
  • As Mentioned in UI: Enhancing sound options menu  #147 you can't change your input devices. That's why im using my Audiointerface for the SDL recordings. (See Sound-Quality)

GENERAL

  • Why is "spatial" the standard entry at "Send Target" ?
  • I couldn't test the Mumble Functionality yet since i need someone else and a mumble server (no issue, hi Zockserver!) to test it on.

Sound-Quality :

I Recorded some Samples using the best possible options i could choose inside of the VIOP and SOUND Menu:

OPEN AL - Push To talk

  • Speaker Volume : 1
  • Voice Amplifier : 1
  • Send Target : All
OPENAL.PUSH.TO.TALK.mp4

OPEN AL : AUTOMATIC

  • Capture Treshold : 0.25
  • Speaker Volume : 1
  • Voice Amplifier : 1
  • Send Target : All
OPENAL.AUTO.mp4

With SDL i needed to get a bit more ...creative. I was not able to change my Input Devices like usual. Trying so would simply crash the game. (see my comment at #147) So i got stuck using my Audio-Interface and Crappy Guitarplaying to record at least something (sure i could disable every other Input expect my microphone , but eh.)

SDL - Push To talk

  • Speaker Volume : 5
  • Voice Amplifier : 2
  • Send Target : All
SDL.PUSH.TO.TALK.mp4

SDL -AUTO

  • Capture Treshold : 0
  • Speaker Volume : 5
  • Voice Amplifier : 2
  • Send Target : All
SDL.AUTO.mp4

@kai-li-wop
Copy link
Member Author

kai-li-wop commented May 8, 2022

  • "Voice Amplifier can't be set below 1 any value below 1 set this automatically to 0" - The voice amplifier is meant to amplify the voice by the set factor. The ioq3 default value for this is 2, WoP had it set to 4 and I set it back to 2 like ioq3. Values below 1 set the value to 0 because only integer values are set. This is due to a weird mouse and keyboard combination which can cause negative values, which I tried to prevent. I my understanding the value should not go below 1, so my suggestion here is to change the slider to accept values between 1 and 10, not 0 and 10. This would fix the issue I think. Is this a suitable solution?
  • "Using the Capture Mode : Automatic adds an horrible Echo." - This depends on the capture threshold and the speakers volume. If you don't use a headset a speakers volume of 20% should be OK to avoid echoing sound. It sets the speakers sound to 20% while you are speaking and recording sound. It also depends on the real volume of the speakers. Mine have a real volume control mounted which I can control by hand. You could try to lower it much more to prevent echoes. The default values for capture threshold and speakers volume are still the ioq3 ones and were not altered. I am open for other default values, if they are bettering the situation.
  • "Unlike OPEN AL, in SDL you can actually set a value below 1 in the Voice Amplifier." - I doubt that, since the slider code is the same whether SDL or OpenAL is chosen. I cannot set values below 1 in both cases.
  • "Why is spatial the standard entry at Send Target?" - We just took the default value from ioq3, but I think it makes sense not to yell at everyone during a match. Spatial can be a good compromise to not get on everyone's nerves and to just talk to the people around you. What would be another reasonable default value for this?

This issue here was more about documenting the menu implementation of those VoIP features. I suggest to open a new one regarding the VoIP chat quality in general. For me it is important to know if there are still issues with the menu implementation. Big thx for taking the time to test all of it so deeply!

kai-li-wop added a commit that referenced this issue May 8, 2022
@kai-li-wop
Copy link
Member Author

kai-li-wop commented May 8, 2022

OK, forget what I wrote above regarding the Voice Amplifier. With 648d1c7 I did some changes to the Voice Amplifier slider handling. Float values are allowed and the range is set from 0.1 to 5 now (was 0 to 10). This should make it more easy to set values below 1. I also handle now negative values differently, if they appear accidentality by using first mouse and then keyboard. Input values below or equal 0 are set to 0.1 on purpose now.

@3aTmE
Copy link

3aTmE commented May 14, 2022

"Using the Capture Mode : Automatic adds an horrible Echo." - This depends on the capture threshold and the speakers volume....

Gonna check this later with multiple devices, its quite possible that my "to go" solution for recording voice on my desktop (my webcam) just wasn't really fit for the task.

I'll redo my testing with a headset / my Webcam / Laptop and update my comment

This issue here was more about documenting the menu implementation of those VoIP features.

At least there i can report that the implementation itself worked flawlessly !

Float values are allowed and the range is set from 0.1 to 5 now (was 0 to 10)...

Same here! Redoing my tests, updating the results!

I suggest to open a new one regarding the VoIP chat quality in general.

Will do when im done!

Repository owner moved this from Ready for Review to Done in WoP 1.7.x May 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Archived in project
Development

No branches or pull requests

2 participants