mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-01-29 00:33:01 +00:00
Fix audio renderer not resetting after cellAudioOutConfigure() was called
This commit is contained in:
parent
ebabdd37b4
commit
6bdf415adb
@ -527,13 +527,12 @@ namespace audio
|
||||
.time_stretching_threshold = g_cfg.audio.time_stretching_threshold,
|
||||
.convert_to_s16 = static_cast<bool>(g_cfg.audio.convert_to_s16),
|
||||
.dump_to_file = static_cast<bool>(g_cfg.audio.dump_to_file),
|
||||
.format = g_cfg.audio.format,
|
||||
.renderer = g_cfg.audio.renderer,
|
||||
.provider = g_cfg.audio.provider
|
||||
};
|
||||
}
|
||||
|
||||
void configure_audio()
|
||||
void configure_audio(bool force_reset)
|
||||
{
|
||||
if (g_cfg.audio.provider != audio_provider::cell_audio)
|
||||
{
|
||||
@ -546,12 +545,12 @@ namespace audio
|
||||
const auto new_raw = get_raw_config();
|
||||
|
||||
if (const auto raw = g_audio.cfg.raw;
|
||||
force_reset ||
|
||||
raw.desired_buffer_duration != new_raw.desired_buffer_duration ||
|
||||
raw.buffering_enabled != new_raw.buffering_enabled ||
|
||||
raw.time_stretching_threshold != new_raw.time_stretching_threshold ||
|
||||
raw.enable_time_stretching != new_raw.enable_time_stretching ||
|
||||
raw.convert_to_s16 != new_raw.convert_to_s16 ||
|
||||
raw.format != new_raw.format ||
|
||||
raw.renderer != new_raw.renderer ||
|
||||
raw.dump_to_file != new_raw.dump_to_file)
|
||||
{
|
||||
|
@ -201,7 +201,6 @@ struct cell_audio_config
|
||||
s64 time_stretching_threshold = 0;
|
||||
bool convert_to_s16 = false;
|
||||
bool dump_to_file = false;
|
||||
audio_format format = audio_format::stereo;
|
||||
audio_renderer renderer = audio_renderer::null;
|
||||
audio_provider provider = audio_provider::none;
|
||||
};
|
||||
@ -405,5 +404,5 @@ using cell_audio = named_thread<cell_audio_thread>;
|
||||
namespace audio
|
||||
{
|
||||
cell_audio_config::raw_config get_raw_config();
|
||||
void configure_audio();
|
||||
void configure_audio(bool force_reset = false);
|
||||
}
|
||||
|
@ -415,7 +415,7 @@ error_code cellAudioOutConfigure(u32 audioOut, vm::ptr<CellAudioOutConfiguration
|
||||
cfg.out.at(audioOut).state = CELL_AUDIO_OUT_OUTPUT_STATE_DISABLED;
|
||||
}
|
||||
|
||||
audio::configure_audio();
|
||||
audio::configure_audio(true);
|
||||
audio::configure_rsxaudio();
|
||||
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user