Commit Graph
64 Commits
Author SHA1 Message Date
Dean 1c6e10f170 Merge pull request #8693 from JAB-dev/fix/audioout2-speaker-info-errors
fix(libSceAudioOut): report not-initialized, null-pointer and flag errors from sceAudioOut2GetSpeakerInfo
2026-10-25 07:32:15 +13:00
JAB-devandClaude Sonnet 5.5 df53f2af4d docs(libSceAudioOut): keep the MasteringInit gap and point the repeat entry at AudioOut.cpp
`sceAudioOut2MasteringInit` still does not return the `0x80268006` the console returns before `sceAudioOut2Initialize`, and the entry no longer justifies that with the initialization being untracked, which this change makes untrue. The new repeat entry links `AudioOut.cpp`, where both initializers are defined.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-24 19:36:41 +02:00
JAB-devandClaude Sonnet 5.5 4be45df841 test(libSceAudioOut): stop asserting a repeated AudioOut2 init and record the init gaps
`sceAudioOutInit` now initializes AudioOut2, so the extra `sceAudioOut2Initialize()` in the speaker-info test after a legacy init pinned a repeated direct-init result that no run on the console covered; the test keeps the legacy-init to speaker-info success check. The debt file records that a repeated `sceAudioOutInit` returns 0 here against `0x8026000e` on the firmware and that a repeated `sceAudioOut2Initialize` is unmeasured, describes the flag-1 selector as the unidentified per-process libkernel value with BunnyFl's `0x14FFFFF` boundary, and splits the speaker-info entry so no entry passes the length limit.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-24 18:32:14 +02:00
JAB-dev 032b4ff6da Merge remote-tracking branch 'origin/main' into HEAD 2026-10-24 18:01:59 +02:00
Adrià 87666fc5d6 Merge pull request #8525 from MarrasFederico/feat/audio-out-mastering
feat(libSceAudioOut): answer the legacy mastering calls without a mastering stage
2026-10-24 14:21:12 +02:00
Benjamin Cortez b0b7198b7a feat(libSceAudioOut): implement sceAudioOutGetSystemState 2026-10-23 20:31:12 +02:00
JAB-devandClaude Sonnet 5.5 1c335b6ea9 Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/audioout2-speaker-info-errors
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 12:33:19 +02:00
hypermistandClaude Opus 5.5 1cee26eba7 Merge remote-tracking branch 'upstream/main' into fix/audioout2-mastering-state
Keep the shared Init/InitEx validation over the InitEx body from #9349.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01SNqSvnFwRBz3D76n476yw6
2026-10-23 19:12:29 +13:00
Federico Marras cf06f64c29 Merge remote-tracking branch 'upstream/main' into feat/audio-out-mastering
# Conflicts:
#	docs/dev/debt/libSceAudioOut.md
2026-10-23 07:11:02 +02:00
Dean 18b9b17664 Merge pull request #9838 from JAB-dev/fix/audioout2-system-debug-state-validation
fix(libSceAudioOut): validate the debug state id and size in sceAudioOut2SetSystemDebugState
2026-10-23 15:36:06 +13:00
Dean bacd18e63a Merge pull request #9349 from MarcZX10/codex/audioout2-initex-console-flag31
feat(libSceAudioOut): support mastering InitEx flags
2026-10-23 12:57:51 +13:00
JAB-devandClaude Sonnet 5.5 7281c9b68b Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/audioout2-system-debug-state-validation
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-23 00:28:54 +02:00
Dean 5f83572bfb Merge pull request #9032 from hypermoist/fix/audioout2-lo-terminate
fix(libSceAudioOut): return 0 from sceAudioOut2LoTerminate and forward sceAudioOut2InitializeEx
2026-10-23 09:43:36 +13:00
JAB-devandClaude Sonnet 5.5 611db84ca5 fix(libSceAudioOut): validate the debug state id and size in sceAudioOut2SetSystemDebugState
sceAudioOut2SetSystemDebugState accepts only the loudness debug state (id 1, 8-byte param); other ids and sizes return the invalid param error and a null pointer returns the invalid pointer error. The one debug state the console also accepts, id 0x20 with a 4-byte param, throws.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-22 18:09:35 +02:00
Federico Marras 3a298d5c2a docs(libSceAudioOut): drop the duplicate ids link from the legacy mastering debt entry 2026-10-22 07:02:30 +02:00
Federico Marras b2ec63f7c7 docs(libSceAudioOut): shorten the legacy mastering debt entry 2026-10-22 07:02:07 +02:00
Federico Marras c764bdc087 Merge remote-tracking branch 'upstream/main' into feat/audio-out-mastering
# Conflicts:
#	docs/dev/debt/libSceAudioOut.md
2026-10-22 07:01:43 +02:00
hypermist 7ef7653590 Merge remote-tracking branch 'upstream/main' into fix/audioout2-mastering-state
# Conflicts:
#	docs/dev/debt/libSceAudioOut.md
2026-10-22 14:20:02 +13:00
JAB-devandClaude Sonnet 5.5 43a76fcdb5 Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/audioout2-speaker-info-errors
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-22 00:02:33 +02:00
MarcZX10 023139d12c feat(libSceAudioOut): support mastering InitEx flags 2026-10-21 19:05:18 +00:00
boykopovar b5d626bc21 fix(audioout): enforce native monitor buffer validation 2026-10-21 21:51:55 +03:00
boykopovar f7a7be1a27 fix(audioout2): restore optional attribute outputs and errors 2026-10-21 21:51:54 +03:00
boykopovar 62e4e204f1 fix(audioout): restore device id open argument slots 2026-10-21 21:50:50 +03:00
boykopovar 11c5d585e6 fix(audio): correct mix level and 3d latency validation 2026-10-21 21:48:01 +03:00
boykopovar fbb28d6d62 docs(debt): remove the resolved keyboard conversion signature 2026-10-21 21:47:00 +03:00
Federico Marras bef2578837 fix(libSceAudioOut): throw for any legacy mastering flags while their effect is disputed 2026-10-21 13:52:55 +02:00
Federico Marras c33c37d57b Merge remote-tracking branch 'upstream/main' into feat/audio-out-mastering 2026-10-21 13:46:34 +02:00
hypermistandClaude Opus 5.5 e0f3e860a2 docs(libSceAudioOut): list sceAudioOut2LoTerminate under Silent stubs
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 23:11:19 +13:00
hypermistandClaude Opus 5.5 f347e96e38 fix(libSceAudioOut): return 0 from sceAudioOut2LoTerminate and forward sceAudioOut2InitializeEx
The PS5 module's sceAudioOut2LoTerminate stops the low-latency service
and returns 0 whether or not it runs; sceAudioOut2LoInit starts no
service here. sceAudioOut2InitializeEx stores its argument and runs
sceAudioOut2Initialize.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 23:10:16 +13:00
hypermistandClaude Opus 5.5 5a7ef76100 fix(libSceAudioOut): track mastering initialization as the console does
The PS5 module keeps one mastering-initialized flag. A repeated
initialization returns 0 before the flags are checked; otherwise
sceAudioOut2MasteringInit accepts only 0 and sceAudioOut2MasteringInitEx
also bit 31, and other flags return 0x80268201. Term, GetState and
SetParam return 0x80268203 before initialization, GetState returns
0x8026800C for a null state and SetParam 0x80268205 for flags above 1.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 23:03:49 +13:00
JAB-devandClaude Sonnet 5.5 4b0c16a173 fix(libSceAudioOut): report not-initialized, null-pointer and flag errors from sceAudioOut2GetSpeakerInfo
sceAudioOut2GetSpeakerInfo now returns the SDK AudioOut2 errors: not initialized before sceAudioOut2Initialize, invalid pointer for a null result and invalid param for flags above 1. sceAudioOut2Initialize records that it ran.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-20 23:13:00 +02:00
Federico Marras 0d6ba22d9f feat(libSceAudioOut): serve the low-latency AudioOut2 calls through their standard counterparts 2026-10-20 17:16:40 +02:00
Federico Marras 3817558ef1 feat(libSceAudioOut): answer the legacy mastering calls without a mastering stage 2026-10-20 17:08:13 +02:00
Federico Marras a97a04f0c0 feat(libSceAudioOut): answer the legacy mastering calls without a mastering stage 2026-10-20 17:07:53 +02:00
Yuri Olive 29e9ab36e1 fix(libSceAudioOut): drop names missing from the pinned aerolib 2026-10-20 06:25:40 -03:00
Yuri Olive 3eee2b281f fix(libSceAudioOut): leave sceAudioOutGetSystemState to #5965 2026-10-19 15:17:06 -03:00
Yuri Olive df6b81f83b feat(libSceAudioOut): export missing firmware audio output interfaces 2026-10-19 14:56:52 -03:00
Owes Mehboob 33cd848ba9 docs(debt): drop implemented functions from unknown-signature lists 2026-10-19 14:34:26 +02:00
Adrià c0607cc4bc Merge pull request #6871 from hugodearaujo/fix/audioout2-speaker-angles
fix(libSceAudioOut): report the front left speaker at +30 degrees, as the console does
2026-10-19 14:19:16 +02:00
Romans Pokrovskis 4b7f46d79c Merge remote-tracking branch 'origin/main' into codex/review6860-cadence-maineb1 2026-10-19 01:42:35 +03:00
primesoul-web 3f03bc0e24 feat(libs): finish the CesCs conversions and the AudioOut, AudioIn and GameUpdate exports
libSceCesCs goes to 17 of 17: three-byte EUC-JP JIS X 0212 (0x8F)
characters convert through a table read from the Unicode consortium's
JIS0212.TXT, both directions, so sceCesEucJpToUcs2, the MbcsStrTo*
and *Get*Len forms and the context conversions accept them, and a
character with cells in both JIS X 0208 and JIS X 0212 still encodes
to the two-byte form. sceCesRefersUcsProfileCp1250 returns a profile
with the Windows-1250 table of Microsoft's bestfit1250.txt, accepted
by the SBC and context conversions.

