• FFmpeg 音视频开发基础与实战
21年品牌 40万+商家 超1.5亿件商品

FFmpeg 音视频开发基础与实战

正版保障 假一赔十 电子发票

67.72 6.3折 108 全新

库存5件

四川成都
认证卖家担保交易快速发货售后保障

作者殷汶杰

出版社电子工业出版社

ISBN9787121425554

出版时间2022-01

装帧平装

开本16开

定价108元

货号1202575901

上书时间2024-12-21

瀚东书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
    殷汶杰,2013年毕业于上海大学信息与通信工程学院,主要研究方向为视频压缩编码、流媒体技术,其间发表了多篇高水平学术论文。具有多家一线互联网上市公司、世界五百强企业与行业独角兽公司的核心开发工作经验,成功申请了多项(其中一项靠前)。发表了数百篇技术文章,并发布了多个线上教学课程,在行业内具有较强的技术影响力。

目录
第一部分基础知识

第1章音视频技术概述2

1.1音视频信息与多媒体系统2

1.1.1信息传输系统的发展2

1.1.2信息时代的音视频技术4

1.1.3音视频技术的未来展望5

1.2典型的音视频与多媒体系统结构6

1.2.1视频点播7

1.2.2视频直播8

1.2.3安防监控9

1.2.4视频会议9

第2章图像、像素与颜色空间11

2.1图像与像素11

2.2图像的位深与颜色空间12

2.2.1图像的位深12

2.2.2图像的颜色空间14

2.3图像压缩编码15

2.3.1图像压缩算法分类16

2.3.2图像压缩基本算法16

2.3.3常见的图像压缩编码格式20

第3章视频压缩编码22

3.1视频压缩编码的基础知识22

3.1.1视频信息的数字化表示22

3.1.2常用的视频格式与分辨率24

3.1.3对视频数据压缩编码的原因24

3.2视频压缩编码标准的发展历程24

3.3视频压缩编码的基本原理25

3.3.1视频数据中的冗余信息25

3.3.2预测编码26

3.3.3变换编码27

3.3.4熵编码28

3.4视频编码标准H.26428

3.4.1H.264简介28

3.4.2H.264的框架28

3.4.3H.264的基本算法30

3.5高效视频编码标准H.26533

3.5.1H.265简介33

3.5.2H.265的框架33

3.5.3H.265的基本算法35

第4章音频压缩编码42

4.1音频压缩编码的基础知识42

4.1.1声音信息的概念42

4.1.2声音信息的基本要素42

4.2音频信息采样与数字化43

4.2.1模拟音频43

4.2.2数字音频44

4.2.3采样和量化.4

4.3脉冲编码调制46

4.3.1PCM量化区间分割46

4.3.2PCM量化编码规则49

4.4MP3格式与MP3编码标准51

4.4.1MP3格式.52

4.4.2MP3编码标准.62

4.5AAC格式与AAC编码标准.67

4.5.1AAC格式67

4.5.2AAC编码标准72

第5章音视频文件容器和封装格式.74

5.1概述74

5.2FLV格式75

5.2.1FLV文件结构.75

5.2.2FLV文件头.76

5.2.3FLV标签.77

5.3MPEG-TS格式84

5.3.1信息包头.84

5.3.2PES包结构.85

5.3.3PSI结构.87

5.4MP4格式.88

5.4.1MP4格式简介.88

5.4.2ISO协议族89

5.4.3MP4封装格式.89

5.4.4Box类型90

5.4.5MP4文件结构.92

5.4.6构建视频流的播放时间轴.98

第6章音视频流媒体协议.104

6.1网络协议模型105

6.1.1ISO/OSI模型结构105

6.1.2TCP/IP模型结构106

6.2网络流媒体协议――RTMP120

6.2.1RTMP的概念120

6.2.2RTMP分块与块流121

6.2.3RTMP信息格式126

6.2.4RTMP信息与命令129

6.3网络流媒体协议――HLS协议136

6.3.1HLS协议的概念.136

6.3.2HLS直播流媒体系统结构.136

6.3.3HLS索引文件格式.138

第二部分命令行工具

第7章FFmpeg的基本操作144

7.1FFmpeg概述144

7.1.1各个编译类型的区别.145

7.1.2编译FFmpeg源代码148

7.2ffplay的基本使用方法155

7.2.1显示ffplay版本155

7.2.2显示编译选项.156

7.2.3设置日志级别.156

7.2.4全屏播放.158

7.2.5指定输入视频的宽、高和帧率158

7.2.6禁用音频流、视频流和字幕流158

7.2.7指定播放的起始时间和时长159

7.2.8指定播放音量.159

7.2.9设置播放窗口.159

7.3ffprobe的基本使用方法159

7.3.1显示详细的封装格式信息.160

7.3.2显示每一路媒体流信息.161

7.3.3显示每一个码流包的信息.164

7.3.4显示媒体流和码流包的负载信息165

7.3.5显示每一帧图像的信息.167

7.3.6指定检测信息的输出格式.169

7.4ffmpeg的基本使用方法175

