测量低音音调之间的时间距离并将其作为信号发送

时间:2017-02-02 09:54:11

标签: matlab audio arduino

我想在我的文件中测量两个或更多低音之间的时间距离。

说明:

我拿了一个youtube文件并将其转换为wav文件。请参阅以下链接,我拍摄了哪个视频。 https://www.youtube.com/watch?v=ug0Bw22_nds

正如您在标题中已经看到的那样,低音在上传之前被操纵了。 (可能是大胆或其他)。我从视频开始剪切了大约16秒,并在matlab中读取音频文件。现在理论上,(我相信)低音(较低频率)与其他音调相比通常具有更高的幅度。幅度越大意味着音调越大。所以基本上,如果我对它做一个fft,我得到我的信号的频谱图,它在时域中表示。然后我将频谱图与2平方。我不知道,它是怎么称呼的,因为英语不是我的母语,但我相信这是数学中的绝对值,也可能是频谱图的功率。正如我所提到的,低音音调的幅度非常高,因此当频谱图中出现低音时,我应该可以看到。

我想测量两个或三个低音之间的时间距离。如果我得到这个,那么我想要通过Arduino Uno以信号的形式发送这个值,Arduino Uno控制振动电机。例如,如果低音每两秒发出一次,那么振动电机将每两秒振动一次

问题:

我想测量两个低音音符之间的时间距离,并将其作为信号发送到我的电机。取决于我的文件的音乐类型。这样做的必要步骤是什么?我如何编写代码行?我已经尝试了一些可能性,但我不知道进一步,我想用matlab实现它,因为我没有其他语言的经验。如果需要,我也可以发布我的代码。

编辑:如果有另一种方法来解决这个问题,那么我也会考虑这个解决方案。

0 个答案:

没有答案