mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-12-23 13:31:51 +01:00
Avoid constantly signalling audren DSP done event
This was causing a significant amount of sched thrashing and pinning a core to 100% as games constantly updated audren, now change it to only signal on buffer release.
This commit is contained in:
parent
7e7a792dc5
commit
ce0e032255
@ -7,7 +7,7 @@
|
||||
namespace skyline::service::audio::IAudioRenderer {
|
||||
IAudioRenderer::IAudioRenderer(const DeviceState &state, ServiceManager &manager, AudioRendererParameters ¶meters)
|
||||
: systemEvent(std::make_shared<type::KEvent>(state, true)), parameters(parameters), BaseService(state, manager) {
|
||||
track = state.audio->OpenTrack(constant::ChannelCount, constant::SampleRate, []() {});
|
||||
track = state.audio->OpenTrack(constant::ChannelCount, constant::SampleRate, [&]() {systemEvent->Signal();});
|
||||
track->Start();
|
||||
|
||||
memoryPools.resize(parameters.effectCount + parameters.voiceCount * 4);
|
||||
@ -69,7 +69,6 @@ namespace skyline::service::audio::IAudioRenderer {
|
||||
effects[i].ProcessInput(effectsIn[i]);
|
||||
|
||||
UpdateAudio();
|
||||
systemEvent->Signal();
|
||||
|
||||
UpdateDataHeader outputHeader{
|
||||
.revision = constant::RevMagic,
|
||||
|
Loading…
Reference in New Issue
Block a user