ffmpeg整体学习框架.md 2.2 KB

ffmpeg学习框架

三大场景

RTC

直播:推流/拉流

短视频:UGC/播放器

三大工具

ffmpeg

ffplay

ffprobe

媒体类型

音频

视频

文本

通用流程

graph LR;
    输入----->处理;
    处理----->输出;
graph LR;
    采集---->前处理---->编码---->存储/传输;

采集 = 输入

前处理 + 编码 = 处理

存储/传输 = 输出

graph LR;
    存储/传输---->解码---->后处理---->播放;

存储/传输 = 输入

解码 + 后处理 = 处理

播放 = 输出

数据格式

为什么叫数据格式,跟工程上常说的数据结构有什么异同

原始数据

编码后数据

容器封装/流媒体协议

ffmpeg整体框架

graph LR;
    视频---->视频输入;
    视频输入---->采集;
    采集---->模拟/测试/null;
    采集---->摄像头;
    采集---->屏幕;
    视频输入---->文件input[文件];
    文件input[文件]---->抓包文件;
    文件input[文件]---->常见多媒体文件input[常见多媒体文件];
    视频输入---->流式input[流式];
    流式input[流式]---->协议input[rtp/rtmp/hls];
    视频---->视频处理;
    视频---->视频输出;
    视频输出---->播放;
    视频输出---->文件output[文件];
    文件output[文件]---->常见多媒体文件output[常见多媒体文件];
    视频输出---->流式output[流式];
    流式output[流式]---->协议output[rtp/rtmp/hls];
graph LR;
    音频---->音频输入;
    音频输入---->采集;
    采集---->模拟/测试/null;
    采集---->麦克风;
    音频输入---->文件input[文件];
    文件input[文件]---->抓包文件;
    文件input[文件]---->常见多媒体文件input[常见多媒体文件];
    音频输入---->流式input[流式];
    流式input[流式]---->协议input[rtp/rtmp/hls];
    音频---->音频处理;
    音频---->音频输出;
    音频输出---->播放;
    音频输出---->文件output[文件];
    文件output[文件]---->常见多媒体文件output[常见多媒体文件];
    音频输出---->流式output[流式];
    流式output[流式]---->协议output[rtp/rtmp/hls];

ffmpeg百宝箱 - help命令

TODO