iOS中的音频条形图可视化工具

Wed*_*rda 9 objective-c ios

我正在寻找一种在iOS中创建类似于此的音频条形图可视化器的方法.

在此输入图像描述

每个白条都会根据音频波形上下移动.我真的迷失了,因为在Objective-c中处理音频的经验不多.

编辑:我正在寻找的是Overcast的应用程序在其可视化工具(播客图像下半部分的垂直橙色条组)上的作用

有人可以帮忙吗?谢谢

编辑:感谢Tomer的回答,我终于成功了.首先,我做了本教程,以便清楚地表达出来.然后我为我的项目创建了自己的VisualizerView,你可以在这个要点中找到它.也许并不完美,但它做了我需要做的事情.

Tom*_*mer 9

通常,如果您想了解iOS中听起来像什么,您可以选择几个选项:

  • 使用简单的AVAudioPlayer音频播放器,然后使用该[audioPlayer averagePowerForChannel:]方法获取当前时刻的avarage音频电平.看看这个教程.
  • 使用音频队列API,它允许您将所需的任何音频发送到扬声器:您将从源读取音频并每次使用它填充缓冲区.(如果您正在读取文件,请使用AVAssetReader)这样您就可以确切地知道正在播放的波形,例如,您可以计算其平均功率或以其他方式处理它(如FFT).然后你会相应地更新吧.

编辑:做这种事情的标准方法是使用快速傅立叶变换(FFT) - 它从声音中提取频率信息.这是在iOS上使用它一个很好的例子(Apple的指南).但是,当然,要使用它,您必须确切地知道每次播放的波形,因此您可能希望使用较低级别的API,例如音频队列.