Files
AnyPS5/core/libs/prx/libSceGameLiveStreaming/Export.cpp
T
XairRrR c642428e82 feat(libs): implement sceGameLiveStreamingGetCurrentStatus2
The status layout is shadPS4's OrbisGameLiveStreamingStatus2 (72
bytes). Live streaming is not supported, so the call reports that no
stream is on air, with an invalid user id; a null status throws.

Uncharted: Legacy of Thieves Collection (PPSA05684) stopped at sceGameLiveStreamingGetCurrentStatus2.
2026-10-09 23:56:40 +02:00

44 lines
1.1 KiB
C++

#include <cstdint>
#include <cstddef>
#include "SceTypes.hpp"
#include "prx/libc/include/General.hpp"
#include "prx/libSceUserService/UserService.hpp"
#include <cstring>
struct GameLiveStreamingStatus2 {
std::int32_t userId;
bool isOnAir;
std::uint8_t align[3];
std::uint32_t spectatorCounts;
std::uint32_t textMessageCounts;
std::uint32_t commandMessageCounts;
std::uint32_t broadcastVideoResolution;
std::uint8_t reserved[48];
};
static_assert(sizeof(GameLiveStreamingStatus2) == 72);
extern "C" {
int APS5_VABI sceGameLiveStreamingInitialize(size_t heap_size) {
if (heap_size == 0) APS5_INVALID_ARG_EX;
return 0;
}
int APS5_VABI sceGameLiveStreamingTerminate(void) {
return 0;
}
int APS5_VABI sceGameLiveStreamingGetCurrentStatus2(GameLiveStreamingStatus2* status) {
if (status == nullptr) APS5_INVALID_ARG_EX;
std::memset(status, 0, sizeof(*status));
status->userId = USER_SERVICE_USER_ID_INVALID;
return 0;
}
int APS5_VABI sceGameLiveStreamingGetProgramInfo() {
NotImplemented_nid_no_patch(__func__);
return 0;
}
}