Dean
5d52b06ff3
Merge pull request #9324 from MarrasFederico/feat/ngs2-parse-format-codes
...
fix(libSceNgs2.native): return 0x804A8432 for waveform formats the module does not parse
2026-10-27 21:35:03 +13:00
Federico Marras
735b905120
Merge remote-tracking branch 'origin/main' into feat/ngs2-parse-format-codes
2026-10-26 13:40:23 +01:00
Felipebmaitan
0c3f104067
chore(ngs2): merge current main for audio routing
2026-10-26 09:03:02 -03:00
Dean
65c2713b6c
Merge pull request #10410 from JAB-dev/fix/ngs2-mastering-gain-ps5
...
fix(libSceNgs2): clamp the mastering gain to +-32 and keep NaN, as the PS5 module does
2026-10-26 22:01:52 +13:00
Dean
346a1be323
Merge pull request #10127 from Felipebmaitan/feat/ngs2-pcm-playback
...
feat(ngs2): play additional PCM sampler formats
2026-10-26 12:10:04 +13:00
Dean
1240c09878
Merge pull request #9148 from MarrasFederico/feat/ngs2-parse-pcm-depths
...
feat(libSceNgs2.native): parse 8-, 24- and 32-bit PCM and float waveforms
2026-10-26 11:01:52 +13:00
Dean
59bf9480f7
Merge pull request #10432 from JAB-dev/fix/ngs2-pan-ps5
...
fix(libSceNgs2): return the PS5 pan codes and accept NaN pan inputs
2026-10-26 06:14:03 +13:00
Felipebmaitan
08587dfa7e
feat(ngs2): play additional PCM sampler formats
2026-10-25 13:40:18 -03:00
JAB-dev and Claude Sonnet 5.5
0abe9d8f4b
Merge main into fix/ngs2-mastering-gain-ps5
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-25 14:21:57 +02:00
Adrià
1ca0c5d86c
Merge pull request #9926 from JAB-dev/fix/ngs2-play-without-setup
...
fix(libSceNgs2): return INVALID_VOICE_ACCESS for PLAY on a voice that was never set up
2026-10-25 10:22:17 +01:00
Felipebmaitan
a43a610bbf
fix(ngs2): reject routes changed during recursive rendering
2026-10-25 01:52:16 -03:00
Felipebmaitan
93b887e514
feat(ngs2): route custom submixer buffers through Gain
2026-10-25 01:34:10 -03:00
boykopovar
f38d29fd08
refactor(sdk): add canonical headers for remaining libraries
2026-10-24 23:17:42 +03:00
Dean
fe0207e20f
Merge pull request #10347 from hugodearaujo/fix/ngs2-reverb-channel-conversion
...
fix(libSceNgs2.native): accept a reverb voice with different input and output channel counts
2026-10-25 01:53:08 +13:00
Kapy2003
a25aa36641
feat(libSceNgs2): support custom mastering rack 0x4003
...
Accept SCE_NGS2_RACK_ID_CUSTOM_MASTERING (0x4003) using the 0x508-byte
custom rack option layout without modules. Channels above NGS2_MAX_CHANNELS
(8) and non-zero module counts throw runtime_error as unsupported. Support
mastering voice control parameters 0x40030000 (setup), 0x40030004 (gain),
and 0x40030005 (output), write active mastering voices to render buffers,
and return voice state flags in sceNgs2VoiceGetState.
References #8039 .
2026-10-24 09:58:09 +05:30
JAB-dev and Claude Sonnet 5.5
b307813438
test(libSceNgs2): pin the PS5 pan codes, NaN LFE level and radian wrap throw
...
The tests now check the SDK values of the pan error constants, that 0 params leaves the output untouched, that a NaN param angle keeps its LFE level with 7 speakers, and that a param one float below the first speaker in radians throws. The throw messages and the debt entry say the PS5 module did not return within 60 s for those inputs instead of claiming it never returns.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-24 02:06:01 +02:00
JAB-dev and Claude Sonnet 5.5
8da1a2dc0b
fix(libSceNgs2): return the PS5 pan codes and accept NaN pan inputs
...
sceNgs2PanGetVolumeMatrix now returns the PS5 error codes in the PS5 check order instead of throwing, and lets NaN angles and distances through as the PS5 module does. sceNgs2PanInit gives the 7-speaker degree defaults for 0 speakers without angles, stores NaN speaker angles and leaves unused slots untouched. Inputs on which the PS5 library never returns still throw.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-24 00:51:07 +02:00
JAB-dev and Claude Sonnet 5.5
3f18aed2a5
fix(libSceNgs2): clamp the mastering gain to +-32 as the PS5 module does
...
The PS5 libSceNgs2.native (firmware 3.20 and 4.03) accepts every value of the mastering gain param 0x30000004 with return code 0, clamps each level to [-32, 32] (so +-inf gives +-32) and keeps NaN, which then gives NaN samples. Ours threw on NaN and inf and did not clamp. A NaN sample in a PCM_I16L render buffer now throws, since the PS5 conversion was only measured into float buffers.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-24 00:10:35 +02:00
hugodearaujo
7b19b87f27
fix(libSceNgs2.native): accept a reverb voice with different input and output channel counts
2026-10-23 15:31:33 -03:00
Dean
1fc30716fa
Merge pull request #10024 from ags-arnab/feat/ngs2-matrix-module-info
...
feat(libSceNgs2): implement sceNgs2VoiceGetMatrixInfo and sceNgs2CustomRackGetModuleInfo
2026-10-24 01:43:41 +13:00
JAB-dev and Claude Sonnet 5.5
2375223a92
fix(libSceNgs2): an all-zero sampler setup leaves an earlier setup untouched, as the PS5 module does
...
The PS5 libSceNgs2.native module (firmware 3.20 and 4.03) accepts a setup with an all-zero format on a configured voice and keeps its format, so a play afterwards succeeds. The guard for a play on a voice with no channels would otherwise fail it.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 14:00:47 +02:00
JAB-dev and Claude Sonnet 5.5
45b061fa6c
Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/ngs2-play-without-setup
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 13:59:13 +02:00
Dean
c188e01a42
Merge pull request #9315 from MarrasFederico/feat/ngs2-system-rate-grain-codes
...
fix(libSceNgs2.native): return the module's codes from sceNgs2SystemSetSampleRate and sceNgs2SystemSetGrainSamples
2026-10-23 22:54:32 +13:00
Federico Marras
74c6791861
Merge remote-tracking branch 'upstream/main' into feat/ngs2-system-rate-grain-codes
...
# Conflicts:
# docs/dev/debt/libSceNgs2.native.md
2026-10-23 11:08:40 +02:00
Federico Marras
012b87293b
Merge remote-tracking branch 'upstream/main' into feat/ngs2-render-buffer-codes
...
# Conflicts:
# docs/dev/debt/libSceNgs2.native.md
2026-10-23 11:07:02 +02:00
Dean
6ee38720fc
Merge pull request #9327 from MarrasFederico/feat/ngs2-atrac9-module-loops
...
fix(libSceNgs2.native): parse ATRAC9 smpl loops as the module does
2026-10-23 21:47:55 +13:00
Dean
3d9c01daed
Merge pull request #9337 from Th3EvilGod/codex/ngs2-userfx-module-id
...
fix(ngs2): correct UserFx ids and preserve Delay compatibility
2026-10-23 20:24:20 +13:00
JAB-dev
2cf37664d2
Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/ngs2-play-without-setup
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
# Conflicts:
# core/libs/prx/libSceNgs2.native/include/Ngs2Types.hpp
2026-10-23 08:29:14 +02:00
JAB-dev and Claude Sonnet 5.5
9723f7af66
Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/ngs2-play-without-setup
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 07:58:53 +02:00
Federico Marras
0477c9c3f2
Merge remote-tracking branch 'upstream/main' into feat/ngs2-atrac9-module-loops
2026-10-23 07:18:26 +02:00
Federico Marras
6660dd080d
fix(libSceNgs2.native): throw for ATRAC9 loops inside the decoder delay and blocks past the data chunk
2026-10-23 07:18:26 +02:00
Arnab Ghosh
1f1ddc9e3a
feat(libSceNgs2): implement sceNgs2VoiceGetMatrixInfo and sceNgs2CustomRackGetModuleInfo
2026-10-23 10:50:00 +06:00
Federico Marras
04884d6784
Merge branch 'feat/ngs2-system-option-codes' into feat/ngs2-system-rate-grain-codes
2026-10-23 05:26:42 +02:00
Federico Marras
ad5df50d6d
Merge branch 'feat/ngs2-system-option-codes' into feat/ngs2-system-create-arguments
...
# Conflicts:
# core/libs/prx/libSceNgs2.native/include/Ngs2Types.hpp
2026-10-23 05:25:39 +02:00
Federico Marras
e03475e92f
Merge remote-tracking branch 'upstream/main' into feat/ngs2-system-option-codes
...
# Conflicts:
# core/libs/prx/libSceNgs2.native/src/System.cpp
2026-10-23 05:23:59 +02:00
Dean Galvin
e51d8c57f0
Merge main into feat/ngs2-render-buffer-codes
2026-10-23 16:23:20 +13:00
Dean
01f99305be
Merge pull request #8341 from KernelPanicNT/fix/ngs2-system-option-flag-bit1
...
fix(libSceNgs2): accept system option flag bit 1
2026-10-23 16:21:15 +13:00
Dean Galvin
ae913751f0
Merge main into codex/ngs2-userfx-module-id
2026-10-23 15:53:12 +13:00
Dean
a1d4803486
Merge pull request #9233 from EdouardSence/feat/ngs2-custom-gain
...
feat(libSceNgs2): process the custom Gain module
2026-10-23 15:32:08 +13:00
Dean Galvin
493ef8f07e
Merge main into feat/ngs2-system-rate-grain-codes
2026-10-23 14:37:02 +13:00
Dean
7f3c6b9b08
Merge pull request #9145 from MarrasFederico/feat/ngs2-calc-vag-block
...
feat(libSceNgs2.native): map VAG waveform blocks in sceNgs2CalcWaveformBlock
2026-10-23 13:59:22 +13:00
Dean
78becbb373
Merge pull request #8528 from MarrasFederico/feat/ngs2-waveform-frame-info
...
feat(libSceNgs2): report the frame layout of a PCM waveform in sceNgs2GetWaveformFrameInfo
2026-10-23 12:02:28 +13:00
JAB-dev and Claude Sonnet 5.5
32cff4e0b3
fix(libSceNgs2): return INVALID_VOICE_ACCESS for PLAY on a voice that was never set up, as the PS5 module does
...
The PS5 libSceNgs2.native module (firmware 3.20 and 4.03) fails a play event on a voice with no setup with 0x804A8351 on every rack I tried and leaves it idle, so the guard now covers every rack and returns that code.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 00:32:00 +02:00
JAB-dev and Claude Sonnet 5.5
2eedb856d9
fix(libSceNgs2): return INVALID_NUM_CHANNELS for PLAY on a sampler voice that was never set up
...
A sampler voice with no setup used to enter the playing state and never finish, so a title that frees its sound slots by polling sceNgs2VoiceGetStateFlags ran out of slots. The PS4 firmware 11.00 library fails the event and keeps the voice idle.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 00:00:31 +02:00
Dean
eb8dcfebaa
Merge pull request #9837 from JAB-dev/fix/ngs2-pan-init-validation
...
fix(libSceNgs2): return the SDK pan error codes from sceNgs2PanInit
2026-10-23 10:43:59 +13:00
Th3EvilGod
b553950efd
fix(ngs2): correct UserFx ids and preserve the Delay compatibility path
2026-10-23 01:17:40 +04:00
Th3EvilGod
154ca3754e
chore(ngs2): update Gain prerequisite to current main
2026-10-23 01:11:51 +04:00
Dean
a145c6a468
Merge pull request #9299 from MarrasFederico/feat/ngs2-system-reset-option
...
fix(libSceNgs2.native): reset the system option to the module's defaults, 8 voice channels included
2026-10-23 09:44:24 +13:00
Dean Galvin
3e00103497
Merge main into feat/ngs2-custom-gain
2026-10-23 09:17:07 +13:00
Dean
5c13a1be0f
Merge pull request #8692 from JAB-dev/fix/ngs2-geom-listener-errors
...
fix(libSceNgs2): return INVALID_GEOM_FLAG and the listener-address error from sceNgs2GeomCalcListener
2026-10-23 08:51:25 +13:00