MilesLib: run the 40250 sound sources verbatim over an AIL software mixer

Copy SoundBase/SoundData/SoundInstance*/SoundManager*/Type from 40250 and
implement the AIL_* calls they make in MilesAil.cpp (2D pan, 3D distance and
listener pan, threaded stream decode, loop counts). The SDL host drains the
mixer. CSoundManager is created/updated/destroyed where 40250 does it and the
old AudioCommands bridge is removed. Port-map MilesLib 142/142 PORTED.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-30 12:07:37 +09:00
co-authored by Claude Opus 5.5
parent d509f0a8b4
commit 11991d4d1f
39 changed files with 4232 additions and 1053 deletions
@@ -0,0 +1,48 @@
{
"reference": "MilesLib/SoundManager2D.cpp",
"reference_sha256": "c4d23d9c8571bfb1ac49d9bd64bd05517f0cef76dec104418d2db4d7f1389777",
"priority": "P4",
"contracts": [],
"functions": {
"CSoundManager2D::CSoundManager2D": {
"status": "PORTED",
"impl": [
"src/platform/MilesLib/SoundManager2D.cpp:CSoundManager2D::CSoundManager2D"
],
"test": "tests/port/port_miles_test.cpp",
"note": "verbatim 40250 source over the AIL_* emulation in src/platform/MilesLib/MilesAil.cpp (software mixer drained by src/host/native_audio.cpp)"
},
"CSoundManager2D::~CSoundManager2D": {
"status": "PORTED",
"impl": [
"src/platform/MilesLib/SoundManager2D.cpp:CSoundManager2D::~CSoundManager2D"
],
"test": "tests/port/port_miles_test.cpp",
"note": "verbatim 40250 source over the AIL_* emulation in src/platform/MilesLib/MilesAil.cpp (software mixer drained by src/host/native_audio.cpp)"
},
"CSoundManager2D::Initialize": {
"status": "PORTED",
"impl": [
"src/platform/MilesLib/SoundManager2D.cpp:CSoundManager2D::Initialize"
],
"test": "tests/port/port_miles_test.cpp",
"note": "verbatim 40250 source over the AIL_* emulation in src/platform/MilesLib/MilesAil.cpp (software mixer drained by src/host/native_audio.cpp)"
},
"CSoundManager2D::Destroy": {
"status": "PORTED",
"impl": [
"src/platform/MilesLib/SoundManager2D.cpp:CSoundManager2D::Destroy"
],
"test": "tests/port/port_miles_test.cpp",
"note": "verbatim 40250 source over the AIL_* emulation in src/platform/MilesLib/MilesAil.cpp (software mixer drained by src/host/native_audio.cpp)"
},
"CSoundManager2D::GetInstance": {
"status": "PORTED",
"impl": [
"src/platform/MilesLib/SoundManager2D.cpp:CSoundManager2D::GetInstance"
],
"test": "tests/port/port_miles_test.cpp",
"note": "verbatim 40250 source over the AIL_* emulation in src/platform/MilesLib/MilesAil.cpp (software mixer drained by src/host/native_audio.cpp)"
}
}
}