搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
AV Foundation开发秘籍:实践掌握iOS & OS X应用的视听处理技术
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787302405504
  • 作      者:
    (美)Bob McCune著
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2015
收藏
作者简介

  Chris Georgenes,是一名Adobe Flash设计师和动画师,长期从事自由职业。此前,Chris为一家小型软件公司制作网络动画电视节目,如ABC和Cartoon Network。几年前他开始为Acclaim、Playdom和Disney Interactive公司设计游戏。Chris目前担任移动应用GSN Casino(Game Show Network的新数码产品)的创意总监,该应用的极大成功让Chris备感快乐。Chris曾撰写多本书籍,经常公开发表演讲,爱喝咖啡;在35年的职业生涯中,一直十分迷恋音乐。

展开
内容介绍
  快速掌握使用AV Foundation开发iOS和OS X应用的技术
  如果想开发富媒体iOS或OS X应用程序,你可以使用苹果公司推出的AV Foundation框架来实现诸多神奇功能。不过AV Foundation框架基于最前沿的语言特征,极其庞大,而且相关文档较少;现在,Bob McCune撰写的这本 AV Foundation开发秘籍——实践掌握iOS & OS X应用的视听处理技术 为你铺就一条精通掌握这些卓越技术的高效途径。
  McCune生动的讲解和精彩的GitHub示例项目已帮助数以千计的苹果开发者领略到AV Foundation的魅力。McCune基于丰富的开发经验,带你创建紧贴实用的应用程序,让你切实掌握相关技术。
  通过学习《AV Foundation开发秘籍:实践掌握iOS & OS X 应用的视听处理技术》,你将创建语音备忘录、自定义视频播放器、视频编辑器和图片/视频相机应用程序,将掌握从头开发高级媒体应用程序需要的所有技术。每章都提供了McCune精心编写的“挑战”内容和完整的初始应用程序,使你更深入地理解并最大限度地利用突破性的AV Foundation媒体框架。
  涵盖内容
  ◆ 了解AV Foundation如何应用于苹果媒体环境及其每个核心功能区域
  ◆ 为应用添加音频播放和录制功能
  ◆ 为视频播放功能增加更丰富、更动态的体验
  ◆ 使用AV Kit让程序拥有类似于iOS Videos和OS X QuickTime播放器的用户界面
  ◆ 使用OpenGL ES和Core Image开发具有实时视频处理功能的媒体捕捉应用
  ◆ 实现自定义视频播放器
  ◆ 整合高级捕捉功能,如视频缩放、人脸检测、条码扫描和高帧率捕捉
  ◆ 混合多音频轨道和自动音量控制
  ◆ 创建高级的非线性、无损编辑应用
  ◆ 添加高级视频编辑功能,如视频过渡和动画效果
展开
精彩书摘
  《AV Foundation开发秘籍:实践掌握iOS & OS X 应用的视听处理技术》:
  (3)在transport象上设置当前时间和总长。将用户界面上展示的时间与播放的媒体进行同步。transport对象无法识别CMTime,只能处理以秒为单位的NSTime lnterval类型的时间。我们使用CMTime Get Seconds函数将CMTime值转换为秒。Core Media定义了常量kCMTime Zero,开发者可以将它作为开头的current Time参数,使用播放条目的duration属性值作为第二个参数。
  (4)向播放栏传递一个标题字符串,来展示资源的标题(如果资源的元数据中存在标题信息)。AVAsset没有title属性,这是我们加AAVAsset中的一个分类方法,目的是增加代码的可读性。这个分类方法用到了上一章介绍的元数据API,具体地讲,从资源的common Metadata得到AVMetadata Common Key Title值。具体细节参考AVAsset+THAdditions。
  (5)现在就准备调用AVPlayer的play方法进行播放了。最后,在完成对status关键路径的监听后,我们希望将作为监听器的self移除。
  现在可以启动应用程序并开始播放其中一个视频。虽然视频已经播放,不过用户界面上的控件还没有提供任何功能,并且随着时间的推移用户界面也没有相应的反馈信息。这就又回到了addPlayer ItemTime Observer方法上,我们需要在该方法上实现相关的功能,不过在此之前我们需要先学习如何得知AVPlayer的时间变化。
  4.5时间监听
  我们已经讨论过并了解到如何使用KVO来观察播放条目的status属性。KVO对于常见的状态监控表现得很出色,并且可以监听AVPlayerItem和AVPlayer的许多属性。不过KVO也有不能胜任的场景,比如需要监听AVPlayer的时间变化。这些监听类型都是自身具有明显的动态特性并需要非常高的精确度,这一点要比标准的键值监听要求高。为满足这一需求,AVPlayer提供了两种基于时间的监听方法,让应用程序可以对时间变化进行精准的监听。
  ……
