mirror of
https://github.com/PCSX2/pcsx2.git
synced 2025-12-16 04:08:48 +00:00
Compare commits
4 Commits
9c6ceeacf4
...
99cc01889f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
99cc01889f | ||
|
|
7fab935c2d | ||
|
|
865f414fb5 | ||
|
|
ac7da55c36 |
@ -191,14 +191,63 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="0" colspan="2">
|
<item row="2" column="0">
|
||||||
|
<widget class="QLabel" name="audioCaptureVolumeLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>Volume:</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>audioCaptureVolume</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="1">
|
||||||
|
<layout class="QHBoxLayout" name="audioCaptureVolumeLayout" stretch="1,0">
|
||||||
|
<item>
|
||||||
|
<widget class="QSlider" name="audioCaptureVolume">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Orientation::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="minimum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>100</number>
|
||||||
|
</property>
|
||||||
|
<property name="value">
|
||||||
|
<number>100</number>
|
||||||
|
</property>
|
||||||
|
<property name="tickPosition">
|
||||||
|
<enum>QSlider::TickPosition::TicksBelow</enum>
|
||||||
|
</property>
|
||||||
|
<property name="tickInterval">
|
||||||
|
<number>25</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="audioCaptureVolumeValue">
|
||||||
|
<property name="text">
|
||||||
|
<string>100%</string>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="0" colspan="2">
|
||||||
<widget class="QCheckBox" name="enableAudioCaptureArguments">
|
<widget class="QCheckBox" name="enableAudioCaptureArguments">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Extra Arguments</string>
|
<string>Extra Arguments</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="0" colspan="2">
|
<item row="4" column="0" colspan="2">
|
||||||
<widget class="QLineEdit" name="audioCaptureArguments"/>
|
<widget class="QLineEdit" name="audioCaptureArguments"/>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
@ -401,6 +450,7 @@
|
|||||||
<tabstop>enableAudioCapture</tabstop>
|
<tabstop>enableAudioCapture</tabstop>
|
||||||
<tabstop>audioCaptureCodec</tabstop>
|
<tabstop>audioCaptureCodec</tabstop>
|
||||||
<tabstop>audioCaptureBitrate</tabstop>
|
<tabstop>audioCaptureBitrate</tabstop>
|
||||||
|
<tabstop>audioCaptureVolume</tabstop>
|
||||||
<tabstop>enableAudioCaptureArguments</tabstop>
|
<tabstop>enableAudioCaptureArguments</tabstop>
|
||||||
<tabstop>audioCaptureArguments</tabstop>
|
<tabstop>audioCaptureArguments</tabstop>
|
||||||
</tabstops>
|
</tabstops>
|
||||||
|
|||||||
@ -415,6 +415,8 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* settings_dialog,
|
|||||||
SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_capture.enableAudioCapture, "EmuCore/GS", "EnableAudioCapture", true);
|
SettingWidgetBinder::BindWidgetToBoolSetting(sif, m_capture.enableAudioCapture, "EmuCore/GS", "EnableAudioCapture", true);
|
||||||
SettingWidgetBinder::BindWidgetToIntSetting(
|
SettingWidgetBinder::BindWidgetToIntSetting(
|
||||||
sif, m_capture.audioCaptureBitrate, "EmuCore/GS", "AudioCaptureBitrate", Pcsx2Config::GSOptions::DEFAULT_AUDIO_CAPTURE_BITRATE);
|
sif, m_capture.audioCaptureBitrate, "EmuCore/GS", "AudioCaptureBitrate", Pcsx2Config::GSOptions::DEFAULT_AUDIO_CAPTURE_BITRATE);
|
||||||
|
SettingWidgetBinder::BindWidgetAndLabelToIntSetting(
|
||||||
|
sif, m_capture.audioCaptureVolume, m_capture.audioCaptureVolumeValue, "%", "EmuCore/GS", "AudioCaptureVolume", Pcsx2Config::GSOptions::DEFAULT_AUDIO_CAPTURE_VOLUME);
|
||||||
SettingWidgetBinder::BindWidgetToBoolSetting(
|
SettingWidgetBinder::BindWidgetToBoolSetting(
|
||||||
sif, m_capture.enableAudioCaptureArguments, "EmuCore/GS", "EnableAudioCaptureParameters", false);
|
sif, m_capture.enableAudioCaptureArguments, "EmuCore/GS", "EnableAudioCaptureParameters", false);
|
||||||
SettingWidgetBinder::BindWidgetToStringSetting(sif, m_capture.audioCaptureArguments, "EmuCore/GS", "AudioCaptureParameters");
|
SettingWidgetBinder::BindWidgetToStringSetting(sif, m_capture.audioCaptureArguments, "EmuCore/GS", "AudioCaptureParameters");
|
||||||
@ -813,6 +815,10 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* settings_dialog,
|
|||||||
|
|
||||||
dialog()->registerWidgetHelp(m_capture.audioCaptureBitrate, tr("Audio Bitrate"), tr("192 kbps"), tr("Sets the audio bitrate to be used."));
|
dialog()->registerWidgetHelp(m_capture.audioCaptureBitrate, tr("Audio Bitrate"), tr("192 kbps"), tr("Sets the audio bitrate to be used."));
|
||||||
|
|
||||||
|
dialog()->registerWidgetHelp(
|
||||||
|
m_capture.audioCaptureVolume, tr("Audio Volume"), QStringLiteral("100%"),
|
||||||
|
tr("Sets the volume level for recorded audio. 100% is full volume, lower values reduce the volume."));
|
||||||
|
|
||||||
dialog()->registerWidgetHelp(m_capture.enableAudioCaptureArguments, tr("Enable Extra Audio Arguments"), tr("Unchecked"), tr("Allows you to pass arguments to the selected audio codec."));
|
dialog()->registerWidgetHelp(m_capture.enableAudioCaptureArguments, tr("Enable Extra Audio Arguments"), tr("Unchecked"), tr("Allows you to pass arguments to the selected audio codec."));
|
||||||
|
|
||||||
dialog()->registerWidgetHelp(m_capture.audioCaptureArguments, tr("Extra Audio Arguments"), tr("Leave It Blank"),
|
dialog()->registerWidgetHelp(m_capture.audioCaptureArguments, tr("Extra Audio Arguments"), tr("Leave It Blank"),
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -704,6 +704,7 @@ struct Pcsx2Config
|
|||||||
static constexpr int DEFAULT_VIDEO_CAPTURE_WIDTH = 640;
|
static constexpr int DEFAULT_VIDEO_CAPTURE_WIDTH = 640;
|
||||||
static constexpr int DEFAULT_VIDEO_CAPTURE_HEIGHT = 480;
|
static constexpr int DEFAULT_VIDEO_CAPTURE_HEIGHT = 480;
|
||||||
static constexpr int DEFAULT_AUDIO_CAPTURE_BITRATE = 192;
|
static constexpr int DEFAULT_AUDIO_CAPTURE_BITRATE = 192;
|
||||||
|
static constexpr int DEFAULT_AUDIO_CAPTURE_VOLUME = 100;
|
||||||
static const char* DEFAULT_CAPTURE_CONTAINER;
|
static const char* DEFAULT_CAPTURE_CONTAINER;
|
||||||
|
|
||||||
static constexpr int DEFAULT_SHADEBOOST_BRIGHTNESS = 50;
|
static constexpr int DEFAULT_SHADEBOOST_BRIGHTNESS = 50;
|
||||||
@ -880,6 +881,7 @@ struct Pcsx2Config
|
|||||||
int VideoCaptureWidth = DEFAULT_VIDEO_CAPTURE_WIDTH;
|
int VideoCaptureWidth = DEFAULT_VIDEO_CAPTURE_WIDTH;
|
||||||
int VideoCaptureHeight = DEFAULT_VIDEO_CAPTURE_HEIGHT;
|
int VideoCaptureHeight = DEFAULT_VIDEO_CAPTURE_HEIGHT;
|
||||||
int AudioCaptureBitrate = DEFAULT_AUDIO_CAPTURE_BITRATE;
|
int AudioCaptureBitrate = DEFAULT_AUDIO_CAPTURE_BITRATE;
|
||||||
|
int AudioCaptureVolume = DEFAULT_AUDIO_CAPTURE_VOLUME;
|
||||||
|
|
||||||
std::string Adapter;
|
std::string Adapter;
|
||||||
std::string HWDumpDirectory;
|
std::string HWDumpDirectory;
|
||||||
|
|||||||
@ -1148,36 +1148,77 @@ bool GSCapture::ProcessAudioPackets(s64 video_pts)
|
|||||||
const u32 contig_frames = std::min(pending_frames, AUDIO_BUFFER_SIZE - s_audio_buffer_read_pos);
|
const u32 contig_frames = std::min(pending_frames, AUDIO_BUFFER_SIZE - s_audio_buffer_read_pos);
|
||||||
const u32 this_batch = std::min(s_audio_frame_size - s_audio_frame_pos, contig_frames);
|
const u32 this_batch = std::min(s_audio_frame_size - s_audio_frame_pos, contig_frames);
|
||||||
|
|
||||||
|
// Apply volume multiplier
|
||||||
|
const float volume_scale = static_cast<float>(GSConfig.AudioCaptureVolume) / 100.0f;
|
||||||
|
|
||||||
// Do we need to convert the sample format?
|
// Do we need to convert the sample format?
|
||||||
if (!s_swr_context)
|
if (!s_swr_context)
|
||||||
{
|
{
|
||||||
// No, just copy frames out of staging buffer.
|
// No, just copy frames out of staging buffer with volume applied.
|
||||||
if (s_audio_frame_planar)
|
if (s_audio_frame_planar)
|
||||||
{
|
{
|
||||||
// This is slow. Hopefully doesn't happen in too many configurations.
|
// This is slow. Hopefully doesn't happen in too many configurations.
|
||||||
for (u32 i = 0; i < AUDIO_CHANNELS; i++)
|
for (u32 i = 0; i < AUDIO_CHANNELS; i++)
|
||||||
{
|
{
|
||||||
u8* output = s_converted_audio_frame->data[i] + s_audio_frame_pos * s_audio_frame_bps;
|
u8* output = s_converted_audio_frame->data[i] + s_audio_frame_pos * s_audio_frame_bps;
|
||||||
const u8* input = reinterpret_cast<u8*>(&s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS + i]);
|
const s16* input = &s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS + i];
|
||||||
for (u32 j = 0; j < this_batch; j++)
|
for (u32 j = 0; j < this_batch; j++)
|
||||||
{
|
{
|
||||||
std::memcpy(output, input, sizeof(s16));
|
s16 scaled_input = *input;
|
||||||
input += sizeof(s16) * AUDIO_CHANNELS;
|
if (volume_scale != 1.0f)
|
||||||
|
{
|
||||||
|
const float sample = static_cast<float>(scaled_input) * volume_scale;
|
||||||
|
scaled_input = static_cast<s16>(sample);
|
||||||
|
}
|
||||||
|
std::memcpy(output, &scaled_input, sizeof(s16));
|
||||||
|
|
||||||
|
input += AUDIO_CHANNELS;
|
||||||
output += s_audio_frame_bps;
|
output += s_audio_frame_bps;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Direct copy - optimal.
|
// Direct copy with volume optimal.
|
||||||
std::memcpy(s_converted_audio_frame->data[0] + s_audio_frame_pos * s_audio_frame_bps * AUDIO_CHANNELS,
|
if (volume_scale != 1.0f)
|
||||||
&s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS], this_batch * sizeof(s16) * AUDIO_CHANNELS);
|
{
|
||||||
|
const s16* input = &s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS];
|
||||||
|
s16* output = reinterpret_cast<s16*>(s_converted_audio_frame->data[0] + s_audio_frame_pos * s_audio_frame_bps * AUDIO_CHANNELS);
|
||||||
|
for (u32 i = 0; i < this_batch * AUDIO_CHANNELS; i++)
|
||||||
|
{
|
||||||
|
const float sample = static_cast<float>(input[i]) * volume_scale;
|
||||||
|
output[i] = static_cast<s16>(sample);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::memcpy(s_converted_audio_frame->data[0] + s_audio_frame_pos * s_audio_frame_bps * AUDIO_CHANNELS,
|
||||||
|
&s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS], this_batch * sizeof(s16) * AUDIO_CHANNELS);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Use swresample to convert.
|
// Use swresample to convert. Apply volume to source before conversion.
|
||||||
const u8* input = reinterpret_cast<u8*>(&s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS]);
|
const s16* input_s16 = &s_audio_buffer[s_audio_buffer_read_pos * AUDIO_CHANNELS];
|
||||||
|
const u8* input;
|
||||||
|
|
||||||
|
if (volume_scale != 1.0f)
|
||||||
|
{
|
||||||
|
// Apply volume to source samples before conversion
|
||||||
|
std::vector<s16> volume_buffer;
|
||||||
|
volume_buffer.resize(this_batch * AUDIO_CHANNELS);
|
||||||
|
for (u32 i = 0; i < this_batch * AUDIO_CHANNELS; i++)
|
||||||
|
{
|
||||||
|
const float sample = static_cast<float>(input_s16[i]) * volume_scale;
|
||||||
|
volume_buffer[i] = static_cast<s16>(sample);
|
||||||
|
}
|
||||||
|
input = reinterpret_cast<const u8*>(volume_buffer.data());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
input = reinterpret_cast<const u8*>(input_s16);
|
||||||
|
}
|
||||||
|
|
||||||
// Might be planar, so offset both buffers.
|
// Might be planar, so offset both buffers.
|
||||||
u8* output[AUDIO_CHANNELS];
|
u8* output[AUDIO_CHANNELS];
|
||||||
|
|||||||
@ -9360,6 +9360,8 @@ TRANSLATE_NOOP("FullscreenUI", "Reset System");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Hardcore mode will not be enabled until the system is reset. Do you want to reset the system now?");
|
TRANSLATE_NOOP("FullscreenUI", "Hardcore mode will not be enabled until the system is reset. Do you want to reset the system now?");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "This game has no achievements.");
|
TRANSLATE_NOOP("FullscreenUI", "This game has no achievements.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "This game has no leaderboards.");
|
TRANSLATE_NOOP("FullscreenUI", "This game has no leaderboards.");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Failed to Load State");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Failed to Save State");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Game List");
|
TRANSLATE_NOOP("FullscreenUI", "Game List");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Launch a game from images scanned from your game directories.");
|
TRANSLATE_NOOP("FullscreenUI", "Launch a game from images scanned from your game directories.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Start Game");
|
TRANSLATE_NOOP("FullscreenUI", "Start Game");
|
||||||
@ -9405,7 +9407,7 @@ TRANSLATE_NOOP("FullscreenUI", "Selects the color style to be used for Big Pictu
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "When Big Picture mode is started, the game list will be displayed instead of the main menu.");
|
TRANSLATE_NOOP("FullscreenUI", "When Big Picture mode is started, the game list will be displayed instead of the main menu.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Show a save state selector UI when switching slots instead of showing a notification bubble.");
|
TRANSLATE_NOOP("FullscreenUI", "Show a save state selector UI when switching slots instead of showing a notification bubble.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Background");
|
TRANSLATE_NOOP("FullscreenUI", "Background");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Select a custom background image to use in Big Picture Mode menus.");
|
TRANSLATE_NOOP("FullscreenUI", "Select a custom background image to use in Big Picture Mode menus.\n\nSupported formats: PNG, JPG, JPEG, BMP.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Removes the custom background image.");
|
TRANSLATE_NOOP("FullscreenUI", "Removes the custom background image.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Sets the transparency of the custom background image.");
|
TRANSLATE_NOOP("FullscreenUI", "Sets the transparency of the custom background image.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Select how to display the background image.");
|
TRANSLATE_NOOP("FullscreenUI", "Select how to display the background image.");
|
||||||
@ -9415,6 +9417,7 @@ TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when a game is started.");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when you minimize the window or switch to another application, and unpauses when you switch back.");
|
TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when you minimize the window or switch to another application, and unpauses when you switch back.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when a controller with bindings is disconnected.");
|
TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when a controller with bindings is disconnected.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when you open the quick menu, and unpauses when you close it.");
|
TRANSLATE_NOOP("FullscreenUI", "Pauses the emulator when you open the quick menu, and unpauses when you close it.");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Display a modal dialog when a save state load/save operation fails.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Determines whether a prompt will be displayed to confirm shutting down the emulator/game when the hotkey is pressed.");
|
TRANSLATE_NOOP("FullscreenUI", "Determines whether a prompt will be displayed to confirm shutting down the emulator/game when the hotkey is pressed.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Automatically saves the emulator state when powering down or exiting. You can then resume directly from where you left off next time.");
|
TRANSLATE_NOOP("FullscreenUI", "Automatically saves the emulator state when powering down or exiting. You can then resume directly from where you left off next time.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Creates a backup copy of a save state if it already exists when the save is created. The backup copy has a .backup suffix");
|
TRANSLATE_NOOP("FullscreenUI", "Creates a backup copy of a save state if it already exists when the save is created. The backup copy has a .backup suffix");
|
||||||
@ -9424,6 +9427,7 @@ TRANSLATE_NOOP("FullscreenUI", "Game Display");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Automatically switches to fullscreen mode when a game is started.");
|
TRANSLATE_NOOP("FullscreenUI", "Automatically switches to fullscreen mode when a game is started.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Switches between full screen and windowed when the window is double-clicked.");
|
TRANSLATE_NOOP("FullscreenUI", "Switches between full screen and windowed when the window is double-clicked.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Hides the mouse pointer/cursor when the emulator is in fullscreen mode.");
|
TRANSLATE_NOOP("FullscreenUI", "Hides the mouse pointer/cursor when the emulator is in fullscreen mode.");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Automatically starts Big Picture Mode instead of the regular Qt interface when PCSX2 launches.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "On-Screen Display");
|
TRANSLATE_NOOP("FullscreenUI", "On-Screen Display");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Determines how large the on-screen messages and monitors are.");
|
TRANSLATE_NOOP("FullscreenUI", "Determines how large the on-screen messages and monitors are.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "%d%%");
|
TRANSLATE_NOOP("FullscreenUI", "%d%%");
|
||||||
@ -9849,6 +9853,9 @@ TRANSLATE_NOOP("FullscreenUI", "Last Played: {}");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Size: {:.2f} MB");
|
TRANSLATE_NOOP("FullscreenUI", "Size: {:.2f} MB");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Are you sure you want to reset the play time for '{}' ({})?\n\nYour current play time is {}.\n\nThis action cannot be undone.");
|
TRANSLATE_NOOP("FullscreenUI", "Are you sure you want to reset the play time for '{}' ({})?\n\nYour current play time is {}.\n\nThis action cannot be undone.");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Login failed.\nError: {}\n\nPlease check your username and password, and try again.");
|
TRANSLATE_NOOP("FullscreenUI", "Login failed.\nError: {}\n\nPlease check your username and password, and try again.");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Failed to Load State From Backup Slot {}");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Failed to Load State From Slot {}");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Failed to Save State To Slot {}");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Left: ");
|
TRANSLATE_NOOP("FullscreenUI", "Left: ");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Top: ");
|
TRANSLATE_NOOP("FullscreenUI", "Top: ");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Right: ");
|
TRANSLATE_NOOP("FullscreenUI", "Right: ");
|
||||||
@ -9882,13 +9889,14 @@ TRANSLATE_NOOP("FullscreenUI", "AMOLED");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Fit");
|
TRANSLATE_NOOP("FullscreenUI", "Fit");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Fill");
|
TRANSLATE_NOOP("FullscreenUI", "Fill");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Stretch");
|
TRANSLATE_NOOP("FullscreenUI", "Stretch");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Center");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Tile");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Enabled");
|
TRANSLATE_NOOP("FullscreenUI", "Enabled");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Disabled");
|
TRANSLATE_NOOP("FullscreenUI", "Disabled");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Top Left");
|
TRANSLATE_NOOP("FullscreenUI", "Top Left");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Top Center");
|
TRANSLATE_NOOP("FullscreenUI", "Top Center");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Top Right");
|
TRANSLATE_NOOP("FullscreenUI", "Top Right");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Center Left");
|
TRANSLATE_NOOP("FullscreenUI", "Center Left");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Center");
|
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Center Right");
|
TRANSLATE_NOOP("FullscreenUI", "Center Right");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Bottom Left");
|
TRANSLATE_NOOP("FullscreenUI", "Bottom Left");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Bottom Center");
|
TRANSLATE_NOOP("FullscreenUI", "Bottom Center");
|
||||||
@ -10108,6 +10116,7 @@ TRANSLATE_NOOP("FullscreenUI", "Pause On Start");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Pause On Focus Loss");
|
TRANSLATE_NOOP("FullscreenUI", "Pause On Focus Loss");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Pause On Controller Disconnection");
|
TRANSLATE_NOOP("FullscreenUI", "Pause On Controller Disconnection");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Pause On Menu");
|
TRANSLATE_NOOP("FullscreenUI", "Pause On Menu");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Prompt On State Load/Save Failure");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Confirm Shutdown");
|
TRANSLATE_NOOP("FullscreenUI", "Confirm Shutdown");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Save State On Shutdown");
|
TRANSLATE_NOOP("FullscreenUI", "Save State On Shutdown");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Create Save State Backups");
|
TRANSLATE_NOOP("FullscreenUI", "Create Save State Backups");
|
||||||
@ -10117,6 +10126,7 @@ TRANSLATE_NOOP("FullscreenUI", "Enable Discord Presence");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Start Fullscreen");
|
TRANSLATE_NOOP("FullscreenUI", "Start Fullscreen");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Double-Click Toggles Fullscreen");
|
TRANSLATE_NOOP("FullscreenUI", "Double-Click Toggles Fullscreen");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Hide Cursor In Fullscreen");
|
TRANSLATE_NOOP("FullscreenUI", "Hide Cursor In Fullscreen");
|
||||||
|
TRANSLATE_NOOP("FullscreenUI", "Start Big Picture UI");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "OSD Scale");
|
TRANSLATE_NOOP("FullscreenUI", "OSD Scale");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "OSD Messages Position");
|
TRANSLATE_NOOP("FullscreenUI", "OSD Messages Position");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "OSD Performance Position");
|
TRANSLATE_NOOP("FullscreenUI", "OSD Performance Position");
|
||||||
@ -10297,7 +10307,6 @@ TRANSLATE_NOOP("FullscreenUI", "Delete Save");
|
|||||||
TRANSLATE_NOOP("FullscreenUI", "Close Menu");
|
TRANSLATE_NOOP("FullscreenUI", "Close Menu");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Default Boot");
|
TRANSLATE_NOOP("FullscreenUI", "Default Boot");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Delete State");
|
TRANSLATE_NOOP("FullscreenUI", "Delete State");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Failed to Load State");
|
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Full Boot");
|
TRANSLATE_NOOP("FullscreenUI", "Full Boot");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Reset Play Time");
|
TRANSLATE_NOOP("FullscreenUI", "Reset Play Time");
|
||||||
TRANSLATE_NOOP("FullscreenUI", "Confirm Reset");
|
TRANSLATE_NOOP("FullscreenUI", "Confirm Reset");
|
||||||
|
|||||||
@ -1072,6 +1072,7 @@ void Pcsx2Config::GSOptions::LoadSave(SettingsWrapper& wrap)
|
|||||||
SettingsWrapBitfieldEx(VideoCaptureWidth, "VideoCaptureWidth");
|
SettingsWrapBitfieldEx(VideoCaptureWidth, "VideoCaptureWidth");
|
||||||
SettingsWrapBitfieldEx(VideoCaptureHeight, "VideoCaptureHeight");
|
SettingsWrapBitfieldEx(VideoCaptureHeight, "VideoCaptureHeight");
|
||||||
SettingsWrapBitfieldEx(AudioCaptureBitrate, "AudioCaptureBitrate");
|
SettingsWrapBitfieldEx(AudioCaptureBitrate, "AudioCaptureBitrate");
|
||||||
|
SettingsWrapBitfieldEx(AudioCaptureVolume, "AudioCaptureVolume");
|
||||||
|
|
||||||
SettingsWrapEntry(Adapter);
|
SettingsWrapEntry(Adapter);
|
||||||
SettingsWrapEntry(HWDumpDirectory);
|
SettingsWrapEntry(HWDumpDirectory);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user