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协议支持的多个文件串流操作

相关推荐
程序员老陆2 小时前
FFmpeg6 在 Windows 打开麦克风并录成 PCM:不走 Qt Multimedia,也不碰 WASAPI
windows·ffmpeg·音视频·pcm
程序员老陆18 小时前
从零写一个 FFmpeg 播放器:架构设计远比“解码显示”复杂
ffmpeg·音视频·播放器
程序员老陆1 天前
FFmpeg 硬解在 Linux 上:从“能跑”到“跑满 GPU”的实战笔记
linux·笔记·ffmpeg
≮傷£≯√2 天前
移植ffmpeg 到 GEC6818
ffmpeg
海带紫菜菠萝汤3 天前
FFmpeg.wasm 实践:在浏览器中运行 FFmpeg 的能力边界与性能瓶颈
前端·javascript·ffmpeg·音视频·wasm
程序员老陆4 天前
FFmpeg6的滤镜函数解析
ffmpeg·音视频·avfilter
看浪的路人4 天前
第10讲:Python 调用 FFmpeg 批量处理——打造你的视频处理工具箱
python·ffmpeg·音视频
程序员老陆5 天前
FFmpeg 时间戳全解:从 av_rescale_q 到时间基黑洞
ffmpeg·音视频·时间基
水獭比特5 天前
自动成片没报错,为什么音画还会漂?
ffmpeg
Yeauty5 天前
2026 年在 Rust 里处理音视频,该走哪条路?
rust·ffmpeg·音视频·视频