2016-05-03 76 views
1

在建立语音录音应用程序,我想在iPhone上显示类似于“语音备忘录”应用程序的语音频率图。用户录制音频时创建语音频率图吗?

林不知道究竟从哪里开始构建这个..任何人都可以给我一些领域寻找到和如何构建呢?那么我就去学习所有的领域并建立它!

谢谢

+1

底部一个是功率谱。它显示了不同频率下的功率(y轴,以'dB'测量)。 – paulvs

+0

如果您要求某个时间推荐一个更容易的库,我建议您在[Software Recommendations](http://softwarerecs.stackexchange.com/)姊妹网站上发布。 –

+0

如果你想了解这个背后的理论,你需要研究[傅立叶分析](https://en.wikipedia.org/wiki/Fourier_analysis)。 –

回答

4

很好的例子,项目由苹果:

enter image description here

https://developer.apple.com/library/ios/samplecode/aurioTouch/Introduction/Intro.html


顶部图表措施强度随时间。这是最直观的声音表现形式,因为更响亮的声音会显示为更大的峰值。强度以满量程(%FS)单位的百分比来衡量,其中100%对应于设备声音最大的可记录声音。 当一个人对麦克风讲话时,电压会随着时间的推移而波动。这是这个图表代表的。

底部图表是Power Spectral Density。它显示信号中功率最大的地方。例如,在x轴的下端会出现一个深沉大声的声音作为最大值,对应于深层声音包含的低频。在dB(对数单位)中以不同频率测量功率。


有点谷歌搜索和测试后,我认为AVFoundation不提供访问实时的音频数据,这是一个高层次的API,用于记录到文件和播放主要有用。 较低级别的音频队列服务API似乎是要走的路(尽管我确定有那些可以简化其复杂API的库)。

音频队列服务编程指南https://developer.apple.com/library/mac/documentation/MusicAudio/Conceptual/AudioQueueProgrammingGuide/AboutAudioQueues/AboutAudioQueues.html#//apple_ref/doc/uid/TP40005343-CH5-SW18

DSP在夫特https://www.objc.io/issues/24-audio/functional-signal-processing/

+0

令人敬畏的信息!我今天要在Swift上重读这个DSP。当用户在iPhone上录制他们的声音时,那篇文章是否会帮助我获取这些值?我不确定您是否在iPhone上看过“语音备忘录”应用程序,但是当您按下“录制”按钮并说出...语音频率图表开始监视“强度与时间”。这是我试图达到的目标。谢谢! – brkr

+0

我编辑了我的答案,提供了一些您可能会觉得有用的提示。 – paulvs

+0

你的传奇人物谢谢你! – brkr