如何删除用java背景噪音,而在人群中区录制音频? [英] How can i remove background noise with java, while recording audio in a crowd zone?

查看:628
本文介绍了如何删除用java背景噪音,而在人群中区录制音频?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我用JavaSound或第三方声音捕捉工具捕捉和记录它到一个文件中。随后将文件读回修改它,有没有办法用我的Java应用程序中删除了背景噪音。

When i capture with JavaSound or Third party sound capture tools and record it to a file. Afterwards read the file back to modify it, is there any way to remove the "background noise" with my java application.

如交通/空气噪音,而主要是人说话?

Such as road traffic/air noises while main person was talking?

感谢

推荐答案

删除背景噪音是非常困难的。如果它是均匀的噪声,例如在飞机上的白噪声,有算法,以去除那些频率分量。但是,如果噪声是不均匀的和类似的性质的作为良好的记录,例如人在后台,街上的噪音,说话等。这将是非常困难的将它们分开。目前已经进行了大量的研究这一点。

Removing background noise is very difficult. If it is uniform noise, such as the "white" noise on an airplane, there are algorithms to remove those frequency components. But if the noise is non-uniform and similar in nature as your good recording, e.g. people talking in the background, street noise, etc. it will be very difficult to separate them. There has been done a lot of research on this.

最起码,你需要知道的好声音到底是什么,什么是坏的音频。例如。如果你捕捉声音,有可能是可从其他声音,例如单独的语音专用音频修复软件 http://www.izotope.com/products/audio/rx/ 。如果您正在录制立体声声音,你可能会成功通过分析声音的左/右的位置,然后通过关联左右取出非语音组件。

At the very least, you'll need to know exactly what the good audio is, and what is the bad audio. E.g. if you're capturing voice, there might be special audio repair software available to separate voice from other sounds, e.g. http://www.izotope.com/products/audio/rx/. If you're recording voice in stereo, you may be successful by analyzing the left/right position of the voice, and then removing non-voice components by correlating left and right.

回复:MKB的评论:


  1. 一个噪声门将静音音频时(一些或所有频率分量)的电平低于阈值。根据您的背景噪音的水平,这可能帮助,但往往噪音门是烦人,因为你会听到背景,只要你的好的音频在那里,有沉默的。

  2. 低通滤波器去除高频成分(它可以让低频通过)!所以,如果你的背景噪声高频率的,这可能会有帮助。一个简单的FIR或IIR低通滤波器很容易实现。但它也会影响你的好的声音,如果它有高频成分。

这篇关于如何删除用java背景噪音,而在人群中区录制音频?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