mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-02 12:56:05 +00:00
Both modules route every decode export through one worker. Its checks run in this order: state, packet, size, PCM pointer, capacity, then a priority outside 20..100 (+0xA), then the state check (+1). Decode passes priority 40. The float exports decode 16-bit PCM into capacity / 4 * 2 bytes of the caller's buffer and widen each sample in place, dividing positive samples by 32767 and the rest by 32768. They return the float byte count. The OpusDec *AndTimeout exports take a timeout for the AJM batch wait and a pointer that receives the batch ID only when that wait fails. The host decode is synchronous, so neither is used; the debt entry records this. Read from libSceOpusDec.sprx and libSceOpusCeltDec.sprx, firmware 12.00, not measured on a console. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01SNqSvnFwRBz3D76n476yw6