audio: implement sceAudioOutGetSystemState

This commit is contained in:
nmzik committed 2026-10-21 19:17:50 +02:00
1 parent 7b7294aa03
commit 2944d126b3
3 files changed
+22

No files matched your search

+19
View File
@@ -841,6 +841,12 @@ struct AudioOutPortState {
uint64_t reserved2[2]; uint64_t reserved2[2];
}; };
struct AudioOutSystemState {
float loudness;
uint8_t reserved8[4];
uint64_t reserved64[3];
};
int KYTY_SYSV_ABI AudioOutInit() { int KYTY_SYSV_ABI AudioOutInit() {
PRINT_NAME(); PRINT_NAME();
@@ -952,6 +958,19 @@ int KYTY_SYSV_ABI AudioOutGetPortState(int handle, AudioOutPortState* state) {
return OK; return OK;
} }
int KYTY_SYSV_ABI AudioOutGetSystemState(AudioOutSystemState* state) {
PRINT_NAME();
if (state == nullptr) {
return AUDIO_OUT_ERROR_INVALID_POINTER;
}
// Loudness is undefined until measurement starts; no measurement is emulated.
*state = {};
return OK;
}
int KYTY_SYSV_ABI AudioOutSetVolume(int handle, uint32_t flag, int* vol) { int KYTY_SYSV_ABI AudioOutSetVolume(int handle, uint32_t flag, int* vol) {
PRINT_NAME(); PRINT_NAME();
+2
View File
@@ -18,6 +18,7 @@ namespace AudioOut {
struct AudioOutOutputParam; struct AudioOutOutputParam;
struct AudioOutPortState; struct AudioOutPortState;
struct AudioOutSystemState;
int KYTY_SYSV_ABI AudioOutInit(); int KYTY_SYSV_ABI AudioOutInit();
int KYTY_SYSV_ABI AudioOutOpen(int user_id, int type, int index, uint32_t len, uint32_t freq, int KYTY_SYSV_ABI AudioOutOpen(int user_id, int type, int index, uint32_t len, uint32_t freq,
@@ -27,6 +28,7 @@ int KYTY_SYSV_ABI AudioOutOutputs(AudioOutOutputParam* param, uint32_t num);
int KYTY_SYSV_ABI AudioOutOutput(int handle, const void* ptr); int KYTY_SYSV_ABI AudioOutOutput(int handle, const void* ptr);
int KYTY_SYSV_ABI AudioOutClose(int handle); int KYTY_SYSV_ABI AudioOutClose(int handle);
int KYTY_SYSV_ABI AudioOutGetPortState(int handle, AudioOutPortState* state); int KYTY_SYSV_ABI AudioOutGetPortState(int handle, AudioOutPortState* state);
int KYTY_SYSV_ABI AudioOutGetSystemState(AudioOutSystemState* state);
} // namespace AudioOut } // namespace AudioOut
+1
View File
@@ -131,6 +131,7 @@ LIB_DEFINE(InitAudio_1_AudioOut) {
LIB_FUNC("QOQtbeDqsT4", AudioOut::AudioOutOutput); LIB_FUNC("QOQtbeDqsT4", AudioOut::AudioOutOutput);
LIB_FUNC("s1--uE9mBFw", AudioOut::AudioOutClose); LIB_FUNC("s1--uE9mBFw", AudioOut::AudioOutClose);
LIB_FUNC("GrQ9s4IrNaQ", AudioOut::AudioOutGetPortState); LIB_FUNC("GrQ9s4IrNaQ", AudioOut::AudioOutGetPortState);
LIB_FUNC("R5hemoKKID8", AudioOut::AudioOutGetSystemState);
} }
} // namespace LibAudioOut } // namespace LibAudioOut