feat(audio): 使用 Windowed Sinc 高质量重采样器替代线性插值
Some checks failed
ci/woodpecker/tag/woodpecker Pipeline failed
Some checks failed
ci/woodpecker/tag/woodpecker Pipeline failed
统一音频输出采样率为 44100Hz,使用 go-audio-resampler 库实现 Windowed Sinc + Polyphase FIR 算法(VeryHigh 28-bit 精度), 替代原有的线性插值透传方案。 主要变更: - 新增 sincResampler:三阶段 Read 循环(填充→处理→Flush) - 双缓冲区架构避免输出样本丢失,复用内存减少 GC 压力 - WAV/MP3/BGM 播放管线全部接入 Sinc 重采样器 - 移除旧的 linearResampler 和透传模式 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -5,7 +5,6 @@ import (
|
||||
)
|
||||
|
||||
func TestInitContext(t *testing.T) {
|
||||
// 第一次调用应该成功
|
||||
ctx1, err := initContext()
|
||||
if err != nil {
|
||||
t.Fatalf("第一次 initContext 失败: %v", err)
|
||||
@@ -14,7 +13,6 @@ func TestInitContext(t *testing.T) {
|
||||
t.Fatal("返回的 context 不应为 nil")
|
||||
}
|
||||
|
||||
// 第二次调用应该返回相同的 context
|
||||
ctx2, err := initContext()
|
||||
if err != nil {
|
||||
t.Fatalf("第二次 initContext 失败: %v", err)
|
||||
|
||||
Reference in New Issue
Block a user