发布于 2009-08-28 10:50:37
计算机音乐的创作和分析是一个巨大的领域。这类工作有两个基本领域,有些重叠。
存在许多、许多图书馆、工具和专门的编程语言,它们可以帮助解决这些问题的不同部分。以下是与音乐相关的Python的程序和库列表。有很多可用的技术;你应该能够找到一些能为你做最重要的工作的东西。通过非常低级别的频率分析工具(如傅里叶变换 )来重新实现“音乐解析器”,就像其他答案所暗示的那样,虽然可能,但将是相当困难的,而且几乎可以肯定是不必要的。
对于进一步的建议和具体问题,国际音乐信息检索学会有一个邮件列表,您可能会发现它非常有用。
发布于 2009-08-28 06:22:35
一旦通过了Lennart提到的FFT内容,您可能想看看马尔可夫链来分析音符和聚合模式之间的间隔。
这是一种脚踏实地,但马尔可夫链在过去已经被用来建立一种统计模型的旋律从不同的歌曲,可以用来产生新的旋律。马尔可夫链同样适用于书面英语句子。关于这方面的一个例子,请使用巨型聊天机器人( megahal chatterbot ),看看马尔可夫链如何产生统计上与其输入类似的破损输出(在megahal的例子中,它看起来像英语句子)。
你可以清楚地将前100名混为一谈,并让马尔可夫链发生器在下一次大爆炸中爆发出来。
另一方面,你可能想要考虑的可能性,不是任何质量的音乐本身,使一首歌流行。或者,这可能是一个质量的音乐问题与营销相结合。
发布于 2009-08-28 05:12:37
为了分析声波,你需要某种形式的傅立叶变换(fft),这样你就可以把歌曲分解成它的频率和它们如何随时间变化。在numpy中存在fft支持,我没有使用它,所以我不知道它是否有任何好处。但这将是一个很好的开始。
在那之后,你需要对频率和模式做一些统计分析,然后我就不知道我在说什么了。
很酷的东西,去吧!
https://stackoverflow.com/questions/1344884
复制相似问题