我正在制作一款类似于Audiosurf的游戏。我试图在每秒钟找到一个音频文件的频率(如.mpg3或.wav)。根据价值,我将建立水平。我一直在做这方面的很多研究。我有办法在音频文件中获取样本,我正在使用统一引擎来制作这个游戏。我正在考虑每秒将样本分成样本(使用传输速率),然后对每个样本进行FFT,然后在每个样本中找到最高频率。我在正确的道路上吗?任何人都可以提出任何建议,或者如果我不在正确的道路上,任何人都可以纠正我吗?任何帮助将不胜感激。
答案 0 :(得分:3)
你在FFT部分的正确路径上并将样本分成垃圾箱。这是一个图书馆:http://www.fftw.org/
它变得毛茸茸的是选择你的频率,让我告诉你蝙蝠只是抛弃光谱中的最高频率,它是静态的一部分。 也许你可以使用最低的频率来捕捉低音线,但是低音鼓甚至大气的声音效果可能会干扰那里。
现在,您可以找到一些启发式功能,允许您在歌曲中的给定时刻选择“频率”,这很可能与音乐本身无关。你最好在每个时刻重新使用频率频谱,而不仅仅是一个频率。
编辑:傅里叶变换将为您提供一系列复数,每个复数表示幅度作为实际成分,相位表示其箱子的虚部。