Closed. This question does not meet Stack Overflow guidelines 。它目前不接受答案。
想改善这个问题吗?更新问题,使其成为 Stack Overflow 的 on-topic。
2年前关闭。
Improve this question
一个人唱出一种音调,并希望将其转换为演奏相同音调的乐器。在使用 aubio.org 处理录制的人声的 .wav 文件时,我能够获得不同时间间隔的音高/频率。但是如何从这些数据中获取要演奏的乐器的音符,或者是否有一些调谐器可以帮助我做到这一点?
但是你会发现,对于节奏来说,事情实际上可能比这更复杂,因为。我会使用一个已经制作好的有节奏的“量化”包(这是你想要的谷歌搜索词),因为确定速度以及 1.125 节拍长的东西是否应该转录为四分音符或四分音符第 32 条笔记将在很大程度上取决于上下文,这是一项重要的编程工作。有几个预先存在的工具包可以为您完成。我自己的 python 框架 music21 有一个 audioSearch 模块,它应该可以解决简单的问题——至少你可以把代码放在那里并将它放入你自己的包中,因为它是非常标准的 FFT 样本转换技术。
想改善这个问题吗?更新问题,使其成为 Stack Overflow 的 on-topic。
2年前关闭。
Improve this question
一个人唱出一种音调,并希望将其转换为演奏相同音调的乐器。在使用 aubio.org 处理录制的人声的 .wav 文件时,我能够获得不同时间间隔的音高/频率。但是如何从这些数据中获取要演奏的乐器的音符,或者是否有一些调谐器可以帮助我做到这一点?
最佳答案
对于音高,使用 MIDI 69 = 440hz 的公式,所以(python/伪代码)
midiNote = round(12 * (log(freq/440.0), 2))) + 69
但是你会发现,对于节奏来说,事情实际上可能比这更复杂,因为。我会使用一个已经制作好的有节奏的“量化”包(这是你想要的谷歌搜索词),因为确定速度以及 1.125 节拍长的东西是否应该转录为四分音符或四分音符第 32 条笔记将在很大程度上取决于上下文,这是一项重要的编程工作。有几个预先存在的工具包可以为您完成。我自己的 python 框架 music21 有一个 audioSearch 模块,它应该可以解决简单的问题——至少你可以把代码放在那里并将它放入你自己的包中,因为它是非常标准的 FFT 样本转换技术。
关于performance - 需要将人声转换成音符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15379029/
10-14 05:53