How to remove the "vocals section" of an audio file in .NET?
From an audio file (mp3 song) and I'm trying to extract the "instrument" part of the file to create a minu开发者_如何学运维s one track.
How can this be done with .NET?
Is there any way to achieve something like this? :
new AudioFile("song.mp3").RemoveVocals().SaveTo("song edited.mp3")
Synopsis of BlueRaja's useful comments below the question:
Music and vocals are usually combined in the studio before the song is released. If the vocals and music are on one combined track, there'll be no reliable way to separate them, since removing "vocal sounds" of a certain frequency will also end up removing "instrumental sounds" that happen to be in the same frequency. (read: sounds are sounds and "vocal" is a kind of "instrument".)
However, if the vocals and music are encoded on separate tracks, there'll be a way to separate them.
At my work we do a lot of media encoding type things in C# (Silverlight, to be specific). We're in the middle of porting an application from Adobe Director to Silverlight, which means, of course, that all of the media we were using before (.ogg and .swf files in particular) no longer are compatible with our framework. All of the cross encoding that we do happens outside of code, using third party tools. If you are trying to do this on the fly, you're likely going to have to write it yourself. If you want it done pre-runtime, I would start searching for utilities that do it.
精彩评论