Commit Graph

5 Commits

Author SHA1 Message Date
David 9ac583bddd feat(libSceAudioIn): implement sceAudioInHqOpen and sceAudioInAsyncOpen
Both open the same SDL capture port as sceAudioInOpen, so Input,
GetSilentState and Close work on their handles. HqOpen accepts only a
128-sample grain at 48 kHz (SharpProspero, KytyPS5); AsyncOpen returns
INVALID_SIZE above 384 samples (SharpProspero). Values the sources
disagree on throw. Format 0x10 still throws: only KytyPS5 accepts it.

Imported by FMOD-based titles, The Smurfs Dreams (PPSA21607) and Astro
Bot (PPSA21564); Ghost of Yotei (PPSA26344) calls sceAudioInOpen.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit 16bfdf928d0a2da0b4473db2633a2e270538cbf5)
2026-10-11 15:03:16 +00:00
Hannah Lyons 6f1ef27953 feat(libSceAudioIn): export sceAudioInInit 2026-10-10 16:25:50 -04:00
Adrià Franch 25000541ad test: give fixed temp files a random suffix so parallel runs don't collide
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-08 08:31:16 +02:00
Adrià Franch 7e5ce945e1 feat(libSceAudioIn): implement sceAudioInClose and throw for the unverified 0x10 format
Close releases the port and its host device; Input and Close on a port
that is capturing return BUSY. Format codes follow the PS5 SDK bindings
(SharpProspero) and KytyPS5: 1/2 S16 mono/stereo, 0x11/0x12 float.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-04 08:39:33 +02:00
Adrià Franch 29aa4f3cdf feat(libSceAudioIn): capture from the host's recording device
sceAudioInOpen validates the port and opens the default SDL recording
device in the requested format; sceAudioInInput returns one grain of
captured samples, padded with silence when the device falls behind and
keeping at most four grains of latency. Without a recording device a
port reports DEVICE_NONE in sceAudioInGetSilentState and delivers
silence at its sample rate.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-04 08:37:09 +02:00