《移动开发经典丛书 AV Foundation开发秘籍 实践掌握iOS & OS X应用的视听处理技术》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)BOBMCCUNE著;冯宗翰,孙婷婷译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302405504
  • 页数:308 页
图书介绍:畅销书作者Bob McCune分享了自己丰富的AV Foundation开发技巧和经验:AV Foundation如何融入苹果的媒体环境极其功能特色,为应用添加音频回放和录音功能,提供视频回放功能以提升用户的动态体验效果,使用iOS Videos或OS X QuickTime播放器,使用OpenGL ES和Core Image开发媒体捕获应用,自定义视频播放器,实现视频缩放、人脸识别等高级功能,混合视频轨迹和自动化视频控制,等等。

第Ⅰ部分 AV Foundation基础 3

第1章 AV Foundation入门 3

1.1 AV Foundation的含义 3

1.2 AV Foundation的适用范围 4

1.3 解析AV Foundation 5

1.3.1 音频播放和记录 5

1.3.2 媒体文件检查 6

1.3.3 视频播放 6

1.3.4 媒体捕捉 6

1.3.5 媒体编辑 6

1.3.6 媒体处理 6

1.4 了解数字媒体 6

1.4.1 数字媒体采样 7

1.4.2 音频采样介绍 7

1.5 数字媒体压缩 11

1.5.1 色彩二次抽样 11

1.5.2 编解码器压缩 13

1.5.3 视频编解码器 13

1.5.4 音频编解码器 15

1.6 容器格式 16

1.7 初识AV Foundation 16

1.8 小结 20

1.9 挑战 20

第2章 播放和录制音频 21

2.1 Mac和iOS的音频环境 21

2.2 理解音频会话 22

2.2.1 音频会话分类 22

2.2.2 配置音频会话 23

2.3 使用AVAudioPlayer播放音频 23

2.3.1 创建AVAudioPlayer 23

2.3.2 对播放进行控制 24

2.4 创建Audio Looper 25

2.5 配置音频会话 29

2.6 处理中断事件 30

2.7 对线路改变的响应 33

2.8 使用AVAudioRecorder录制音频 35

2.8.1 创建AVAudioRecorder 36

2.8.2 控制录音过程 37

2.9 创建Voice Memo应用程序 38

2.9.1 配置音频会话 38

2.9.2 实现录音功能 39

2.10 使用Audio Metering 44

2.11 小结 48

第3章 资源和元数据 49

3.1 理解资源的含义 49

3.2 创建资源 50

3.2.1 iOS Assets库 50

3.2.2 iOS iPod库 51

3.2.3 Mac iTunes库 52

3.3 异步载入 52

3.4 媒体元数据 54

3.5 使用元数据 58

3.5.1 查找元数据 59

3.5.2 使用AVMetadataItem 60

3.6 创建MetaManager应用程序 63

3.6.1 THMediaItem 63

3.6.2 THMetadata的实现 67

3.6.3 数据转换器 69

3.6.4 简单转换 70

3.6.5 转换Artwork 71

3.6.6 转换注释 72

3.6.7 转换音轨数据 73

3.6.8 转换唱片数据 75

3.6.9 转换风格数据 76

3.6.10 完成THMetadata 79

3.7 保存元数据 81

3.8 小结 82

3.9 挑战 83

第4章 视频播放 85

4.1 播放功能综述 85

4.1.1 AVPlayer 86

4.1.2 AVPlayerLayer 86

4.1.3 AVPlayerItem 88

4.2 播放秘籍 88

4.3 处理时间 90

4.4 创建视频播放器 91

4.4.1 创建视频视图 91

4.4.2 创建视频控制器 93

4.4.3 监听状态改变 96

4.5 时间监听 97

4.5.1 定期监听 98

4.5.2 边界时间监听 98

4.5.3 条目结束监听 99

4.5.4 播放栏委托回调 100

4.6 创建可视搓擦条 102

4.7 显示字幕 106

4.8 Airplay 110

4.9 小结 111

4.10 挑战 112

第5章 AV Kit用法 113

5.1 针对iOS平台的AV Kit框架 113

5.2 针对Mac OS X平台的AV Kit框架 115

5.3 迈出第一步 115

5.4 控件类型 119

