C#将音频从8khz重新采样到44.1/48khz

C#将音频从8khz重新采样到44.1/48khz,c#,audio,directsound,C#,Audio,Directsound,我在DirectShow.NET中遇到了一个错误,我创建了一个采样率为8khz的辅助缓冲区,在播放时,声音以大约8.1khz的频率播放 通过谷歌搜索,我发现可能会被迫将8khz音频的采样频率提高到48khz或44.1khz,具体取决于电脑中的声卡 是否有任何C#库或通用算法可供我使用 谢谢 Roey你总是可以移植到C# 或者直接通过使用如何?您遇到的“声音播放太快”问题可能与声卡有关。不确定您使用的是哪个操作系统,但我相信Windows会在将样本定向到声卡之前将所有音频流的采样频率提高到44或4

我在DirectShow.NET中遇到了一个错误,我创建了一个采样率为8khz的辅助缓冲区,在播放时,声音以大约8.1khz的频率播放

通过谷歌搜索,我发现可能会被迫将8khz音频的采样频率提高到48khz或44.1khz,具体取决于电脑中的声卡

是否有任何C#库或通用算法可供我使用

谢谢

Roey

你总是可以移植到C#

或者直接通过使用如何?

您遇到的“声音播放太快”问题可能与声卡有关。不确定您使用的是哪个操作系统,但我相信Windows会在将样本定向到声卡之前将所有音频流的采样频率提高到44或48khz(这样它就可以将其与所有其他流正确混合)。因此,我不确定您是否使用自己的代码进行了采样,是否会得到任何改进

您是否尝试过使用不同的PC(运行不同的操作系统)或插入一些USB耳机以查看此问题是否一致?

有关详细信息,请参阅下面的代码

字节[]数据48kHz=AudioCompressionManager.Convert(格式8kHz,格式48kHz,数据8kHz,false)