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

相关推荐
阳光开朗男孩8 小时前
FFmpeg从入门到精通-2.ffmpeg常用命令
ffmpeg
nuoxin11410 小时前
SSD201-富利威
arm开发·驱动开发·fpga开发·ffmpeg·射频工程
magic_now10 小时前
智能网联汽车边缘媒体处理系统架构设计
系统架构·ffmpeg·汽车·音视频·媒体
南山有乔木78910 小时前
mp4音频怎么转换成mp3?7种常用方法手机电脑通用
ffmpeg·音视频
小何开发2 天前
ffmpeg 安装与使用: 将视频分片与组装
ffmpeg·音视频
道剑剑非道3 天前
FFmpeg + Qt 实现摄像头采集与 MP3 背景音乐 RTSP 推流
开发语言·qt·ffmpeg
道剑剑非道4 天前
FFmpeg 6.0 实战:用 C++ 封装摄像头采集与 RTSP 推流
开发语言·c++·ffmpeg
Gc9umsbL14 天前
从FLAC到WAV:whisper.cpp中的FFmpeg音频预处理全解析
ffmpeg·whisper·音视频
angushine4 天前
ffmpeg+nginx搭建HLS 推流
运维·nginx·ffmpeg