书籍详情

FFmpeg入门详解:SDK二次开发与直播美颜原理及应用

FFmpeg入门详解:SDK二次开发与直播美颜原理及应用

作者:梅会东

出版社:清华大学出版社

出版时间:2023-02-01

ISBN:9787302626954

定价:¥139.00

购买这本书可以去
内容简介
  本书系统讲解了FFmpeg SDK二次开发及直播美颜的基础理论及应用,包括FFmpeg各大核心组件,包括音视频转封装、转码、滤镜、音频重采样、视频缩放等,包括读取摄像头和话筒,包括流媒体直播推流等功能。在本书的最后一章,介绍了OpenCV的图像特效处理,并结合FFmpeg进行直播推流。本书为FFmpeg音视频流媒体系列的第四部,前三部分别是《FFmpeg入门详解——音视频原理及应用》《FFmpeg入门详解——流媒体直播原理及应用》和《FFmpeg入门详解——命令行及音视频特效原理及应用》。 全书共分为13章,系统讲解了FFmpeg源码编译及环境搭建的基础知识、转封装与转码、过滤器、音视频采集功能、音频重采样、视频缩放、流媒体直播等功能,并结合OpenCV进行图像特效处理等。 书中包含大量的示例,图文并茂,争取让一个音视频流媒体领域的读者真正入门,从此开启流媒体直播编程的大门。本书知识体系比较完整,侧重FFmpeg SDK二次开发及直播美颜的原理讲解及应用。建议读者先学习FFmpeg音视频流媒体系列的前3部,然后来学习本书。本书的讲解过程由浅入深,让读者在不知不觉中学会了FFmpeg SDK二次开发的基础知识,并能动手实现各种转码功能、音视频特效处理、并能实现流媒体直播功能。 本书可作为FFmpeg SDK二次开发、音视频特效处理及流媒体直播方向的入门书籍,也可作为高年级本科生和研究生的学习参考书籍。
作者简介
  梅会东,一个在音视频领域摸爬滚打二十多年的老程序员、培训师、作者,精通多种IT技术。参与设计和开发了多个音视频项目,包括播放器、视频服务器、全套直播系统等。精通多个音视频开源库项目,包括FFmpeg、Live555、SRS、Darwin、Nginx、WebRTC、ZLMediaKit等。 目前专注于音视频流媒体的教育传播事业,为多家大型国企单位讲授音视频专业知识。
