Visuals - Alert Volume Controller
Control the volume level for each individual sound in openpilot.
This commit is contained in:
parent
0ceefc8ace
commit
ccf8340acb
@ -154,8 +154,14 @@ class Soundd:
|
|||||||
sm.update(0)
|
sm.update(0)
|
||||||
|
|
||||||
if sm.updated['microphone'] and self.current_alert == AudibleAlert.none: # only update volume filter when not playing alert
|
if sm.updated['microphone'] and self.current_alert == AudibleAlert.none: # only update volume filter when not playing alert
|
||||||
self.spl_filter_weighted.update(sm["microphone"].soundPressureWeightedDb)
|
if self.frogpilot_toggles.alert_volume_control:
|
||||||
self.current_volume = self.calculate_volume(float(self.spl_filter_weighted.x))
|
self.current_volume = 0.0
|
||||||
|
else:
|
||||||
|
self.spl_filter_weighted.update(sm["microphone"].soundPressureWeightedDb)
|
||||||
|
self.current_volume = self.calculate_volume(float(self.spl_filter_weighted.x))
|
||||||
|
|
||||||
|
elif self.frogpilot_toggles.alert_volume_control and self.current_alert in self.volume_map:
|
||||||
|
self.current_volume = self.volume_map[self.current_alert] / 100.0
|
||||||
|
|
||||||
self.get_audible_alert(sm)
|
self.get_audible_alert(sm)
|
||||||
|
|
||||||
@ -169,6 +175,18 @@ class Soundd:
|
|||||||
self.update_frogpilot_sounds()
|
self.update_frogpilot_sounds()
|
||||||
|
|
||||||
def update_frogpilot_sounds(self):
|
def update_frogpilot_sounds(self):
|
||||||
|
self.volume_map = {
|
||||||
|
AudibleAlert.engage: self.frogpilot_toggles.engage_volume,
|
||||||
|
AudibleAlert.disengage: self.frogpilot_toggles.disengage_volume,
|
||||||
|
AudibleAlert.refuse: self.frogpilot_toggles.refuse_volume,
|
||||||
|
|
||||||
|
AudibleAlert.prompt: self.frogpilot_toggles.prompt_volume,
|
||||||
|
AudibleAlert.promptRepeat: self.frogpilot_toggles.prompt_volume,
|
||||||
|
AudibleAlert.promptDistracted: self.frogpilot_toggles.promptDistracted_volume,
|
||||||
|
|
||||||
|
AudibleAlert.warningSoft: self.frogpilot_toggles.warningSoft_volume,
|
||||||
|
AudibleAlert.warningImmediate: self.frogpilot_toggles.warningImmediate_volume,
|
||||||
|
}
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
s = Soundd()
|
s = Soundd()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user