前言
本文以雷神的专栏内容为基准,为了更方便个人学习,因此将专栏中的各个内容按照板块进行排序,以个人主观的知识块分章节,仅供参考!需要说明的是ffmpeg已经更新到4.x,ffmpeg中许多函数弃用、更新,雷神的专栏可以作为入门参考,深入学习的话还得自己找资料补充。
最后,感谢雷神的无私分享!
目录
第一章 概论
1.1 如何学习
C语言的面向对象设计 —— 对 X264/FFMPEG 架构探讨
1.2 helloworld
1.3 ffplay使用
1.4 ffmpeg使用
FFmpeg获取DirectShow设备数据(摄像头,录屏)
1.5 通用函数
ffmpeg 源代码简单分析 : av_register_all()
1.6 常用函数
FFmpeg源代码简单分析:日志输出系统(av_log()等)
第二章 结构体
FFmpeg源代码简单分析:结构体成员管理系统-AVClass
FFmpeg源代码简单分析:结构体成员管理系统-AVOption
第三章 编解码
3.1 编码
最简单的基于FFmpeg的编码器-纯净版(不包含libavformat)
最简单的基于FFMPEG的图像编码器(YUV编码为JPEG)
3.2 解码
3.3 相关函数
3.3.1 编码
FFmpeg源代码简单分析:avformat_alloc_output_context2()
3.3.2 解码
图解FFMPEG打开媒体的函数avformat_open_input
3.4 H264
3.4.1编码
3.4.2 解码
3.5 HEVC(H265)
3.5.1 解码
第四章 封装与解封装(复用与解复用)
最简单的基于FFmpeg的封装格式处理:视音频复用器(muxer)
最简单的基于FFmpeg的封装格式处理:视音频分离器(demuxer)
最简单的基于FFmpeg的封装格式处理:视音频分离器简化版(demuxer-simple)
第五章 实战
5.1 推流
5.2 视频播放器
《基于 FFmpeg + SDL 的视频播放器的制作》课程的视频
100行代码实现最简单的基于FFMPEG+SDL的视频播放器(SDL1.x)
5.3 音频播放器
5.4 移动端:Android & IOS
最简单的基于FFmpeg的移动端例子:Android HelloWorld
5.5 内存读写
5.6 编码
最简单的基于FFmpeg的编码器-纯净版(不包含libavformat)
5.7 格式转换
5.8 视频网站
5.9 VC工程
ffplay播放器移植VC的工程:ffplay for MFC
ffmpeg转码器移植VC的工程:ffmpeg for MFC
windows 下使用 MinGW + msys 编译 ffmpeg
5.10 跨平台
5.11 Git
5.12 经验
avcodec_decode_video2()解码视频后丢帧的问题解决
第六章 类库
6.1 libswcale
FFMPEG 实现 YUV,RGB各种图像原始数据之间的转换(swscale)
最简单的基于FFmpeg的libswscale的示例(YUV转RGB)
最简单的基于FFmpeg的libswscale的示例附件:测试图片生成工具
最简单的基于FFMPEG的图像编码器(YUV编码为JPEG)
6.2 libavfilter
6.3 libavdevice
最简单的基于FFmpeg的AVDevice例子(读取摄像头)