目录
第1章编译FFmpeg源码并搭建开发环境
1.1FFmpeg源码简介
1.2Windows平台下编译FFmpeg 5.0源码
1.2.1MinGW简介
1.2.2安装MSYS2
1.2.3更新MSYS2
1.2.4Pacman使用命令
1.2.5在MSYS2安装依赖项
1.2.6使用MSVC工具链来编译FFmpeg 5.0 Libx264 Libx265
1.2.7使用MinGW64工具链来编译FFmpeg 5.0 Libx264
1.3Linux平台下编译FFmpeg 5.0源码
1.4搭建FFmpeg的Qt开发环境
1.5搭建FFmpeg的VS开发环境
1.6Linux下使用GCC编译FFmpeg的程序
第2章把控FFmpeg骨架: “八大金刚”核心开发库
2.1FFmpeg八大核心开发库 
2.2libavutil库简介
2.3libavformat简介
2.4libavcodec库简介
2.5libpostproc库简介
2.6libavdevice库简介
2.7libavfilter库简介
2.8libswresample库简介
2.9libswscale库简介
第3章夯实FFmpeg基础: 重要数据结构及API
3.1FFmpeg的读者入门案例
3.1.1初识FFmpeg的API
3.1.2FFmpeg的解码及播放流程
3.1.3使用FFmpeg解封装并读取流信息的案例
3.2FFmpeg的经典数据结构 
3.2.1使用FFmpeg进行解码的10个经典结构体
3.2.2AVPacket与AVFrame
3.3协议层的三大重要数据结构
3.4封装层的四大重要数据结构
3.5编解码层的三大重要数据结构
3.6FFmpeg的重要API函数
3.7Ubuntu下编译并运行解封装案例
第4章精通FFmpeg框架流程: 击鼓传花之责任链设计模式
4.1击鼓传花之责任链设计模式简介
4.2FFmpeg的框架原理及流程分析
4.3FFmpeg的解码流程分析
4.4FFmpeg的编码流程分析
4.5FFmpeg的转码流程分析
4.5.1FFmpeg转码流程简介
4.5.2FFmpeg的两种转码方式
4.5.3基于RTP传输的FFmpeg转码应用
4.5.4FFmpeg转码流程小结
4.5.5视频文件转码流程案例分析
第5章AVUtil通用工具层理论及案例实战
5.1AVUtil库及相关API简介
5.2AVLog应用案例及剖析
5.3AVParseUtil应用案例及剖析
5.4AVDictionary应用案例及剖析
5.5AVOption应用案例及剖析
第6章AVProtocol协议层理论及案例实战
6.1协议层AVIO的流程及数据结构
6.2AVIO案例实战之打开本地文件
6.3AVIO案例实战之打开网络直播流
6.4内存IO模式之自定义AVIO案例实战
6.5内存映射文件技术
第7章AVFormat封装层理论及案例实战
7.1封装格式原理分析 
7.1.1视频封装格式简介
7.1.2使用FFmpeg处理音视频的封装与解封装
7.2封装层的重要API函数简介
7.3FFmpeg解封装案例实战
7.4FFmpeg封装格式之时间基与时间刻度
7.5FFmpeg解封装后直接存储AVPacket
7.6FFmpeg转封装案例实战
第8章AVCodec编解码层理论及案例实战
8.1编解码原理流程及API解析
8.2解码流程与案例实战
8.3编程流程与案例实战
8.4FFmpeg编解码与时间基详解
第9章AVFilter过滤器层理论及案例实战
9.1过滤器层的架构原理解析
9.1.1FFmpeg包含滤镜的转码流程
9.1.2FFmpeg责任链模式简介
9.1.3简单滤镜和复杂滤镜之间的区别
9.1.4FFmpeg滤镜流程图
9.1.5滤镜图、滤镜链、滤镜之间的关系
9.1.6FFmpeg滤镜相关的重要结构体
9.2DirectShow框架原理与流程解析
9.3FFmpeg过滤器层的重要API解析
9.3.1FFmpeg中使用过滤器的步骤
9.3.2AVFilter的API
9.4FFmpeg过滤器案例实战
9.4.1FFmpeg命令行方式体验过滤器
9.4.2FFmpeg的API方式实现过滤器
第10章SWResample音频重采样理论及案例实战
10.1音频重采样简介
10.1.1音频基础
10.1.2PCM简介
10.1.3PCM重采样
10.1.4C语言实现PCM重采样
10.2SWResample库结构简介
10.2.1FFmpeg与PCM格式
10.2.2Packed和Planar的区别
10.2.3音频播放时间计算
10.2.4C语言分离左右声道
10.2.5lswr的使用流程及API简介
10.3SWResample音频重采样案例实战
10.3.1SwrContext使用步骤解析
10.3.2使用lswr实现PCM重采样案例实战
10.3.3Packed模式转Planar模式
第11章SWScale图像缩放与颜色空间转换
11.1色彩空间转换的原理简介
11.2SWScale库结构简介
11.3SWScale图片色彩空间转换案例实战
第12章AVDevice设备读写理论及案例实战
12.1AVDevice的使用步骤及API解析
12.2AVDevice的API方式采集本地摄像头获取的数据
12.3VMWare中的Ubuntu采集本地摄像头获取的数据
12.4AVDevice的API方式采集话筒获取的数据
12.5FFmpeg读取网络视频流并解码为YUV
12.6给摄像头实时添加水印后编码为H.264
第13章FFmpeg直播综合案例实战
13.1直播系统架构及流程简介
13.2流媒体服务器的搭建
13.3FFmpeg进行RTMP直播推流
13.4两个C 封装类的小结
13.5OpenCV4基础操作及磨皮美颜
13.6OpenCV4磨皮美颜并结合FFmpeg直播推流
 
猜您喜欢

读书导航