在Matlab中从声音文件中删除人声

时间:2013-01-18 06:40:57

标签: matlab audio signal-processing

我正在使用Matlab分离声音文件的左右声道。代码编译但不是完全从声音文件中删除人声。那是为什么?

以下是代码:

 [y,fs]=wavread('On the floor.wav');

 left=y(:,1);
 right=y(:,2);


 wavplay(left-right,fs);

1 个答案:

答案 0 :(得分:3)

声音抑制是一个 hard 问题,是大量学术和商业研究的主题。在学术界,这种问题被称为源分离,近年来一直是一个受欢迎的博士研究课题;因此存在大量文献。

您似乎正在实施的方法是在立体图像的中心减去节目素材。当正确实施(见上面的评论)时,这可能会抑制某些音轨上的某些人声,但也会混入大量其他材料,这些材料混合到您希望保留的中心。