avformat的分析与讲解

4435 未经授权,禁止转载了解课程
课程介绍
讨论{{interaction.discussNum ? '(' + interaction.discussNum + ')' : ''}}
适合人群
所有想学ffmpeg、音视频的人士,需要具备基本的c语言能力
你将会学到
您将学会FFmpeg4.3最新系列的API和数据结构;掌握协议层、封装层、编码层、过滤器等案例实战
  • 学会FFmpeg4.3的环境搭建、亲手编译
  • 学会FFmpeg4.3的重要数据结构、API函数、流程、原理
  • 学会FFmpeg的分层体系:协议层、封装层、解码层、过滤器层,等
  • 把控FFmpeg骨架:“八大金刚”核心开发库
  • 夯实FFmpeg基础:重要数据结构与API
  • 精通FFmpeg流程:击鼓传花之责任链模式
  • 画龙点睛:捋起袖子亲手操练直播项目
课程简介

敬告:该系列的课程在抓紧录制更新中,敬请大家关注。
敬告:
 该系列的课程涉及:FFmpeg,WebRTC,SRS,Nginx,Darwin,Live555,等。包括:音视频、流媒体、直播、Android、视频监控28181、等。

  

大家好,我的第一本书正式出版了,可以在京东各大店铺抢购哦。

FFmpeg入门详解--音视频原理及应用:梅会东:清华大学出版社

image.png

image.png

image.png

音视频是一门很复杂的技术,涉及的概念、原理、理论非常多,很多初学者不学 基础理论,而是直接做项目,往往会看到c/c++的代码时一头雾水,不知道代码到底是什么意思,这是为什么呢?


因为没有学习音视频的基础理论,就比如学习英语,不学习基本单词,而是天天听英语新闻,总也听不懂。

所以呢,一定要认真学习基础理论,然后再学习播放器、转码器、非编、流媒体直播、视频监控、等等。


梅老师从事音视频与流媒体行业18年;曾在永新视博、中科大洋、百度、美国Harris广播事业部等公司就职,经验丰富;曾亲手主导广电直播全套项目,精通h.264/h.265/aac,曾亲自参与百度app上的网页播放器等实战产品。

目前全身心自主创业,主要聚焦音视频+流媒体行业精通音视频加密、流媒体在线转码快编等热门产品

视频中的地址已经无法打开,我将ffmepg4.3.1的开发包和源码上传到了百度云:

链接:https://pan.baidu.com/s/1-3xSO6ytyQLlSId0Xiak4w 

提取码:fyxy



1.亲手编译FFmpeg4.3并搭建开发环境3

FFmpeg到底是什么3

简介3

FFmpeg是什么3

FFmpeg的组成4

FFmpeg主要功能5

FFmpeg八大库5

Win10下搭建FFmpeg4.3的开发环境及初体验7

下载7

安装7

搭建环境Qt+FFmpeg7

Ubuntu编译FFmpeg9

第一,apt安装ffmpeg,简单明了9

第二,源码安装ffmpeg,深入了解10

Win10亲手编译FFmpeg13

系统环境:13

1MSYS213

2YASM15

3ffmpeg源码:15

4、更新msys64,并改用国内镜像15

5、下载x264,并编译17

6、编译ffmpeg18


2.把控FFmpeg骨架:“八大金刚”核心开发库19

avutil20

avformat20

avcodec20

avfilter20

avdevice20

postproc20

swresample20

swscale21


3.夯实FFmpeg基础:重要数据结构与API21

简介21

FFmpeg2.x解码流程22

FFmpeg4.x解码流程图22

描述与分析23


4.精通FFmpeg流程:击鼓传花之责任链模式27

FFmpeg主要框架27

FFmpeg解码流程28

FFmpeg2.x解码流程29

FFmpeg4.x解码流程图31

文件处理基本流程(转码流程)33


5.Libavutil详解:理论与实战35

简介35

AVLog36

AVDictionary36

AVParseUtil37


6.协议层:理论与实战37

协议操作:三大数据结构37

初始化AVIOContext函数调用关系39

avio实战:打开本地文件或网络直播流39

avio实战:自定义AVIO39

avio实战:自定义数据来源39


7.封装层:理论与实战40

封装格式简介40

API介绍42

解封装43

转封装44


8.编解码层:理论与实战46

FFmpeg解码流程47

FFmpeg转码流程48

编解码API详解48

编码案例实战50

解码案例实战50


9.过滤器:理论与实战51

过滤器(Filter51

DirectShow53

案例实战56


10.画龙点睛:捋起袖子亲手操练直播项目56

直播模型与架构图56

实现思路与步骤57

亲手用FFmpeg来直播推流58



常见问题
问:可以学会用ffmpeg的sdk进行音视频的开发吗?
答:可以的,只要认真跟着老师学,多分析、总结,多思考,上机实践,就可以学会了。 但是呢,需要具备“音视频的基础理论”知识,否则看代码时无法理解具体的含义。 可以先学习系列二的课程“ffmpeg4.3系列二:音视频基础理论”
展开更多
发布
头像

{{ item.user.nick_name }} {{ EROLE_NAME[item.user.identity] }}

置顶笔记
讨论图
{{ item.create_time }}回复
  • 删除

    是否确认删除?

    确认
    取消
  • {{ item.is_top == 1 ? '取消置顶' : '置顶'}}

    已有置顶的讨论,是否替换已有的置顶?

    确认
    取消
{{ tag.text}}
头像
{{ subitem.user.nick_name }}{{ EROLE_NAME[subitem.user.identity] }}
{{ subitem.create_time }}回复
删除

是否确认删除?

确认
取消
发布
{{pageType === 'video' ? '讨论区抢占沙发,可获得双倍学分' :'讨论区空空如也,你来讲两句~'}}
发布
{{tips.text}}
{{ noteHeaderTitle }} 笔记{{ hasMyNote ? '我的笔记' : '记笔记' }}
{{ hasMyNote ? '我的笔记' : '记笔记' }}
优质笔记
更新于:{{ $dayjs.formate('YYYY-MM-DD HH:mm:ss', item.last_uptime*1000) }}
头像
{{ detail.username }}

公开笔记对他人可见,有机会被管理员评为“优质笔记”

{{ noteEditor.content.length }}/2000

公开笔记
保存
提问

讲师收到你的提问会尽快为你解答。若选择公开提问,可以获得更多学员的帮助。

记录时间点
记录提问时视频播放的时间点,便于后续查看
公开提问
提交