最近在簡書上看到一個繪制聲波的文章,感覺很炫酷,自己看了文章,實踐了一下。Demo中寫了簡單的實現(xiàn),獲取音波的是參考這篇文章。
實現(xiàn)這個可以分為兩步。
1.獲取音波數(shù)據(jù)源。
2.繪制圖形。
大致的實現(xiàn):
獲取音波的,這里用到了AVAssetReader,如果不太了解的童鞋可以百度一下。
部分代碼如下
if (_audioRecorder.isRecording || _isRecordingPaused)
{
[_audioRecorder updateMeters];
CGFloat normalizedValue = pow (10, [_audioRecorder averagePowerForChannel:0] / 20);
[self.animationVies animationAddPointY:normalizedValue * 150];
}
獲取到音波的頻率并轉(zhuǎn)化成我們可用的數(shù)據(jù)后,我們就可以自己發(fā)揮想象做各種的展示。
siri.png
音波繪制
到這就完成了。。這里還是要謝謝開源大神們的項目參考的github上的Demo。