上面讲的都是用较为底层的方式来实现录音。其实如果不需要实时获取录制的音频流、不需要对录音的过程做太多的控制的话,使用AVAudioRecorder更加简单。
[[AVAudioRecorderalloc] initWithURL:url settings:settingserror:&recorderSetupError];
url就是要录音的文件存放位置,setting就是设置录音的格式,采样率,通道数等等。
设置完之后就是[recorderprepareToRecord];
然后就是[recorder record];
但是在正式开始录音之前还是需要设置audiosession,并激活当前的audiosession,录音完之后将audiosession设置为非active。
后续的编码和压缩上传的过程就和上面讲的完全相同了。