ios – 在iPhone上播放歌曲时通过麦克风检测噪音

前端之家收集整理的这篇文章主要介绍了ios – 在iPhone上播放歌曲时通过麦克风检测噪音前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在制作一个应用程序,应该播放一个简单的音轨,让我知道在轨道播放时附近有什么噪音.这是通过在iPhone的扬声器上播放歌曲时从麦克风进行现场录制完成的.任何不属于音乐播放的声音被定义为噪音.

实现此功能最简单的方法是什么?

我已经很广泛地在网上进行了研究,但是我没有找到任何可以指出这个具体问题的解决方案.虽然它可能是我读到的不同技术的组合,但最终将成为解决方案.

我已经实现的事情
同时播放歌曲并录制音频.

我试过的东西
注意:由于我们鼓励添加我们已经尝试过的内容,所以添加以下部分.但我绝对不是说这是解决问题的正确方法,这只是我尝试过的一件事.

我劫持了aurioTouch2示例应用程序:我所做的是播放歌曲一次,并记录快速傅里叶变换值(以相当低的采样率保持记录数据量低).然后,当轨道再次播放时,我基本上计算(每个时间步长)使用实况播放fft数据构建的输出图和记录的fft数据之间的相关系数(所以当您放置时,您看到的“波峰”行应用程序在fft模式).
这种“一种”的作品.当室内过多的声音/噪音,但是它不是很敏感时,相关系数明显较低,并且还取决于录制fft数据时使用的音量.最后我认为这可能不是最好的方法.

有人认为这是可能的吗?如果是这样,最好的办法是什么?
请问您是否需要更多的澄清!

解决方法

你只想知道,环境中有多少噪音,你有两个信号,原来的一个和记录的一个?那么你的解决方案是完美的.您需要同步信号并找到一些数字,这使您具有相似性.
您甚至可以避免使用原始信号(正确的演示).

自动对焦是同步您的信号的好方法.
Autocorellation-index是一个给你相似度的数字.

当然,如果音量较低,则噪音(相对于音乐)较大,影响较大.由于您应该可以检测到音量,所以您应该可以添加一些校正因子.但是由于这是一个“自然”问题,我猜每个算法都会有这个问题.

另一个解决方案是从记录的信号中减去原始信号,然后应该将噪声作为两个信号的差值.那么你也有噪音的力量…

原文链接:https://www.f2er.com/iOS/335242.html

猜你在找的iOS相关文章