exp. mic loudness and settings items realign

didnt replace right away in case some people wont like it or it has some issues
uses some different way of getting active mic volume (directly from the bus instead of its analyzer effect) which also makes it smoother
also realigned everything in the settings panel to make some space for another checkmark
This commit is contained in:
Ralsi 2024-07-03 01:13:57 +03:00
parent e6dc903ad9
commit 8e4ad94569
4 changed files with 143 additions and 113 deletions

View file

@ -35,6 +35,7 @@ var speaking = false
var spectrum
var volume = 0
var volumeSensitivity = 0.0
var experimentalMicLoudness = false
var volumeLimit = 0.0
var senseLimit = 0.0
@ -53,6 +54,11 @@ func _ready():
if !Saving.settings.has("useStreamDeck"):
Saving.settings["useStreamDeck"] = false
if Saving.settings.has("experimentalMicLoudness"):
Global.experimentalMicLoudness = Saving.settings["experimentalMicLoudness"]
else:
Saving.settings["experimentalMicLoudness"] = false
createMicrophone()
func createMicrophone():
@ -70,7 +76,8 @@ func createMicrophone():
func _process(delta):
animationTick += 1
volume = spectrum.get_magnitude_for_frequency_range(20, 20000).length()
volume = (AudioServer.get_bus_peak_volume_left_db(1, 0) + AudioServer.get_bus_peak_volume_right_db(1, 0)) / 1600.0 + 0.25 if experimentalMicLoudness else spectrum.get_magnitude_for_frequency_range(20, 20000).length()
if playa != null:
volumeSensitivity = lerp(volumeSensitivity,0.0,delta*2)

View file

@ -56,6 +56,7 @@ var settings = {
"blinkSpeed":1.0,
"blinkChance":200,
"bounceOnCostumeChange":false,
"experimentalMicLoudness":false
}
var settingsPath = "user://settings.pngtp"

View file

@ -38,6 +38,8 @@ func setvalues():
label.text = "costume " + str(tag) + " key: \"" + Global.main.costumeKeys[tag-1] + "\""
tag += 1
$experimentalMicLoudness/checkmark.button_pressed = Global.experimentalMicLoudness
func _on_color_picker_button_color_changed(color):
get_viewport().transparent_bg = false
RenderingServer.set_default_clear_color(color)
@ -191,6 +193,11 @@ func _on_costume_check_toggled(button_pressed):
Saving.settings["bounceOnCostumeChange"] = button_pressed
func _on_experimental_mic_loudness_toggle(checked):
Global.experimentalMicLoudness = checked
Saving.settings["experimentalMicLoudness"] = checked
func _process(delta):
var g = to_local(get_global_mouse_position())
if g.x < 0 or g.y < 0 or g.x > $NinePatchRect.size.x or g.y > $NinePatchRect.size.y:

File diff suppressed because one or more lines are too long