The AudioOut HDMI bitstream Sys family follows the Ex ports: SysOpen
opens a port only for mode 5, the TrueHD MAT route EVO-PLAYER-PS5
reads from the firmware 12.70 mode tables, paced at 192 kHz with no
host device; SysConfigureOutput accepts the observed HDMI MAT switch;
SysClose closes a Sys port. sceAudioOut2MasteringGetState fills the
states by states id with the descriptors KytyPS5 declares, SetParam
answers a null parameter with the mastering invalid-API-parameter
error, Set3DLatency follows KytyPS5's output validation (0x80268001
above 2, any user), SetSystemDebugState records the debug state id,
and GetSpeakerArrayCoefficients returns the front pair KytyPS5 and
prosper both return.

sceAudioInOpen accepts param 0x10 as float mono like KytyPS5; HqOpen
answers a longer grain or a lower rate with the invalid-size and
invalid-frequency errors; AsyncOpen also accepts the 384-sample grain
SharpProspero documents. sceGameUpdateGetAddcontLatestVersion answers
a null entitlement label with 0x80412803, as prosper does.
2026-10-18 18:52:36 +02:00
Romans Pokrovskis a2d6c16bcd fix(audio): route legacy vibration PCM with per-port timing 2026-10-18 10:07:29 +03:00
Dean 532f3e7b89 Merge pull request #6216 from eljackjoestar-cmd/fix/audioout2-completed-grain-backlog
fix(audio): retain completed AudioOut2 grains until pushed
2026-10-18 02:06:50 +13:00
hugodearaujo 7b55176fa5 fix(libSceAudioOut): report the front left speaker at +30 degrees, as the console does
A PS5 (firmware 13.60) reports the front left speaker of its speaker info at +30 degrees and the front right one at -30, and -360 for the azimuth and elevation of every empty slot, in every HDMI device type and channel setting it offered. sceAudioOut2GetSpeakerInfo reported the front pair the other way round and empty slots as 0, the front centre direction. The type stays 0: the console's type followed the HDMI device type, and it reported 0 with the device set to TV.
2026-10-16 12:06:44 -03:00
fdfawef324andClaude Opus 5.5 2321f1ac7f fix(libSceAudioOut): count completed AudioOut2 grains in the queue level
sceAudioOut2ContextGetQueueLevel left out the grains that
sceAudioOut2ContextAdvance completed and no push had consumed yet. While
pushes filled the 40 ms cushion the level stayed at 0, so a title that
renders as many grains as the level leaves room for and pushes them on
another thread rendered a full queue again after each push. PPSA23226's
Wwise sink does that and stopped once more than 16 completed grains
awaited a push.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-15 12:36:14 -04:00
eljackjoestar-cmd 6575aa217d fix(audio): retain completed AudioOut2 grains until pushed 2026-10-15 13:06:45 +04:00
virp-mta 2b4cb387aa feat(libSceNpCommerce): implement sceNpCommerceDialogOpen2 2026-10-15 07:39:34 +13:00
Adrià 706ad6c20c Merge pull request #5198 from eljackjoestar-cmd/codex/audioout2-advance-grains
fix(audio): preserve completed AudioOut2 grains across threads
2026-10-14 20:22:51 +02:00
Adrià fe1ccd79b7 Merge pull request #4778 from xXPBSXx/fix/audioout2-port-state-channels-v2
fix(libSceAudioOut): report the port's channel count from sceAudioOut2PortGetState
2026-10-14 19:32:58 +02:00
eljackjoestar-cmd bb4ec482d2 fix(audio): preserve completed AudioOut2 grains across threads 2026-10-14 19:18:32 +04:00