MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / HotkeyAdjustVolume

Function HotkeyAdjustVolume

pcsx2/Hotkeys.cpp:44–73  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

42}
43
44static void HotkeyAdjustVolume(const s32 delta)
45{
46 if (!VMManager::HasValidVM())
47 return;
48
49 // Volume-adjusting hotkeys override mute toggle hotkey. EmuConfig.SPU2.OutputMuted overrides hotkeys.
50 if (!SPU2::SetOutputMuted(false))
51 {
52 Host::AddIconOSDMessage("VolumeChanged", ICON_FA_VOLUME_XMARK, TRANSLATE_STR("Hotkeys_Volume", "Volume: Muted in Settings"));
53 return;
54 }
55
56 const s32 current_volume = static_cast<s32>(SPU2::GetOutputVolume());
57 const s32 maximum_volume = static_cast<s32>(Pcsx2Config::SPU2Options::MAX_VOLUME);
58 const s32 new_volume = std::clamp(current_volume + delta, 0, maximum_volume);
59
60 if (current_volume != new_volume)
61 SPU2::SetOutputVolume(static_cast<u32>(new_volume));
62
63 if (new_volume > 0 && new_volume < maximum_volume)
64 {
65 Host::AddIconOSDMessage("VolumeChanged", new_volume < 100 ? ICON_FA_VOLUME_LOW : ICON_FA_VOLUME_HIGH,
66 fmt::format(TRANSLATE_FS("Hotkeys_Volume", "Volume: {} to {}%"), delta < 0 ? TRANSLATE_STR("Hotkeys_Volume", "Decreased") : TRANSLATE_STR("Hotkeys_Volume", "Increased"), new_volume));
67 }
68 else
69 {
70 Host::AddIconOSDMessage("VolumeChanged", delta < 0 ? ICON_FA_VOLUME_OFF : ICON_FA_VOLUME_HIGH,
71 fmt::format(TRANSLATE_FS("Hotkeys_Volume", "Volume: {} {}% Reached"), delta < 0 ? TRANSLATE_STR("Hotkeys_Volume", "Minimum") : TRANSLATE_STR("Hotkeys_Volume", "Maximum"), new_volume));
72 }
73}
74
75static void HotkeyToggleMute()
76{

Callers 1

Hotkeys.cppFile · 0.85

Calls 2

clampFunction · 0.50
formatFunction · 0.50

Tested by

no test coverage detected