AVFoundation学习笔记(一):音频录制、资源载入

本文介绍了AVFoundation框架在iOS音视频处理中的应用,包括文本转语音、音频播放与录制、音频会话配置、AVAudioPlayer和AVAudioRecorder的使用,以及资源和元数据的异步载入与处理。通过实例展示了如何利用AVFoundation进行音频操作,如调整播放速度、音量、音调,以及处理音频中断和线路改变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在学习《AVFoundation开发秘籍》这本书,以前没有怎么接触过,学习之后瞬间感觉AVFoundation这个框架好强大,值得深入的学习。写点笔记以加强记忆和备忘。

AVFoundation入门

文本转语音

AVFoundation内置了文本到语音的转换功能,主要类是AVSpeechSynthesizer和AVSpeechUtterance,粗略的实现代码如下所示:

AVSpeechUtterance

主要属性说明如下:
1. voice:指定在朗读时使用的声音
2. rate:指定在朗读时的语速,介于AVSpeechUtteranceMinimumSpeechRate 和 AVSpeechUtteranceMaximumSpeechRate之间
3. pitchMutiplier:指定朗读时的音调,一般介于0.5(低音调)和2.0(高音调)之间。
4. postUtteranceDelay:指定语音合成器在播放下一句之间的间隔,类似的可以设置preUtteranceDelay
5. volume:指定在朗读时的音量,介于0.0和1.0之间

播放和录制音频

音频会话分类

AVFoundation定义了7种分类来描述应用程序所使用的音频行为,如下表所示:

分类 作用 是否允许混音 音频输入 音频输出
Ambient 游戏、效率应用程序 ✔︎ ✔︎
Solo Ambient(默认) 游戏、效率应用程序 ✔︎
Playback 音频和视频播放 可选 ✔︎
Record 录音、音频捕捉 ✔︎
Play and Record VoIP、语音聊天 可选 ✔︎ ✔︎
Audio Processing 离线会话和处理
Multi-Route 使用外部硬件的高级A/V应用程序 ✔︎ ✔︎

配置音频会话

AVAudioSession提供了与应用程序音频会话交互的接口,所以开发者需要取得指向该单例的指针,通过设置合适的分类,开发者可为音频的播放指定需要的音频会话

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值