summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar FearlessTobi2023-08-30 18:29:43 +0200
committerGravatar FearlessTobi2023-08-30 18:29:43 +0200
commita7a5835ffb75f13fbb8d895f6dab756e8ddacb1e (patch)
tree409c834c44cd80e7dabd681b87b4864d7f87d11e
parentMerge pull request #11380 from t895/settings-integration (diff)
downloadyuzu-a7a5835ffb75f13fbb8d895f6dab756e8ddacb1e.tar.gz
yuzu-a7a5835ffb75f13fbb8d895f6dab756e8ddacb1e.tar.xz
yuzu-a7a5835ffb75f13fbb8d895f6dab756e8ddacb1e.zip
hwopus: Implement GetWorkBufferSizeExEx
Allows Sea of Stars to boot. Fixes https://github.com/yuzu-emu/yuzu/issues/11415.
-rw-r--r--src/core/hle/service/audio/hwopus.cpp6
-rw-r--r--src/core/hle/service/audio/hwopus.h1
2 files changed, 6 insertions, 1 deletions
diff --git a/src/core/hle/service/audio/hwopus.cpp b/src/core/hle/service/audio/hwopus.cpp
index 4a8276ed1..1557e6088 100644
--- a/src/core/hle/service/audio/hwopus.cpp
+++ b/src/core/hle/service/audio/hwopus.cpp
@@ -267,6 +267,10 @@ void HwOpus::GetWorkBufferSizeEx(HLERequestContext& ctx) {
267 GetWorkBufferSize(ctx); 267 GetWorkBufferSize(ctx);
268} 268}
269 269
270void HwOpus::GetWorkBufferSizeExEx(HLERequestContext& ctx) {
271 GetWorkBufferSizeEx(ctx);
272}
273
270void HwOpus::GetWorkBufferSizeForMultiStreamEx(HLERequestContext& ctx) { 274void HwOpus::GetWorkBufferSizeForMultiStreamEx(HLERequestContext& ctx) {
271 OpusMultiStreamParametersEx param; 275 OpusMultiStreamParametersEx param;
272 std::memcpy(&param, ctx.ReadBuffer().data(), ctx.GetReadBufferSize()); 276 std::memcpy(&param, ctx.ReadBuffer().data(), ctx.GetReadBufferSize());
@@ -409,7 +413,7 @@ HwOpus::HwOpus(Core::System& system_) : ServiceFramework{system_, "hwopus"} {
409 {6, &HwOpus::OpenHardwareOpusDecoderForMultiStreamEx, 413 {6, &HwOpus::OpenHardwareOpusDecoderForMultiStreamEx,
410 "OpenHardwareOpusDecoderForMultiStreamEx"}, 414 "OpenHardwareOpusDecoderForMultiStreamEx"},
411 {7, &HwOpus::GetWorkBufferSizeForMultiStreamEx, "GetWorkBufferSizeForMultiStreamEx"}, 415 {7, &HwOpus::GetWorkBufferSizeForMultiStreamEx, "GetWorkBufferSizeForMultiStreamEx"},
412 {8, nullptr, "GetWorkBufferSizeExEx"}, 416 {8, &HwOpus::GetWorkBufferSizeExEx, "GetWorkBufferSizeExEx"},
413 {9, nullptr, "GetWorkBufferSizeForMultiStreamExEx"}, 417 {9, nullptr, "GetWorkBufferSizeForMultiStreamExEx"},
414 }; 418 };
415 RegisterHandlers(functions); 419 RegisterHandlers(functions);
diff --git a/src/core/hle/service/audio/hwopus.h b/src/core/hle/service/audio/hwopus.h
index 91d9998ac..90867bf74 100644
--- a/src/core/hle/service/audio/hwopus.h
+++ b/src/core/hle/service/audio/hwopus.h
@@ -34,6 +34,7 @@ private:
34 void OpenHardwareOpusDecoderForMultiStreamEx(HLERequestContext& ctx); 34 void OpenHardwareOpusDecoderForMultiStreamEx(HLERequestContext& ctx);
35 void GetWorkBufferSize(HLERequestContext& ctx); 35 void GetWorkBufferSize(HLERequestContext& ctx);
36 void GetWorkBufferSizeEx(HLERequestContext& ctx); 36 void GetWorkBufferSizeEx(HLERequestContext& ctx);
37 void GetWorkBufferSizeExEx(HLERequestContext& ctx);
37 void GetWorkBufferSizeForMultiStreamEx(HLERequestContext& ctx); 38 void GetWorkBufferSizeForMultiStreamEx(HLERequestContext& ctx);
38}; 39};
39 40