Files
AnyPS5/docs/dev/debt/libSceVideoRecordingP.md
T

3.3 KiB

libSceVideoRecordingP technical debt

Unknown function info

  • _sceVideoRecordingQueryParam_nid_postfix: the supplied module reads a 64-bit size and writes a 32-bit mode at offset 12 for sizes at least 16, plus a 32-bit option at offset 28 for sizes at least 64. Mode/option meanings remain unresolved; the protected implementation is unchanged.

  • sceVideoRecordingCloseByHandle, sceVideoRecordingGetInfoByHandle - native handles are context pointers. Recording state and per-handle queries remain unimplemented.

  • sceVideoRecordingCopyBGRAtoNV12 - the destination, source, 32-bit width and height arguments are confirmed. Pixel conversion remains unimplemented.

  • sceVideoRecordingGetSupportInfo, sceVideoRecordingGetVideoOutMode - GetSupportInfo writes an 18-byte payload whose fields remain unresolved. GetVideoOutMode takes a four-byte output confirmed by the native recording assembly and Avcap2 IPC descriptor; the mode values remain unresolved. Both exports remain unimplemented.

  • sceVideoRecordingInit, sceVideoRecordingTerm (libSceVideoRecordingP) - parameterless initialization and termination stubs; unimplemented and throw NotImplemented_nid_no_patch

  • sceVideoRecordingInitialize: the native initializer consumes no caller arguments; the former optional parameter is not read by the Avcap2 initializer or recording setup. Its unused parameter slot is retained because the protected body references it.

  • sceVideoRecordingOpen, sceVideoRecordingOpen2 - the 32-byte and 40-byte parameter variants, four argument registers and 32-bit heap size are recovered. Mode, output mode, option and format semantics remain incomplete. QueryHddSize2 returns a signed 64-bit size or error; recording and sizing exports remain unimplemented.

  • Handle and support queries - native recording handles are context pointers, and GetSupportInfo writes 18 bytes. Support payload field semantics remain incomplete. RestModeProcessStart, RestModeProcessGetStatus and SendCommand consume no caller arguments in the supplied native module; their existing unused parameter slots remain because the protected bodies reference those parameter names.

Functional

  • sceVideoRecordingGetStatus (libSceVideoRecordingP) always returns 0, None ("The recorder is not open") in SharpProspero's VideoRecordingStatus, also listed in shadPS4. It is true here because sceVideoRecordingOpen throws, so no recorder is ever open. Unverified: whether the console returns 0 or an error before sceVideoRecordingInit/sceVideoRecordingInitialize, which throw, and when it reports Running (1) or Paused (2)