我正在使用Matlab分离声音文件的左右声道。代码可以编译,但是并不能完全从声音文件中删除人声。这是为什么?
这是代码:
[y,fs]=wavread('On the floor.wav');
left=y(:,1);
right=y(:,2);
wavplay(left-right,fs);
最佳答案
声音抑制是一个艰巨的问题,是许多学术和商业研究的主题。在学术界,这种问题被称为“源分离”,近年来已成为流行的博士研究课题。因此,存在大量的文学作品。
您似乎正在实现的方法是在立体声图像的中心减去程序素材。如果正确实现(请参见上面的评论),这可能会抑制某些音轨上的某些人声,但也会混入大量您希望保留在中心的其他 Material 。
关于matlab - 在Matlab中从声音文件中删除人声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14393677/