使用 DirectSound 进行音高转换

Posted

技术标签:

【中文标题】使用 DirectSound 进行音高转换【英文标题】:Pitch Shift with DirectSound 【发布时间】:2011-09-22 14:28:25 【问题描述】:

如何在 C# 中?我在 Google 中没有发现任何有用的东西。 SetFrequency 对我不利,因为这也会改变声音的速度。我不想为每个音高创建一个 wav 文件,因为这会导致软件非常庞大。

谢谢!

【问题讨论】:

【参考方案1】:

查看wikipedia article,了解有关音频材料的时间尺度音高修改的概述。

查看similar so question 了解更多信息。

而here 我在 C# 中找到了短时傅里叶变换音高移位算法的实现。

【讨论】:

以上是关于使用 DirectSound 进行音高转换的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB - 音高转换音频信号

iPhone 上的实时音高转换

浮点数数组的音高检测

如何使用 AVFoundation 以正确的音高播放不同采样率的音频文件?

music21 :给定 midi 输入,输出正确拼写的音高和八度数

用于查找歌曲音高的音频分析器