Skip to content

Commit cce2a58

Browse files
committed
Qt: Add audio capture volume setting
1 parent 980c627 commit cce2a58

File tree

4 files changed

+59
-2
lines changed

4 files changed

+59
-2
lines changed

pcsx2-qt/Settings/GraphicsMediaCaptureSettingsTab.ui

Lines changed: 52 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -188,14 +188,63 @@
188188
</property>
189189
</widget>
190190
</item>
191-
<item row="2" column="0" colspan="2">
191+
<item row="2" column="0">
192+
<widget class="QLabel" name="audioCaptureVolumeLabel">
193+
<property name="text">
194+
<string>Volume:</string>
195+
</property>
196+
<property name="buddy">
197+
<cstring>audioCaptureVolume</cstring>
198+
</property>
199+
</widget>
200+
</item>
201+
<item row="2" column="1">
202+
<layout class="QHBoxLayout" name="audioCaptureVolumeLayout" stretch="1,0">
203+
<item>
204+
<widget class="QSlider" name="audioCaptureVolume">
205+
<property name="orientation">
206+
<enum>Qt::Orientation::Horizontal</enum>
207+
</property>
208+
<property name="minimum">
209+
<number>0</number>
210+
</property>
211+
<property name="maximum">
212+
<number>100</number>
213+
</property>
214+
<property name="value">
215+
<number>80</number>
216+
</property>
217+
<property name="tickPosition">
218+
<enum>QSlider::TickPosition::TicksBelow</enum>
219+
</property>
220+
<property name="tickInterval">
221+
<number>25</number>
222+
</property>
223+
</widget>
224+
</item>
225+
<item>
226+
<widget class="QLabel" name="audioCaptureVolumeValue">
227+
<property name="text">
228+
<string>80%</string>
229+
</property>
230+
<property name="minimumSize">
231+
<size>
232+
<width>40</width>
233+
<height>0</height>
234+
</size>
235+
</property>
236+
</widget>
237+
</item>
238+
</layout>
239+
</item>
240+
<item row="3" column="0" colspan="2">
192241
<widget class="QCheckBox" name="enableAudioCaptureArguments">
193242
<property name="text">
194243
<string>Extra Arguments</string>
195244
</property>
196245
</widget>
197246
</item>
198-
<item row="3" column="0" colspan="2">
247+
<item row="4" column="0" colspan="2">
199248
<widget class="QLineEdit" name="audioCaptureArguments"/>
200249
</item>
201250
</layout>
@@ -395,6 +444,7 @@
395444
<tabstop>enableAudioCapture</tabstop>
396445
<tabstop>audioCaptureCodec</tabstop>
397446
<tabstop>audioCaptureBitrate</tabstop>
447+
<tabstop>audioCaptureVolume</tabstop>
398448
<tabstop>enableAudioCaptureArguments</tabstop>
399449
<tabstop>audioCaptureArguments</tabstop>
400450
</tabstops>

pcsx2-qt/Settings/GraphicsSettingsWidget.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -414,6 +414,8 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* settings_dialog,
414414
SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_capture.enableAudioCapture, "EmuCore/GS", "EnableAudioCapture", true);
415415
SettingWidgetBinder::BindWidgetToIntSetting(
416416
sif, m_capture.audioCaptureBitrate, "EmuCore/GS", "AudioCaptureBitrate", Pcsx2Config::GSOptions::DEFAULT_AUDIO_CAPTURE_BITRATE);
417+
SettingWidgetBinder::BindWidgetAndLabelToIntSetting(
418+
sif, m_capture.audioCaptureVolume, m_capture.audioCaptureVolumeValue, tr("%"), "EmuCore/GS", "AudioCaptureVolume", Pcsx2Config::GSOptions::DEFAULT_AUDIO_CAPTURE_VOLUME);
417419
SettingWidgetBinder::BindWidgetToBoolSetting(
418420
sif, m_capture.enableAudioCaptureArguments, "EmuCore/GS", "EnableAudioCaptureParameters", false);
419421
SettingWidgetBinder::BindWidgetToStringSetting(sif, m_capture.audioCaptureArguments, "EmuCore/GS", "AudioCaptureParameters");
@@ -807,6 +809,8 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* settings_dialog,
807809

808810
dialog()->registerWidgetHelp(m_capture.audioCaptureBitrate, tr("Audio Bitrate"), tr("192 kbps"), tr("Sets the audio bitrate to be used."));
809811

812+
dialog()->registerWidgetHelp(m_capture.audioCaptureVolume, tr("Audio Volume"), tr("80%"), tr("Sets the volume level for recorded audio. 100% is full volume, lower values reduce the volume."));
813+
810814
dialog()->registerWidgetHelp(m_capture.enableAudioCaptureArguments, tr("Enable Extra Audio Arguments"), tr("Unchecked"), tr("Allows you to pass arguments to the selected audio codec."));
811815

812816
dialog()->registerWidgetHelp(m_capture.audioCaptureArguments, tr("Extra Audio Arguments"), tr("Leave It Blank"),

pcsx2/Config.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -704,6 +704,7 @@ struct Pcsx2Config
704704
static constexpr int DEFAULT_VIDEO_CAPTURE_WIDTH = 640;
705705
static constexpr int DEFAULT_VIDEO_CAPTURE_HEIGHT = 480;
706706
static constexpr int DEFAULT_AUDIO_CAPTURE_BITRATE = 192;
707+
static constexpr int DEFAULT_AUDIO_CAPTURE_VOLUME = 80;
707708
static const char* DEFAULT_CAPTURE_CONTAINER;
708709

709710
static constexpr int DEFAULT_SHADEBOOST_BRIGHTNESS = 50;
@@ -879,6 +880,7 @@ struct Pcsx2Config
879880
int VideoCaptureWidth = DEFAULT_VIDEO_CAPTURE_WIDTH;
880881
int VideoCaptureHeight = DEFAULT_VIDEO_CAPTURE_HEIGHT;
881882
int AudioCaptureBitrate = DEFAULT_AUDIO_CAPTURE_BITRATE;
883+
int AudioCaptureVolume = DEFAULT_AUDIO_CAPTURE_VOLUME;
882884

883885
std::string Adapter;
884886
std::string HWDumpDirectory;

pcsx2/Pcsx2Config.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,6 +1069,7 @@ void Pcsx2Config::GSOptions::LoadSave(SettingsWrapper& wrap)
10691069
SettingsWrapBitfieldEx(VideoCaptureWidth, "VideoCaptureWidth");
10701070
SettingsWrapBitfieldEx(VideoCaptureHeight, "VideoCaptureHeight");
10711071
SettingsWrapBitfieldEx(AudioCaptureBitrate, "AudioCaptureBitrate");
1072+
SettingsWrapBitfieldEx(AudioCaptureVolume, "AudioCaptureVolume");
10721073

10731074
SettingsWrapEntry(Adapter);
10741075
SettingsWrapEntry(HWDumpDirectory);

0 commit comments

Comments
 (0)