[音频/多媒体] MPQ ADPCM + Huffman 音频解码缺失:支持 572 个音频成员并接入 Web Audio API #13
Labels
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Blocks
#7 [Code Review] 整体代码质量、架构缺陷与技术债务全景审查报告
troytt/diablo2-web
Reference: troytt/diablo2-web#13
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
模块位置
src/mpq/decompress.ts,src/mpq/archive.ts,src/audio/(待建)问题背景与现象
0x41和0x81)。src/mpq/decompress.ts目前未实现 ADPCM + Huffman 解码器,相关资源读取时会被拒绝或跳过。造成的影响
解决建议
src/mpq/decompress.ts中实现 IMA ADPCM 与 Huffman 树解码逻辑;verify-audio.ts校验脚本);已修复 —
feat(mpq): 实现 ADPCM 与 Huffman 音频解码并接入 Web Audio(4d47a56)src/mpq/huffman.ts+huffman-tables.ts(9 张表,逐张与 StormLib 对拍)、adpcm.ts+adpcm-tables.ts,并接入decompress.ts与src/audio/manager.ts。0x100是 END OF STREAM,0x101是 NYT/字面量转义。0x41/0x81的解压顺序为 先 Huffman (0x01),再 ADPCM(0x40单声道 /0x80立体声)。decodeAudioData。验证: 本地编译 StormLib 做差分对拍harness,逐字节一致;并通过我方独立选定的变异测试。