当我使用 JavaSound 或第三方声音捕获工具捕获并将其记录到文件中时。然后读回文件进行修改,有什么办法可以用我的java应用程序消除“背景噪音”。
例如主要人物说话时的道路交通/空气噪音?
Thanks
消除背景噪音非常困难。如果是均匀噪声,例如飞机上的“白”噪声,则有算法可以消除这些频率分量。但是,如果噪音不均匀并且本质上与您的良好录音相似,例如人们在背景中说话、街道噪音等,很难将它们分开。人们对此进行了大量的研究。
至少,您需要确切地知道什么是好的音频,什么是坏的音频。例如。如果您正在捕获语音,可能有特殊的音频修复软件可用于将语音与其他声音分开,例如http://www.izotope.com/products/audio/rx/。如果您以立体声录制语音,则可以通过分析语音的左/右位置,然后通过关联左和右来删除非语音成分来成功。
回复:mkb 的评论:
- 当(某些或所有频率分量)的水平低于阈值时,噪声门将使音频静音。根据背景噪音的级别,这可能会有所帮助,但噪音门通常很烦人,因为只要存在“良好”的音频,您就会听到背景声,并且中间有寂静。
- 低通滤波器消除高频成分(它让低频通过)!因此,如果您的背景噪音频率较高,这可能会有所帮助。简单的 FIR 或 IIR 低通滤波器很容易实现。但如果它具有高频成分,它也会影响您的“良好”音频。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)