15.Swift 录制音频
来源:互联网 发布:网络推广学校 编辑:程序博客网 时间:2024/06/15 15:48
15.Swift 录制音频
- Swift 录制音频
我们知道,AVAudioPlayer可以播放音频。但是与之对应的AVAudioRecorder是可以录制音频的。
AVAudioRecorder构造方法 AVAudioRecorder.init(URL url: NSURL, settings: [String : AnyObject]) throws
创建文件,准备自动记录 AVAudioRecorder.prepareToRecord() -> Bool
开始记录 AVAudioRecorder.record() -> Bool
停止记录,并关闭文件 AVAudioRecorder.stop()
var avRec:AVAudioRecorder! var avUrl:NSURL! var avPlayer:AVAudioPlayer! // 初始化AVAudioRecorder func initAVAudioRecorder(){ self.avUrl = (NSFileManager.defaultManager().URLsForDirectory(NSSearchPathDirectory.DocumentDirectory, inDomains: NSSearchPathDomainMask.AllDomainsMask)[0] as NSURL).URLByAppendingPathComponent("record") NSLog("\(self.avUrl)"); // 录音文件配置 let recordSettings = [ AVEncoderAudioQualityKey: AVAudioQuality.Max.rawValue, AVEncoderBitRateKey: 320000, AVNumberOfChannelsKey: 2, AVSampleRateKey: 44100.0 ] do{ // 实例化AVAudioRecorder try self.avRec = AVAudioRecorder(URL: avUrl, settings: recordSettings as! [String : AnyObject]) // 创建文件,准备记录。会自动记录 self.avRec.prepareToRecord() }catch let error as NSError{ NSLog("\(error.localizedDescription)") }catch { NSLog("Other error") } } // 开始录音 @IBAction func startRecord(sender: AnyObject) { NSLog("start") // 开始记录 self.avRec.record() } // 结束录音 @IBAction func stopRecord(sender: AnyObject) { NSLog("stop") // 停止记录,并关闭文件 self.avRec.stop() } // 播放录音 @IBAction func playRecord(sender: AnyObject) { NSLog("playRecord") do{ try self.avPlayer = AVAudioPlayer(contentsOfURL: self.avUrl) }catch let error as NSError{ NSLog("\(error.localizedDescription)") }catch { NSLog("Other error") } self.avPlayer.prepareToPlay() avPlayer.play() }
0 0
- 15.Swift 录制音频
- 音频录制
- 音频录制
- 录制音频
- 录制音频
- 音频录制
- 录制音频
- 录制音频和播放音频
- 音频录制和播放
- Android录制音频
- ios 录制音频
- 音频录制之AVAudioRecorder
- android 音频录制
- Android 录制音频示例
- Android MediaRecorder录制音频
- 音频录制之AVAudioRecorder
- 使用MediaRecorder录制音频
- 音频录制(windows)
- cmake+gcc解决extended initializer lists only available with -std=c++11 or -std=gnu++11
- CloudStack 4.4+KVM之KVM计算节点安装
- JavaScript Core -- 理解闭包
- 惯性导航之认识四元数(四)
- UML——包图
- 15.Swift 录制音频
- 使用 timeit 模块
- UML——对象图
- Bouguet极线校正进一步理解
- NYOJ 888 取石子(九)(反尼姆博奕)
- 56Merge Intervals
- 双目定标与双目校正
- yunwen_english_missing_point
- 机房收费系统—结账