如何删除;声乐部分;在.NET中创建一个音频文件?

如何删除;声乐部分;在.NET中创建一个音频文件?,.net,audio,standards,.net,Audio,Standards,从一个音频文件(mp3歌曲)中,我试图提取文件中的“乐器”部分来创建一个 如何使用.NET实现这一点 有什么办法可以实现这样的目标吗 new AudioFile("song.mp3").RemoveVocals().SaveTo("song edited.mp3") 在我的工作中,我们用C#(具体来说是Silverlight)做了很多媒体编码类型的事情。我们正处于从Adobe导演到Silverlight的应用程序的中间,当然,这意味着我们之前使用的所有媒体(尤其是OGG和SWF文件)不再与我们

从一个音频文件(mp3歌曲)中,我试图提取文件中的“乐器”部分来创建一个

如何使用.NET实现这一点

有什么办法可以实现这样的目标吗

new AudioFile("song.mp3").RemoveVocals().SaveTo("song edited.mp3")

在我的工作中,我们用C#(具体来说是Silverlight)做了很多媒体编码类型的事情。我们正处于从Adobe导演到Silverlight的应用程序的中间,当然,这意味着我们之前使用的所有媒体(尤其是OGG和SWF文件)不再与我们的框架兼容。我们所做的所有交叉编码都发生在代码之外,使用第三方工具。如果你想在飞行中做到这一点,你很可能不得不自己写。如果您希望在运行前完成,我将开始搜索执行此操作的实用程序

问题下方是BlueRaja的有用评论摘要:

音乐和人声通常在歌曲发布前在录音室进行组合。如果人声和音乐在一个组合轨道上,就没有可靠的方法将它们分开,因为删除某个频率的“人声”也会删除碰巧在同一频率的“器乐声音”。(读:声音就是声音,“人声”是一种“乐器”。)


然而,如果人声和音乐被编码在不同的轨道上,就会有办法将它们分开。

@Rob:我想是因为从声音文件中删除人声是一种非常不精确的艺术;这不是你可以自动化的东西,即使用手去做,你也不能总是得到很好的结果。当然,这是假设人声不在单独的音轨上(我认为mp3格式不支持这一点)。很抱歉,你找不到一个做得很好的图书馆。这是一个值得回答的好问题。从我在大学语音处理课上的一点记忆中,人类的声音以特定的频率运作。一个基于这种理解的天真答案将涉及删除这些频率范围内的所有声音。语音识别使用HMM等统计模型来提高准确性,但这些需要训练。我相信这里的一位专家可以给出更好的解释。@Brian Lyttle但从该频率中去除声音不会也会去除任何可能在这些频率上工作的仪器吗?@Pacerier:是的,因此我的评论是,它不适合自动化。这个问题被关闭、删除、取消(由钻石版主投票),重新开放(同一钻石)并且再次被关闭。它被引用。独立于显示最近删除与最近删除,想要关闭此功能的人,你能就问题关闭争论一下吗?你好,Eric!你能告诉我哪些库可用于将MP3文件拆分为acapella和Voice Thanks吗?我三年前就离开了我提到的工作以前,从未深入参与过编码工作。TBH,我不确定为什么选择此作为此问题的答案。您好@pacerier!您能告诉我哪些库可用于将MP3文件拆分为acapella和Voice谢谢