FFmpeg之YUV
YUV
定义
- Y
表示亮度(Luminance、Luma),占8bit(1字节) - U
Cb(U):蓝色色度分量,占8bit(1字节) - V
Cr(V):红色色度分量,占8bit(1字节)
采样格式
通常用A:B:C的形式来表示,比如4:4:4、4:2:2、4:2:0
FFmpeg命令行转换
// png - > yuv
ffmpeg -i 457_in.png -s 512x512 -pix_fmt yuv444p out_512_444.yuv
// 显示yuv文件
ffplay -s 512x512 -pix_fmt yuv444p out_512_444.yuv
// yuv -> jpg
ffmpeg -s 512x512 -pix_fmt yuv444p -i out_512_444.yuv out_512.jpg
命令解释
// 图片的大小
-s
// 采样格式
- pix_fmt
获取支持的采样格式
// 获取支持的采样格式
ffmpeg -pix_fmts
// 过滤
ffmpeg -pix_fmts | findstr 444
// 显示如下
IO... yuv444p 3 24
IO... yuvj444p 3 24
IO... yuv444p16le 3 48
IO... yuv444p16be 3 48
IO... rgb444le 3 12
IO... rgb444be 3 12
IO... bgr444le 3 12
IO... bgr444be 3 12
IO... yuv444p9be 3 27
IO... yuv444p9le 3 27
IO... yuv444p10be 3 30
IO... yuv444p10le 3 30
IO... yuva444p 4 32
IO... yuva444p9be 4 36
IO... yuva444p9le 4 36
IO... yuva444p10be 4 40
IO... yuva444p10le 4 40
IO... yuva444p16be 4 64
IO... yuva444p16le 4 64
IO... yuv444p12be 3 36
IO... yuv444p12le 3 36
IO... yuv444p14be 3 42
IO... yuv444p14le 3 42
IO... yuva444p12be 4 48
IO... yuva444p12le 4 48