Implement PSP audio playback via native sceAudio

Reserves a hardware channel per stream (64-aligned sample count,
mono/stereo format) and outputs through sceAudioOutputPannedBlocking,
giving PSP real stereo panning from directionality. Enforces the
44100Hz hardware-channel constraint with a clear error instead of
silently mispitching, and drops the shared test tone to 44100Hz to
match. Verified via the dusk-psp toolchain and a headless PPSSPP run
(correct channel reservation, onEnd firing once, no errors).
This commit is contained in:
2026-08-31 10:36:51 -05:00
parent 8ea370a1d1
commit af8c0f5ccd
6 changed files with 121 additions and 3 deletions
+5
View File
@@ -11,7 +11,12 @@
typedef struct audiostream_s audiostream_t;
typedef struct {
// Reserved hardware output channel, from sceAudioChReserve.
int channel;
// Number of samples (frames) per output call the channel was reserved
// with. 64-aligned, between PSP_AUDIO_SAMPLE_MIN and PSP_AUDIO_SAMPLE_MAX.
int samples;
} audiostreampsp_t;
/**