音视频开发进阶指南:基于Android与iOS平台的实践

音视频开发进阶指南:基于Android与iOS平台的实践
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
2017-12
版次: 1
ISBN: 9787111585824
定价: 79.00
装帧: 其他
开本: 16开
纸张: 胶版纸
页数: 423页
字数: 465千字
150人买过
  • 本书采用从零开始,逐级深入的方式写作,以项目实战为阶段性目标,外加实际生产环境下的特殊案例作为优化方案,让读者可以全方位掌握移动平台下音视频开发的大部分内容。首先介绍实现视频播放器和录制需要的基础知识,然后通过案例讲解如何实现视频播放器和一个视频录制的应用。但是一款录制的应用,要想上线,其实还要进行给音频视频美化,所以在提高篇,介绍了相应的内容,并给出了一个实际生产环境中的案例,之后,指导读者进阶,把前面学到的基础内容应用到直播中。后,给出排错方法和工具,和大家分享如何更有效率地开发应用程序。 展晓凯,曾工作于淘宝,参与设计开发淘宝旅行的机票搜索业务,曾就职于115网盘参与核心功能的研发,现就职于北京淘科技有限公司公司,任音视频架构师,在公司的唱吧、唱吧直播间、火星三条产品线都负责客户端核心的架构设计与开发工作,其中唱吧目前公布的数据已有几亿用户,月活也在千万量级,热衷于为可以帮助到的人做出一份自己的力量。 Contents?目  录

    推荐序一

    推荐序二

    前言

    第1章 音视频基础概念  1

    1.1 声音的物理性质  1

    1.1.1 声音是波  1

    1.1.2 声波的三要素  2

    1.1.3 声音的传播介质  3

    1.1.4 回声  3

    1.1.5 共鸣  4

    1.2 数字音频  4

    1.3 音频编码  6

    1.4 图像的物理现象  7

    1.5 图像的数值表示  8

    1.5.1 RGB表示方式  8

    1.5.2 YUV表示方式  9

    1.5.3 YUV和RGB的转化  10

    1.6 视频的编码方式  10

    1.6.1 视频编码  10

    1.6.2 编码概念  11

    1.7 本章小结  13

    第2章 移动端环境搭建  14

    2.1 在iOS上如何搭建一个基础项目  14

    2.2 在Android上如何搭建一个基础项目  21

    2.3 交叉编译的原理与实践  26

    2.3.1 交叉编译的原理  26

    2.3.2 iOS平台交叉编译的实践  27

    2.3.3 Android平台交叉编译的实践  33

    2.3.4 使用LAME编码MP3文件  38

    2.4 本章小结  42

    第3章 FFmpeg的介绍与使用  43

    3.1 FFmpeg的编译与命令行工具的使用  43

    3.1.1 FFmpeg的编译  43

    3.1.2 FFmpeg命令行工具的使用  51

    3.2 FFmpeg API的介绍与使用  60

    3.3 FFmpeg源码结构  68

    3.3.1 libavformat与libavcodec介绍  68

    3.3.2 FFmpeg通用API分析  69

    3.3.3 调用FFmpeg解码时用到的函数分析  70

    3.3.4 调用FFmpeg编码时用到的函数分析  71

    3.3.5 面向对象的C语言设计  72

    3.4 本章小结  74

    第4章 移动平台下的音视频渲染  75

    4.1 AudioUnit介绍与实践  75

    4.2 Android平台的音频渲染  84

    4.2.1 AudioTrack的使用  85

    4.2.2 OpenSL ES的使用  87

    4.3 视频渲染  90

    4.3.1 OpenGL ES介绍  90

    4.3.2 OpenGL ES的实践  91

    4.3.3 上下文环境搭建  98

    4.3.4 OpenGL ES中的纹理  104

    4.4 本章小结  109

    第5章 实现一款视频播放器  110

    5.1 架构设计  110

    5.2 解码模块的实现  115

    5.3 音频播放模块的实现  118

    5.3.1 Android平台的音频渲染  118

    5.3.2 iOS平台的音频渲染  119

    5.4 画面播放模块的实现  121

    5.4.1 Android平台的视频渲染  121

    5.4.2 iOS平台的视频渲染  122

    5.5 AVSync模块的实现  124

    5.5.1 维护解码线程  124

    5.5.2 音视频同步  125

    5.6 中控系统串联起各个模块  127

    5.6.1 初始化阶段  127

    5.6.2 运行阶段  128

    5.6.3 销毁阶段  129

    5.7 本章小结  130

    第6章 音视频的采集与编码  131

    6.1 音频的采集  131

    6.1.1 Android平台的音频采集  131

    6.1.2 iOS平台的音频采集  134

    6.2 视频画面的采集  137

    6.2.1 Android平台的视频画面采集  137

    6.2.2 iOS平台的视频画面采集  146

    6.3 音频的编码  156

    6.3.1 libfdk_aac编码AAC  156

    6.3.2 Android平台的硬件编码器MediaCodec  158

    6.3.3 iOS平台的硬件编码器AudioToolbox  161

    6.4 视频画面的编码  166

    6.4.1 libx264编码H264  166

    6.4.2 Android平台的硬件编码器MediaCodec  172

    6.4.3 iOS平台的硬件编码器  175

    6.5 本章小结  184

    第7章 实现一款视频录制应用  185

    7.1 视频录制的架构设计   185

    7.2 音频模块的实现   188

    7.2.1 音频队列的实现  189

    7.2.2 Android平台的实现  191

    7.2.3 iOS平台的实现  194

    7.3 音频编码模块的实现   198

    7.3.1 改造编码器  198

    7.3.2 编码器适配器  199

    7.4 画面采集与编码模块的实现   202

    7.4.1 视频队列的实现  202

    7.4.2 Android平台画面编码后入队  203

    7.4.3 iOS平台画面编码后入队  204

    7.5 Mux模块  205

    7.5.1 初始化  206

    7.5.2 封装和输出  208

    7.5.3 销毁资源  212

    7.6 中控系统串联起各个模块  213

    7.7 本章小结  214

    第8章 音频效果器的介绍与实践  215

    8.1 数字音频基础  215

    8.1.1 波形图  215

    8.1.2 频谱图  217

    8.1.3 语谱图  219

    8.1.4 深入理解时域与频域  219

    8.2 数字音频处理:快速傅里叶变换  222

    8.3 基本乐理知识  229

    8.3.1 乐谱  229

    8.3.2 音符的音高与十二平均律  231

    8.3.3 音符的时值  233

    8.3.4 节拍  233

    8.3.5 MIDI格式  234

    8.4 混音效果器  235

    8.4.1 均衡效果器  236

    8.4.2 压缩效果器  239

    8.4.3 混响效果器  240

    8.5 效果器实现  243

    8.5.1 Android平台实现效果器  243

    8.5.2 iOS平台实现效果器  252

    8.6 本章小结  255

    第9章 视频效果器的介绍与实践  256

    9.1 图像处理的基本原理  256

    9.1.1 亮度调节  257

    9.1.2 对比度调节  258

    9.1.3 饱和度调节  259

    9.2 图像处理进阶  259

    9.2.1 图像的卷积过程  260

    9.2.2 锐化效果器  260

    9.2.3 高斯模糊算法  262

    9.2.4 双边滤波算法  263

    9.2.5 图层混合介绍  264

    9.3 使用FFmpeg内部的视频滤镜  266

    9.3.1 FFmpeg视频滤镜介绍  266

    9.3.2 滤镜图的构建  267

    9.3.3 使用与销毁滤镜图  269

    9.3.4 常用滤镜介绍  270

    9.4 使用OpenGL ES实现视频滤镜  272

    9.4.1 加水印  273

    9.4.2 添
  • 内容简介:
    本书采用从零开始,逐级深入的方式写作,以项目实战为阶段性目标,外加实际生产环境下的特殊案例作为优化方案,让读者可以全方位掌握移动平台下音视频开发的大部分内容。首先介绍实现视频播放器和录制需要的基础知识,然后通过案例讲解如何实现视频播放器和一个视频录制的应用。但是一款录制的应用,要想上线,其实还要进行给音频视频美化,所以在提高篇,介绍了相应的内容,并给出了一个实际生产环境中的案例,之后,指导读者进阶,把前面学到的基础内容应用到直播中。后,给出排错方法和工具,和大家分享如何更有效率地开发应用程序。
  • 作者简介:
    展晓凯,曾工作于淘宝,参与设计开发淘宝旅行的机票搜索业务,曾就职于115网盘参与核心功能的研发,现就职于北京淘科技有限公司公司,任音视频架构师,在公司的唱吧、唱吧直播间、火星三条产品线都负责客户端核心的架构设计与开发工作,其中唱吧目前公布的数据已有几亿用户,月活也在千万量级,热衷于为可以帮助到的人做出一份自己的力量。
  • 目录:
    Contents?目  录

    推荐序一

    推荐序二

    前言

    第1章 音视频基础概念  1

    1.1 声音的物理性质  1

    1.1.1 声音是波  1

    1.1.2 声波的三要素  2

    1.1.3 声音的传播介质  3

    1.1.4 回声  3

    1.1.5 共鸣  4

    1.2 数字音频  4

    1.3 音频编码  6

    1.4 图像的物理现象  7

    1.5 图像的数值表示  8

    1.5.1 RGB表示方式  8

    1.5.2 YUV表示方式  9

    1.5.3 YUV和RGB的转化  10

    1.6 视频的编码方式  10

    1.6.1 视频编码  10

    1.6.2 编码概念  11

    1.7 本章小结  13

    第2章 移动端环境搭建  14

    2.1 在iOS上如何搭建一个基础项目  14

    2.2 在Android上如何搭建一个基础项目  21

    2.3 交叉编译的原理与实践  26

    2.3.1 交叉编译的原理  26

    2.3.2 iOS平台交叉编译的实践  27

    2.3.3 Android平台交叉编译的实践  33

    2.3.4 使用LAME编码MP3文件  38

    2.4 本章小结  42

    第3章 FFmpeg的介绍与使用  43

    3.1 FFmpeg的编译与命令行工具的使用  43

    3.1.1 FFmpeg的编译  43

    3.1.2 FFmpeg命令行工具的使用  51

    3.2 FFmpeg API的介绍与使用  60

    3.3 FFmpeg源码结构  68

    3.3.1 libavformat与libavcodec介绍  68

    3.3.2 FFmpeg通用API分析  69

    3.3.3 调用FFmpeg解码时用到的函数分析  70

    3.3.4 调用FFmpeg编码时用到的函数分析  71

    3.3.5 面向对象的C语言设计  72

    3.4 本章小结  74

    第4章 移动平台下的音视频渲染  75

    4.1 AudioUnit介绍与实践  75

    4.2 Android平台的音频渲染  84

    4.2.1 AudioTrack的使用  85

    4.2.2 OpenSL ES的使用  87

    4.3 视频渲染  90

    4.3.1 OpenGL ES介绍  90

    4.3.2 OpenGL ES的实践  91

    4.3.3 上下文环境搭建  98

    4.3.4 OpenGL ES中的纹理  104

    4.4 本章小结  109

    第5章 实现一款视频播放器  110

    5.1 架构设计  110

    5.2 解码模块的实现  115

    5.3 音频播放模块的实现  118

    5.3.1 Android平台的音频渲染  118

    5.3.2 iOS平台的音频渲染  119

    5.4 画面播放模块的实现  121

    5.4.1 Android平台的视频渲染  121

    5.4.2 iOS平台的视频渲染  122

    5.5 AVSync模块的实现  124

    5.5.1 维护解码线程  124

    5.5.2 音视频同步  125

    5.6 中控系统串联起各个模块  127

    5.6.1 初始化阶段  127

    5.6.2 运行阶段  128

    5.6.3 销毁阶段  129

    5.7 本章小结  130

    第6章 音视频的采集与编码  131

    6.1 音频的采集  131

    6.1.1 Android平台的音频采集  131

    6.1.2 iOS平台的音频采集  134

    6.2 视频画面的采集  137

    6.2.1 Android平台的视频画面采集  137

    6.2.2 iOS平台的视频画面采集  146

    6.3 音频的编码  156

    6.3.1 libfdk_aac编码AAC  156

    6.3.2 Android平台的硬件编码器MediaCodec  158

    6.3.3 iOS平台的硬件编码器AudioToolbox  161

    6.4 视频画面的编码  166

    6.4.1 libx264编码H264  166

    6.4.2 Android平台的硬件编码器MediaCodec  172

    6.4.3 iOS平台的硬件编码器  175

    6.5 本章小结  184

    第7章 实现一款视频录制应用  185

    7.1 视频录制的架构设计   185

    7.2 音频模块的实现   188

    7.2.1 音频队列的实现  189

    7.2.2 Android平台的实现  191

    7.2.3 iOS平台的实现  194

    7.3 音频编码模块的实现   198

    7.3.1 改造编码器  198

    7.3.2 编码器适配器  199

    7.4 画面采集与编码模块的实现   202

    7.4.1 视频队列的实现  202

    7.4.2 Android平台画面编码后入队  203

    7.4.3 iOS平台画面编码后入队  204

    7.5 Mux模块  205

    7.5.1 初始化  206

    7.5.2 封装和输出  208

    7.5.3 销毁资源  212

    7.6 中控系统串联起各个模块  213

    7.7 本章小结  214

    第8章 音频效果器的介绍与实践  215

    8.1 数字音频基础  215

    8.1.1 波形图  215

    8.1.2 频谱图  217

    8.1.3 语谱图  219

    8.1.4 深入理解时域与频域  219

    8.2 数字音频处理:快速傅里叶变换  222

    8.3 基本乐理知识  229

    8.3.1 乐谱  229

    8.3.2 音符的音高与十二平均律  231

    8.3.3 音符的时值  233

    8.3.4 节拍  233

    8.3.5 MIDI格式  234

    8.4 混音效果器  235

    8.4.1 均衡效果器  236

    8.4.2 压缩效果器  239

    8.4.3 混响效果器  240

    8.5 效果器实现  243

    8.5.1 Android平台实现效果器  243

    8.5.2 iOS平台实现效果器  252

    8.6 本章小结  255

    第9章 视频效果器的介绍与实践  256

    9.1 图像处理的基本原理  256

    9.1.1 亮度调节  257

    9.1.2 对比度调节  258

    9.1.3 饱和度调节  259

    9.2 图像处理进阶  259

    9.2.1 图像的卷积过程  260

    9.2.2 锐化效果器  260

    9.2.3 高斯模糊算法  262

    9.2.4 双边滤波算法  263

    9.2.5 图层混合介绍  264

    9.3 使用FFmpeg内部的视频滤镜  266

    9.3.1 FFmpeg视频滤镜介绍  266

    9.3.2 滤镜图的构建  267

    9.3.3 使用与销毁滤镜图  269

    9.3.4 常用滤镜介绍  270

    9.4 使用OpenGL ES实现视频滤镜  272

    9.4.1 加水印  273

    9.4.2 添
