IOS关于录音,播放实现总结
//音频录制(标准过程5,9更新)
准备:导入AVFoundation框架及头文件
1 设置会话类型,允许播放及录音
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
2 激活会话类别
[audioSession setActive:YES error:nil];
3 封装字典参数,有音频格式int,采样率float,通道数int,深度int
是通过KVC来设置的(setValue forKey)
NSDictionary *setting=[NSDictionary dictionary];
[setting setValue:[NSNumber numberWithInt:kAudioFormatAppleIMA4] forKey:AVFormatIDKey];
4 封装保存音频的沙盒路径
5 实例化录音对象,参数:保存URL,参数字典,错误,
注意模拟器调试,只能保存到沙盒中,
AVAudioRecorder *recorder = [[AVAudioRecorder alloc]initWithURL:(NSURL *) settings:(NSDictionary *) error:&error];
6 预加载准备录音
[recorder prepareRecorder];
7 处理按钮点击监听录音
监听按钮touchDown:录音开启 [recorder recorder];
监听按钮touchUpInset:手指在点击按钮后抬起
及touchUpOutset:手指在点击按钮后在其他地方抬起
停止录音 [recorder stop];
录音的实现总结:
1 实例化单例会话对象,设置会话类别为录音及播放模式,开启会话
2 实例化录音对象,参数有存储沙盒路径,音频字典参数(音频格式,采样率,深度等)
3 封装沙盒路径
4 实例化录音对象 路径 字典参数 错误
5 预加载开启
6 监听按钮的点击状态,按下录音,抬起停止
7 监听点击 实例化音频播放对象,填入URL,播放开启
//音频播放
苹果推荐的音频类型:AAC,IMA4,CAF(CoreAudioFormat)
1 AVFoundation
(只能播放本地音频,非网络音频)
_player=[AVAudioPlayer alloc]initWithContentsOfURL:url error:nil];
[_player play];
总结:播放本地音频三步
《1》封装音频URL路径
《2》类方法 初始化音频对象,参数URL 错误处理
《3》对象开启
对象中有许多属性 设置循环次数,播放控制(play/stop)及预加载方法prepareToPlay
IOS关于录音,播放实现总结的更多相关文章
- iOS开发----音频播放、录音、视频播放、拍照、视频录制
随着移动互联网的发展,如今的手机早已不是打电话.发短信那么简单了,播放音乐.视频.录音.拍照等都是很常用的功能.在iOS中对于多媒体的支持是非常强大的,无论是音视频播放.录制,还是对麦克风.摄像头的操 ...
- video/audio在ios/android上播放兼容
1.audio自动播放 <audio src='xxx.mp3' autoplay></audio> 上面是audio标签autoplay属性是自动播放,但是在安卓部分浏览器和 ...
- iOS AVAudioRecorder 录音频率、声道、位数配置 wav格式
iOS AVAudioRecorder 录音频率.声道.位数配置 #pragma mark 录音设置 - (void)setUP_VOICE_RECOARDER { NSError *error = ...
- iOS设备后台播放音乐方法
iOS设备后台播放音乐方法 1 在设置Capabliites中打开Background Modes,选择Audio And AirPlay 2 在控制viewDidLoad中添加下面代码 AVAudi ...
- iOS开发-音乐播放
现在的各种App大行其道,其实常用也就是围绕着吃喝玩乐基本的需求,视频,音乐在智能手机出现之前更是必不可少的功能,每个手机都会有一个自带的音乐播放器,当然公众也有自己的需求所以也就造就了各种音乐播放软 ...
- Android 4.3实现类似iOS在音乐播放过程中如果有来电则音乐声音渐小铃声渐大的效果
目前Android的实现是:有来电时,音乐声音直接停止,铃声直接直接使用设置的铃声音量进行铃声播放. Android 4.3实现类似iOS在音乐播放过程中如果有来电则音乐声音渐小铃声渐大的效果. 如果 ...
- iOS 9音频应用播放音频之iOS 9音频播放进度
iOS 9音频应用播放音频之iOS 9音频播放进度 iOS 9音频应用开发播放进度 音频文件在播放后经过了多久以及还有多久才可以播放完毕,想必是用户所关注的问题.为了解决这一问题,在很多的音乐播放器中 ...
- HTML5微信jssdk录音播放语音的方法
HTML5微信jssdk录音播放语音的方法需要注意的2个问题1 就是一定要判断1秒内 录音都不算 ps:太短不能录音 2 录音超过1分钟 会发现正在录音突然消失 所以要写wx.onVoiceRecor ...
- iOS 实时录音和播放
需求:最近公司需要做一个楼宇对讲的功能:门口机(连接WIFI)拨号对室内机(对应的WIFI)的设备进行呼叫,室内机收到呼叫之后将对收到的数据进行UDP广播的转发,手机(连接对应的WIFI)收到视频流之 ...
随机推荐
- java之google style
Google的Java编码规范英文版: http://google-styleguide.googlecode.com/svn/trunk/javaguide.html Google的Java编码规范 ...
- phpcms万能字段如何使用php方法
来自:http://www.tantengvip.com/2013/12/phpcms-php-function/ phpcms后台内容模块->模型管理->添加字段功能很强大,你只需在ph ...
- cocos2d界面渲染
渲染是visit函数来做的, visit是先将不可见的节点和他所有的子节点都跳过, 然后再看节点的子节点是否为空, 如果为空的话直接看这个节点是否在摄像机可见范围之内, 如果在就渲染这个节点, 否则什 ...
- HDU 1160 DP最长子序列
G - FatMouse's Speed Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64 ...
- zend studio安装svn插件
进入zend->Help->Install New Software 输入如下地址: http://subclipse.tigris.org/update_1.8.x 选择subclips ...
- svn update错误
可以再checkout下来一份项目,重新命名,然后将该项目下的隐藏文件夹.svn替换掉原项目 注意备份
- git中找回丢失的对象
本文转载自:http://gitbook.liuhui998.com/5_9.html 译者注: 原书这里只有两个链接: Recovering Lost Commits Blog Post,Recov ...
- Oracle11g +Win 64+PLSQL9.0
最近在Oracle11g配置数据库的时候发现了一个问题,就是找不到监听,网上说win7的64位的系统必须装上32位的客户端才能被PLSQL 识别,事实上也是这样,PLSQL 只能识别32位的客户端,所 ...
- Oracle 11g 下载|Oracle 11g 官网下载|Oracle 11g 官网下载 带登录用户和密码
本文转载自 Oracle 11g 下载|Oracle 11g 官网下载|Oracle 11g 官网下载 带登录用户和密码 oracle 下载还需要用户名我自己注册了个方便大家使用下载直接点击提示找不到 ...
- POJ 2503
http://poj.org/problem?id=2503 题意就是字典翻译.这个输入输出真心恶心,要不是看discuss我肯定是解决不了,还用上了sscanf函数.... 这道题我用几种方法做. ...