diff --git a/src/core/hle/service/audio/audio_controller.cpp b/src/core/hle/service/audio/audio_controller.cpp index 7a51d1023..f2ebeaf68 100644 --- a/src/core/hle/service/audio/audio_controller.cpp +++ b/src/core/hle/service/audio/audio_controller.cpp @@ -57,6 +57,7 @@ IAudioController::IAudioController(Core::System& system_) {40, nullptr, "GetSystemInformationForDebug"}, {41, nullptr, "SetVolumeButtonLongPressTime"}, {42, nullptr, "SetNativeVolumeForDebug"}, + {5000, D<&IAudioController::Unknown5000>, "Unknown5000"}, {10000, nullptr, "NotifyAudioOutputTargetForPlayReport"}, {10001, nullptr, "NotifyAudioOutputChannelCountForPlayReport"}, {10002, nullptr, "NotifyUnsupportedUsbOutputDeviceAttachedForPlayReport"}, @@ -68,6 +69,9 @@ IAudioController::IAudioController(Core::System& system_) {10105, nullptr, "BindAudioOutputChannelCountUpdateEventForPlayReport"}, {10106, nullptr, "GetDefaultAudioOutputTargetForPlayReport"}, {50000, nullptr, "SetAnalogInputBoostGainForPrototyping"}, + {50001, nullptr, "OverrideDefaultTargetForDebug"}, + {50003, nullptr, "SetForceOverrideExternalDeviceNameForDebug"}, + {50004, nullptr, "ClearForceOverrideExternalDeviceNameForDebug"} }; // clang-format on @@ -176,4 +180,13 @@ Result IAudioController::AcquireTargetNotification( R_SUCCEED(); } +Result IAudioController::Unknown5000(Out> out_audio_controller) { + LOG_DEBUG(Audio, "Creating duplicate audio controller interface"); + + // Return a new reference to this controller instance + *out_audio_controller = SharedFrom(this); + + R_SUCCEED(); +} + } // namespace Service::Audio diff --git a/src/core/hle/service/audio/audio_controller.h b/src/core/hle/service/audio/audio_controller.h index d37c4843e..b7645332e 100644 --- a/src/core/hle/service/audio/audio_controller.h +++ b/src/core/hle/service/audio/audio_controller.h @@ -49,6 +49,7 @@ private: Result SetSpeakerAutoMuteEnabled(bool is_speaker_auto_mute_enabled); Result IsSpeakerAutoMuteEnabled(Out out_is_speaker_auto_mute_enabled); Result AcquireTargetNotification(OutCopyHandle out_notification_event); + Result Unknown5000(Out> out_audio_controller); KernelHelpers::ServiceContext service_context;