查看详情
相关图书 / 更多
音视频开发进阶指南:基于Android与iOS平台的实践
音视频编辑合成技术
姜全生 主编
音视频开发进阶指南:基于Android与iOS平台的实践
音视频工程项目监理师
王建初、刘春旺、蒋孝军 编
音视频开发进阶指南:基于Android与iOS平台的实践
音视频编辑与电视节目制作实训
韩雪涛 主编
音视频开发进阶指南:基于Android与iOS平台的实践
音视频情感识别的关键技术研究
张石清、赵小明 著
音视频开发进阶指南:基于Android与iOS平台的实践
音视频编辑与制作
王建磊;张文文
音视频开发进阶指南:基于Android与iOS平台的实践
音视频解说常见鸡病诊断与防治技术
刘友生 主编;程龙飞;孙卫东
音视频开发进阶指南:基于Android与iOS平台的实践
音视频电学基础
王建林 编
音视频开发进阶指南:基于Android与iOS平台的实践
音视频处理
丁慧
音视频开发进阶指南:基于Android与iOS平台的实践
音视频及类似电子设备安全要求国家标准实施指南
国家广播电视产品质量监督检验中心 编
音视频开发进阶指南:基于Android与iOS平台的实践
音视频工程项目管理师
王建初 著
音视频开发进阶指南:基于Android与iOS平台的实践
音视频合成制作
唐霁虹 编
音视频开发进阶指南:基于Android与iOS平台的实践
音视频解说常见鸭鹅病诊断与防治技术
傅光华、江斌、程龙飞 编