5.4.1 内嵌类型 119

5.4.2 浮动类型 120

5.4.3 最小化类型 120

5.4.4 None类型 121

5.5 拓展学习 121

5.6 章的处理 124

5.7 启用修剪 129

5.8 导出 130

5.9 传统资源的兼容 132

5.10 小结 135

5.11 挑战 136

第Ⅱ部分 媒体捕捉 139

第6章 捕捉媒体 139

6.1 捕捉功能综述 139

6.1.1 捕捉会话 140

6.1.2 捕捉设备 140

6.1.3 捕捉设备的输入 140

6.1.4 捕捉的输出 141

6.1.5 捕捉连接 141

6.1.6 捕捉预览 141

6.2 简单的秘籍 143

6.3 创建相机应用程序 144

6.3.1 创建预览视图 145

6.3.2 创建捕捉控制器 148

6.3.3 设置捕捉会话 149

6.3.4 启动和停止会话 151

6.3.5 处理隐私需求 152

6.3.6 切换摄像头 153

6.3.7 配置捕捉设备 155

6.3.8 调整焦距和曝光 156

6.3.9 调整闪光灯和手电筒模式 160

6.3.10 拍摄静态图片 161

6.3.11 使用Assets Library框架 163

6.3.12 视频捕捉 165

6.4 小结 170

6.5 挑战 170

第7章 高级捕捉功能 171

7.1 视频缩放 171

7.2 人脸检测 176

7.3 机器可读代码识别 186

7.3.1 一维条码 186

7.3.2 创建条码扫描器 188

7.3.3 创建条码识别的委托 191

7.4 使用高帧率捕捉 196

7.4.1 高帧率捕捉综述 197

7.4.2 支持高帧率捕捉 197

7.5 视频处理 201

7.6 学习CMSampleBuffer 202

7.6.1 样本数据 202

7.6.2 格式描述 203

7.6.3 时间信息 204

7.6.4 附加的元数据 204

7.6.5 AVCaptureVideoData-Output 205

7.7 小结 209

7.8 挑战 209

第8章 读取和写入媒体 211

8.1 综述 211

8.1.1 AVAssetReader 212

8.1.2 AVAssetWriter 212

8.1.3 读写示例 213

8.2 创建音频波形视图 215

8.2.1 读取音频样本 216

8.2.2 缩减音频样本 220

8.2.3 渲染音频样本 222

8.3 捕捉录制的高级方法 224

8.4 小结 237

8.5 挑战 238

第Ⅲ部分 媒体创建和编辑 241

第9章 媒体的组合和编辑 241

9.1 组合媒体 241

9.2 时间的处理 243

9.2.1 CMTime 243

9.2.2 CMTimeRange 245

9.3 基础方法 246

9.4 15 Seconds示例应用程序 249

9.5 创建一个组合 251

9.6 导出组合 256

9.7 小结 260

9.8 挑战 260

第10章 混合音频 261

10.1 混合音频 261

10.2 15 Seconds应用程序中的音频混合 264

10.3 小结 269

10.4 挑战 269

第11章 创建视频过渡效果 271

11.1 综述 271

11.1.1 AVVideoComposition 272

11.1.2 AVVideoComposition-Instruction 272

11.1.3 AVVideoCompositionLayer-Instruction 272

11.2 概念阶段 272

11.2.1 部署视频布局 273

11.2.2 定义重叠区域 274

11.2.3 计算通过和过渡的时间范围 276

11.2.4 创建组合和层指令 278

11.2.5 创建和配置AVVideo-Composition 279

11.2.6 创建视频组合的捷径 280

11.3 为15 Seconds应用程序添加视频过渡 281

11.4 小结 290

11.5 挑战 290

第12章 动画图层内容 291

12.1 CoreAnimation应用 291

12.2 在AVFoundation中使用CoreAnimation 293

12.2.1 使用AVSynchronizedLayer播放 294

12.2.2 使用AVVideoComposition-CoreAnimationTool导出 295

12.3 15 Seconds应用程序:添加动画标题 296

12.4 准备组合 304

12.4.1 播放时应用CoreAnimation 305

12.4.2 导出时应用CoreAnimation 306

12.5 小结 307

12.6 挑战 308