展开
目录
第Ⅰ部分  AV Foundation基础
第1章  AV Foundation入门
1.1  AV Foundation的含义
1.2  AV Foundation的适用范围
1.3  解析AV Foundation
1.3.1  音频播放和记录
1.3.2  媒体文件检查
1.3.3  视频播放
1.3.4  媒体捕捉
1.3.5  媒体编辑
1.3.6  媒体处理
1.4  了解数字媒体
1.4.1  数字媒体采样
1.4.2  音频采样介绍
1.5  数字媒体压缩
1.5.1  色彩二次抽样
1.5.2  编解码器压缩
1.5.3  视频编解码器
1.5.4  音频编解码器
1.6  容器格式
1.7  初识AV Foundation
1.8  小结
1.9  挑战
第2章  播放和录制音频
2.1  Mac和iOS的音频环境
2.2  理解音频会话
2.2.1  音频会话分类
2.2.2  配置音频会话
2.3  使用AVAudioPlayer播放音频
2.3.1  创建AVAudioPlayer
2.3.2  对播放进行控制
2.4  创建Audio Looper
2.5  配置音频会话
2.6  处理中断事件
2.7  对线路改变的响应
2.8  使用AVAudioRecorder录制音频
2.8.1  创建AVAudioRecorder
2.8.2  控制录音过程
2.9  创建Voice Memo应用程序
2.9.1  配置音频会话
2.9.2  实现录音功能
2.10  使用Audio Metering
2.11  小结
第3章  资源和元数据
3.1  理解资源的含义
3.2  创建资源
3.2.1  iOS Assets库
3.2.2  iOS iPod库
3.2.3  Mac iTunes库
3.3  异步载入
3.4  媒体元数据
3.5  使用元数据
3.5.1  查找元数据
3.5.2  使用AVMetadataItem
3.6  创建MetaManager应用程序
3.6.1  THMediaItem
3.6.2  THMetadata的实现
3.6.3  数据转换器
3.6.4  简单转换
3.6.5  转换Artwork
3.6.6  转换注释
3.6.7  转换音轨数据
3.6.8  转换唱片数据
3.6.9  转换风格数据
3.6.10  完成THMetadata
3.7  保存元数据
3.8  小结
3.9  挑战
第4章  视频播放
4.1  播放功能综述
4.1.1  AVPlayer
4.1.2  AVPlayerLayer
4.1.3  AVPlayerItem
4.2  播放秘籍
4.3  处理时间
4.4  创建视频播放器
4.4.1  创建视频视图
4.4.2  创建视频控制器
4.4.3  监听状态改变
4.5  时间监听
4.5.1  定期监听
4.5.2  边界时间监听
4.5.3  条目结束监听
4.5.4  播放栏委托回调
4.6  创建可视搓擦条
4.7  显示字幕
4.8  Airplay
4.9  小结
4.10  挑战
第5章  AV Kit用法
5.1  针对iOS平台的AV Kit框架
5.2  针对Mac OS X平台的AV Kit框架
5.3  迈出第一步
5.4  控件类型
5.4.1  内嵌类型
5.4.2  浮动类型
5.4.3  最小化类型
5.4.4  None类型
5.5  拓展学习
5.6  章的处理
5.7  启用修剪
5.8  导出
5.9  传统资源的兼容
5.10  小结
5.11  挑战

第Ⅱ部分  媒体捕捉
第6章  捕捉媒体
6.1  捕捉功能综述
6.1.1  捕捉会话
6.1.2  捕捉设备
6.1.3  捕捉设备的输入
6.1.4  捕捉的输出
6.1.5  捕捉连接
6.1.6  捕捉预览
6.2  简单的秘籍
6.3  创建相机应用程序
6.3.1  创建预览视图
6.3.2  创建捕捉控制器
6.3.3  设置捕捉会话
6.3.4  启动和停止会话
6.3.5  处理隐私需求
6.3.6  切换摄像头
6.3.7  配置捕捉设备
6.3.8  调整焦距和曝光
6.3.9  调整闪光灯和手电筒模式
6.3.10  拍摄静态图片
6.3.11  使用Assets Library框架
6.3.12  视频捕捉
6.4  小结
6.5  挑战
第7章  高级捕捉功能
7.1  视频缩放
7.2  人脸检测
7.3  机器可读代码识别
7.3.1  一维条码
7.3.2  创建条码扫描器
7.3.3  创建条码识别的委托
7.4  使用高帧率捕捉
7.4.1  高帧率捕捉综述
7.4.2  支持高帧率捕捉
7.5  视频处理
7.6  学习CMSampleBuffer
7.6.1  样本数据
7.6.2  格式描述
7.6.3  时间信息
7.6.4  附加的元数据
7.6.5  AVCaptureVideoData-Output
7.7  小结
7.8  挑战
第8章  读取和写入媒体
8.1  综述
8.1.1  AVAssetReader
8.1.2  AVAssetWriter
8.1.3  读写示例
8.2  创建音频波形视图
8.2.1  读取音频样本
8.2.2  缩减音频样本
8.2.3  渲染音频样本
8.3  捕捉录制的高级方法
8.4  小结
8.5  挑战

第Ⅲ部分  媒体创建和编辑
第9章  媒体的组合和编辑
9.1  组合媒体
9.2  时间的处理
9.2.1  CMTime
9.2.2  CMTimeRange
9.3  基础方法
9.4  15 Seconds示例应用程序
9.5  创建一个组合
9.6  导出组合
9.7  小结
9.8  挑战
第10章  混合音频
10.1  混合音频
10.2  15 Seconds应用程序中的音频混合
10.3  小结
10.4  挑战
第11章  创建视频过渡效果
11.1  综述
11.1.1  AVVideoComposition
11.1.2  AVVideoComposition- Instruction
11.1.3  AVVideoCompositionLayer-Instruction
11.2  概念阶段
11.2.1  部署视频布局
11.2.2  定义重叠区域
11.2.3  计算通过和过渡的时间范围
11.2.4  创建组合和层指令
11.2.5  创建和配置AVVideo-Composition
11.2.6  创建视频组合的捷径
11.3  为15 Seconds应用程序添加视频过渡
11.4  小结
11.5  挑战
第12章  动画图层内容
12.1  Core Animation应用
12.2  在AV Foundation中使用Core Animation
12.2.1  使用AVSynchronizedLayer播放
12.2.2  使用AVVideoComposition-CoreAnimationTool导出
12.3  15 Seconds应用程序:添加动画标题
12.4  准备组合
12.4.1  播放时应用Core Animation
12.4.2  导出时应用Core Animation
12.5  小结
12.6  挑战
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证