我想知道如何对歌曲的声段和非声段进行“光谱变化检测”。我们需要从光谱图中找出光谱变化。有没有关于这方面的详细信息,特别是涉及到MATLAB?
发布于 2009-02-02 21:29:50
从音频中分离出不同的信号是一个非常活跃的研究领域,也是一个非常困难的问题。在文献中,这通常被称为Blind Signal Separation。(在前面的链接中有一些MATLAB演示代码。
当然,如果您知道音乐中有声音,您可以使用许多vocal separation算法中的一种。
发布于 2009-02-02 22:23:50
正如其他人所指出的,仅使用原始频谱分析来解决这个问题是一个令人望而生畏的困难问题,而且您不太可能找到一个很好的解决方案。充其量,你可以从混音中提取一些人声和一些额外的交叉频率。
但是,如果您可以更具体地了解您在这里使用的音频材料的性质,您可能会走得更远。
在最坏的情况下,你的材料将是正常的mp3的常规歌曲--即,一个完整的乐队+主唱。我有一种感觉,考虑到你的问题的性质,这可能就是你正在考虑的情况。
在最好的情况下,您可以访问多轨录音室录音,并且至少有一个完整的混音和一个器乐音轨,在这种情况下,您可以从混音中提取声频。您可以通过从其中一个轨迹生成脉冲响应并将其应用于另一个轨迹来完成此操作。
在中间的例子中,你处理的是简单的音乐,你可以应用某种算法来调整音乐的参数。例如,如果您正在处理电子音乐,您可以利用音轨的立体声宽度来消除所有单声道元素(即贝斯线+ kicks)来提取人声+其他平移乐器,然后从那里应用某种类型的滤波和频谱分析。
简而言之,如果你计划制作一个通用的算法来从任意来源的材料中生成干净的阿卡佩拉切割,你可能会在这里吃到超过你所能消化的东西。如果您可以明确限制您的来源材料,那么您可以根据这些来源的性质使用许多算法。
发布于 2009-02-02 08:43:08
这很难。如果你能可靠地做到这一点,你就会成为一名有成就的计算机科学家。我读到的最有希望的方法是使用歌词生成仅用于比较的语音曲目。再说一次,如果你能做到这一点并写一篇关于它的论文,你就会出名(在计算机科学家中)。此外,你可以通过自动生成卡拉OK的时间来赚很多钱。
https://stackoverflow.com/questions/502475
复制相似问题