FFmpeg从入门到精通-1.2.ffmpeg编码支持与定制

1.2.1FFmpeg的编码器支持

FFmpeg源代码中可以包含的编码非常多,常见的和不常见的都可以在编译配置列表中见到,可以通过使用编译配置命令
./configure --list-encoders

FFmpeg支持的编码器比较全面,比如AAC、AC3、H.264、H.265、MPEG4、MPEG2VIDEO、PCM、FLVl的编码器支持。

1.2.1FFmpeg的解码器支持

解码主要是在输入的时候进行解码,也可以理解为将压缩过的编码进行解压缩.
./configure --list-decoders

FFmpeg所支持的解码器模块decoders支持了MPEG4、H.264、H.265 (HEVC)、MP3等格式。

1.2.2FFmpeg的封装支持

FFmpeg的封装(Muxing)是指将压缩后的编码封装到一个容器格式中,如果要查看FFmpeg源代码中都可以支持哪些容器格式,可以通过命令
./configure --list-muxers

从封装(又称复用)格式所支持的信息中可以看到, FFmpeg支持生成裸流文件,如H.264、AAC、PCM,也支持一些常见的格式,如MP3、MP4、FLV、M3U8、WEBM等。

1.2.3FFmpeg的解封装支持

FFmpeg的解封装(Demuxing)是指将读入的容器格式拆解开,将里面压缩的音频流、视频流、字幕流、数据流等提取出来,如果要查看FFmpeg的源代码中都可以支持哪些输入的容器格式,可以通过命令
./configure --list-demuxers

从解封装(Demuxer,又称解复用)格式支持信息中可以看到,FFmpeg源代码中已经支持的demuxer非常多,包含图片(image)、MP3、FLV、MP4、MOV、AVI等。

1.2.4FFmpeg的通信协议支持

FFmpeg不仅仅支持本地的多媒体处理,而且还支持网络流媒体的处理,支持的网络流媒体协议相对来说也很全面,可以通过命令
./configure --list-protocols

FFmpeg支持的流媒体协议比较多,包括MMS、HTTP、HTTPS、HLS(M3U8)、RTMP、RTP,甚至支持TCP、UDP,其也支持使用file

协议的本地文件操作和使用concat协议支持的多个文件串流操作

相关推荐
2023自学中5 小时前
imx6ull开发板 移植 ffmpeg 4.2.11 + x264 视频编码库
linux·ffmpeg·音视频·嵌入式·开发板
feibaoqq11 小时前
光电视频监控技术(GB28181/ONVIF/私有协议)
ffmpeg·音视频·低空安防
feiyangqingyun1 天前
使用ffmpeg播放不同节目/实时切换节目并推流/推流不同的节目流
ffmpeg·推节目流·广播节目
左直拳2 天前
利用海康CVR实现视频流历史回放
ffmpeg·cvr·视频回放·历史视频
MR.欻3 天前
ZLMediaKit 源码分析(四):RTP/RTCP 协议栈实现分析
c++·人工智能·vscode·ffmpeg·音视频
晓py3 天前
音视频基础概念入门_FFmpeg学习笔记
学习·ffmpeg·音视频
daqinzl3 天前
Mpegts.js+FFmpeg+WebSocket+Node实时视频流实现方案
websocket·ffmpeg·node·mpegts.js
qq_369224334 天前
打开剪辑/直播/播放器提示ffmpeg.dll丢失?专属场景修复方法汇总
ffmpeg·dll·dll修复·dll错误
愿天垂怜4 天前
【C++脚手架】ffmpeg 库的介绍与使用
linux·服务器·开发语言·c++·ide·git·ffmpeg
韶博雅4 天前
oracle优化用到的sql
sql·oracle·ffmpeg