[FFmpeg开发]|[FFmpeg开发] 视频基础知识
分辨率
X轴的像素个数 * Y轴的像素个数
常见宽高比 16:9 / 4:3
常见分辨率:360P/720P/1K/2K,都是16:9的
帧率
每秒采集/播放图像的个数,帧率越高视频越流畅,分辨率越高图像越清晰
未编码视频的RGB码流
RGB码流 = 分辨率(宽高) 3(Byte) * 帧率,3是RGB,如:
12807203*25 = 69120000约69M
YUV
Y表示明亮度,UV是描述影像色彩及饱和度。
早期的电视都是黑白的,即只有亮度值,即Y。有了彩色电视以后,加入了UV两种色度,形成现在的YUV:
Y:亮度,就是灰度值。除了表示亮度信号外,还含有较多的绿色通道量。
U:蓝色通道与亮度的差值。
V:红色通道与亮度的差值。
主要采样格式有:YUV4:2:0、YUV4:2:2、YUV4:4:4
YUV4:4:4 表示完全取样,每一个Y对应一组UV分量。 一个YUV占 8+8+8 = 24bits,3个字节。
文章图片
YUV4:2:2 表示2:1的水平取样,垂直完全采样,,每两个Y共用一组UV分量。 一个YUV占 8+4+4 = 16bits 2个字节。
文章图片
YUV4:2:0 表示2:1的水平取样,垂直2:1采样,每四个Y共用一组UV分量。 一个YUV占 8+2+2 = 12bits 1.5个字节
文章图片
注意:YUV 4:2:0这并不意味着只有Y、U,没有V分量,只是说U分量和V分类交替采样。 一个字节是8位。
文章图片
YUV可以与RGB相互转换
【[FFmpeg开发]|[FFmpeg开发] 视频基础知识】为什么使用YUV:
- 之前是黑白电视,只有Y,后来才加了色度,为了与以前兼容。
- YUV数据量比RGB小,以下是YUV4:2:0的计算
文章图片
推荐阅读
- 深入理解Go之generate
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 4月23日海军节,我在青岛等你,一起看强大的中国海军。(如图如视频)
- 视频转换器哪种好用()
- 不懂法,害人终害己
- 腾讯视频(我有一段rap想给你说)
- 百度云极速下载,来体验飞的感觉,还可以看最新动漫的百度云视频哦
- ffmpeg源码分析01(结构体)
- 我的软件测试开发工程师书单
- echart|echart 双轴图开发