• 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

  • 相关阅读:
    分享一个关于Cookie做的实验结果
    使用jest进行单元测试
    【转载】为什么单反镜头做不小,镜头越好越重呢?
    【转载】解读手机摄像头
    【转载】2019中国机器视觉产业全景图谱
    【行业】视觉传感器
    图像质量测评
    COM口了解下
    dbus-python的API及示例
    QtDbus的API及示例
  • 原文地址:https://www.cnblogs.com/ly1973/p/3718528.html
Copyright © 2020-2023  润新知