7.4.1显示版本和编译配置信息.176

7.4.2显示支持的解复用器格式.177

7.4.3显示支持的复用器格式.179

7.4.4显示支持的所有输入格式和输出格式181

7.4.5显示支持的解码器.183

7.4.6显示支持的编码器.184

7.4.7显示支持的媒体协议.186

7.4.8显示支持的硬件加速框架.188

7.4.9ffmpeg封装格式转换.188

7.4.10视频的解码和编码.193

7.4.11从视频中截取图像206

7.4.12ffmpeg视频转码.207

第8章滤镜图.209

8.1ffmpeg音视频滤镜209

8.1.1简单滤镜图.209

8.1.2复合滤镜图.210

8.1.3ffmpeg支持的滤镜列表.211

8.2简单滤镜图的应用212

8.2.1常用的视频编辑简单滤镜图212

8.2.2常用的音频编辑简单滤镜图227

8.3复合滤镜图的应用230

8.3.1常用的视频编辑复合滤镜图230

8.3.2常用的音频编辑复合滤镜图234

第9章流媒体应用236

9.1构建SRS流媒体服务.236

9.1.1部署RTMP流媒体服务.238

9.1.2部署HLS流媒体服务240

9.1.3部署HTTP-FLV流媒体服务.241

9.2构建NginxRTMP流媒体服务.241

9.2.1Nginx的编译和部署242

9.2.2Nginx的流媒体模块nginx-rtmp-module246

第三部分开发实战

第10章FFmpegSDK的使用.254

10.1使用CMake构建工程.255

10.1.1使用CMake构建HelloWorld工程255

10.1.2在工程中编译并输出多个文件257

10.1.3在工程中添加头文件和源文件目录259

10.1.4在工程中引入动态库.262

10.2FFmpegSDK基本使用方法示例:获取目录下的文件信息.264

10.2.1显示指定目录信息.264

10.2.2解析API和结构体.266

第11章使用FFmpegSDK进行视频编解码269

11.1libavcodec视频编码269

11.1.1主函数与数据I/O实现269

11.1.2视频编码器初始化272

11.1.3编码循环体284

11.1.4关闭编码器289

11.1.5FFmpeg视频编码延迟分析.290

11.2libavcodec视频解码294

11.2.1主函数实现294

11.2.2视频解码器初始化295

11.2.3解码循环体297

11.2.4关闭解码器304

第12章使用FFmpegSDK进行音频编解码306

12.1libavcodec音频编码306

12.1.1主函数实现.306

12.1.2音频编码器初始化.307

12.1.3编码循环体.310

12.1.4关闭编码器.313

12.2libavcodec音频解码315

12.2.1主函数实现.315

12.2.2音频解码器初始化.316

12.2.3解码循环体.318

12.2.4关闭解码器.324

第13章使用FFmpegSDK进行音视频文件的解封装与封装.326

13.1音视频文件的解封装326

13.1.1主函数实现.326

13.1.2解复用器初始化.327

13.1.3循环读取码流包数据.335

13.1.4释放解复用器和解码器.338

13.1.5主函数的整体实现.339

13.2音频流与视频流文件的封装340

13.2.1主函数实现.340

13.2.2音视频流复用器的初始化341

13.2.3复用音频流和视频流.348

13.2.4释放复用器实例.353

第14章使用FFmpegSDK添加视频滤镜和音频滤镜355

14.1视频滤镜355

14.1.1主函数实现.355

14.1.2视频滤镜初始化.356

14.1.3循环编辑视频帧.365

14.1.4销毁视频滤镜.368

14.2音频滤镜370

14.2.1主函数框架.370

14.2.2音频滤镜初始化.371

14.2.3循环编辑音频帧.380

14.2.4销毁音频滤镜.381

第15章使用FFmpegSDK进行视频图像转换与音频重采样.383

15.1视频图像转换383

15.1.1主函数实现.383

15.1.2视频格式转换初始化.384

15.1.3视频的图像帧循环转换.388

15.1.4视频格式转换结构的销毁和释放390

15.2音频重采样391

15.2.1主函数实现.392

15.2.2音频重采样初始化.392

15.2.3对音频帧循环重采样.397

15.2.4音频重采样结构的销毁和释放400

内容摘要
全书内容分为三部分,共15章。第1~6章为第一部分,主要讲解音视频开发的基础知识,简要介绍音视频技术的发展背景,以及主流的音视频压缩编码算法、音视频容器格式和网络流媒体协议等。第7~9章为第二部分,主要讲解命令行工具ffmpeg、ffprobe和ffplay的使用方法,包括如何使用这些工具进行视频播放、格式检测、编转码、格式转换和流媒体推拉流等操作;第10~15章为第三部分,主要讲解基于FFmpegSDK的开发实战,主要介绍如何在工程中调用libavcodec和libavformat等库提供的接口实现音视频处理的相关功能。本书适合从事音视频编解码、多媒体应用开发和流媒体技术的初、中级开发者,以及各大院校学生阅读,也适合有一定经验的开发人员参考使用。

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP