最新公告
  • 开通终身SVIP,享全站不限量下载次数-云资源-集成各类网络资源-正在更新中-预计更新到5W+文章开通SVIP
  • 文章介绍
  • 评价建议
  • 资源名称:音视频开发进阶指南:基于Android与iOS平台的实践【全彩、高清】

    内容简介:

    本书采用从零开始,逐级深入的方式写作,以项目实战为阶段性目标,外加实际生产环境下的特殊案例作为优化方案,让读者可以全方位掌握移动平台下音视频开发的大部分内容。首先介绍实现视频播放器和录制需要的基础知识,然后通过案例讲解如何实现视频播放器和一个视频录制的应用。但是一款录制的应用,要想上线,其实还要进行给音频视频美化,所以在提高篇,介绍了相应的内容,并给出了一个实际生产环境中的案例,之后,指导读者进阶,把前面学到的基础内容应用到直播中。后,给出排错方法和工具,和大家分享如何更有效率地开发应用程序。

    资源目录:

    推荐序一

    推荐序二

    前言

    第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 添加自定义文字 278

    9.4.3 美颜效果器 282

    9.4.4 动图贴纸效果器 284

    9.4.5 主题效果器 288

    9.5 本章小结 291

    第10章 专业的视频录制应用实践 292

    10.1 视频硬件解码器的使用 292

    10.1.1 初始化信息准备 292

    10.1.2 VideoToolbox解码H264 294

    10.1.3 MediaCodec解码H264 298

    10.2 音频效果器的集成 304

    10.2.1 Android音效处理系统的实现 305

    10.2.2 iOS音效处理系统的实现 308

    10.3 一套跨平台的视频效果器的设计与实现 309

    10.4 将特效处理库集成到视频录制项目中 315

    10.4.1 Android平台特效集成 316

    10.4.2 iOS平台特效集成 321

    10.5 本章小结 325

    第11章 直播应用的构建 327

    11.1 直播场景分析 327

    11.2 拉流播放器的构建 329

    11.2.1 Android平台播放器增加后处理过程 329

    11.2.2 iOS平台播放器增加后处理过程 332

    11.3 推流器的构建 335

    11.4 第三方云服务介绍 340

    11.5 礼物系统的实现 341

    11.5.1 Cocos2dX项目的运行原理 342

    11.5.2 关键API详解 344

    11.5.3 实现一款动画 348

    11.6 聊天系统的实现 350

    11.6.1 Android客户端的WebSocket实现 351

    11.6.2 iOS客户端的WebSocket实现 352

    11.7 本章小结 353

    第12章 直播应用中的关键处理 354

    12.1 直播应用的细节分析 354

    12.1.1 推流端细节分析 354

    12.1.2 拉流端细节分析 355

    12.2 推流端的关键处理 355

    12.2.1 自适应码率的实践 356

    12.2.2 统计数据保证后续的应对策略 361

    12.3 拉流端的关键处理 363

    12.3.1 重试机制的实践 364

    12.3.2 首屏时间的保证 366

    12.3.3 统计数据保证后续的应对策略 370

    12.4 本章小结 371

    第13章 工欲善其事,必先利其器 372

    13.1 Android平台工具详解 372

    13.1.1 ADB工具的熟练使用 372

    13.1.2 MAT工具检测Java端的内存泄漏 377

    13.1.3 NDK工具详解 387

    13.1.4 Native层的内存泄漏检测 389

    13.1.5 breakpad收集线上Crash 396

    13.2 iOS使用Instruments诊断应用 399

    13.2.1 Debug Navigator 399

    13.2.2 Time Profiler 400

    13.2.3 Allocations 402

    13.2.4 Leaks 403

    13.3 本章小结 405

    附录A 通过Ne10的交叉编译输入理解ndk-build 406

    附录B 编码器的使用细节 415

    附录C 视频的表示与编码 423

    资源截图:

    1.png


    曙光网云资源 » 音视频开发进阶指南:基于Android与iOS平台的实践【全彩、高清】

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。