绘制一个音频波形基本包括以下三步:

  1. 读取: 读取或解压音频样本
  2. 缩减: 实际读取的样本数量远比要渲染绘制的要多,缩减的过程必须作用于整个样本集.通常将样本总集分为固定大小的样本块,并在每个样本块上找到最大的样本、所有样本的平均值或min/max值.
  3. 渲染: 将缩减后的样本呈现在屏幕上

代码地址为WaveformView,编译环境为Xcode 7.3