我需要任何 python 库来更改我的 wav 文件的音调,而无需任何原始音频数据处理。我花了几个小时找到它,但只找到了一些奇怪的原始数据处理代码片段和视频,显示实时音高变化,但没有源代码。
原文由 Daniel 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
1 回答1.6k 阅读✓ 已解决
2 回答866 阅读✓ 已解决
由于
wav
文件基本上 是 原始音频数据,如果 _没有_“原始音频处理”,您将无法更改音调。这是你可以做的。您将需要
wave
(标准库)和numpy
模块。打开文件。
声音应该在几分之一秒内处理。这减少了混响。尝试将
fr
设置为 1;你会听到恼人的回声。读取数据,将其拆分为左右声道(假设是立体声 WAV 文件)。
使用 numpy 中内置的快速傅里叶变换提取频率。
滚动阵列以增加间距。
最高频率滚动到最低频率。那不是我们想要的,所以将它们归零。
现在使用傅里叶逆变换将信号转换回振幅。
合并两个通道。
写入输出数据。
处理完所有帧后关闭文件。