实时视频带宽的计算过程

共 2076字,需浏览 5分钟

 ·

2021-08-07 19:04

打开淘宝,四处可见的安全相机,他们可以让你打开手机APP就随时查看家里的情况。打开电脑,我们随时都可以查看某场演讲的直播。今天我们来讲的,就是这种实时视频到底会占用多少的带宽,结合上一讲,你就可以了解对于有实时视频需求的产品,他对网络的需求是怎么样的。


要搞清楚这个问题,首先要从图像说起。


1.图像


1.1 什么是图像


什么是图像?简单说图像就是很多带有颜色的点组成的,这些点就是像素点。而像素,也是图像显示的基本单位。


我们通常提到的一张图片是1920 * 1080,意思是说长度为1920个像素点,宽度为1080个像素点,1920 * 1080 = 2073600,也就是说这张图片总共有200多万个像素点,也就是我们通常说的200万像素。


1.2 图像有多大


想要搞清楚图像有多大,就得先搞清楚一个像素点是多少个比特(bit),而想搞清楚一个像素点是多少个bit,就要从颜色开始说起。


我们知道任何颜色都可以用红色、绿色、蓝色按照一定的比例调配出来,而这三种颜色也被称为三原色。


而在计算机里,颜色是用数字来表示的,R、G、B被称为“基色分量”,他们的值分别是从0到255,一种256个等级。因此,任何颜色都可以用R、G、B的三个值的组合来表示。通过RGB的方式,我们可以表达256 * 256 * 256 = 16777216种颜色,这种表示方式,也称为1600万色。


刚才提到,RGB三原色中每一个颜色有256个数值,正好是2的8次方,我们知道在计算机里一个数字是1bit,那么用8位的二进制数来表达,刚好能表达256个数值,那么刚好就是8bit可以表达一个原色,也就是说RGB三原色每个颜色占用8bit,三个颜色就是24bit,这种方式表达的颜色也被称为24位色。


以1080p的图片为例,像素点是2073600个,用24位色表示,每张图片就是 2073600 * 24 bit = 49766400 bit。


结合上一节课的知识,我们得到49766400 / 8 / 1024 / 1024 = 5.9MB,就是说这张图片的大小是5.9MB。


2.视频


2.1 什么是视频


我们提到的视频,其实就是若干张图片连续播放的结果,通常的视频有如下的几张格式:


视频格式长宽比分辨率像素
720p16:91280 * 720921600
1080p16:91920 * 10802073600
2K16:91920 * 108082073600
4K16:93840 * 21608294400
8K16:97680 * 432033177600


好的,我们继续回到视频,那么多张图片通常要怎么样去连续的播放呢,这就涉及到一个概念,帧率。


2.2 视频有多大


视频其实是由若干图片构成的,在视频中,一帧就是一个画面,也就是一张图片,而帧率是指每秒钟图片的数量,单位是FPS(Frame per second)。


常见的帧率有24fps、30fps、60fps,其中24fps是电影的标准,那我们就用24fps来继续计算我们要得到的带宽。


按照上边的结果,每秒的视频就是:49766400 * 24 = 1194393600bit,我们知道1B=8bit,所以每秒的视频就是149299200B。


换言之,每秒的视频就是149299200/1024/1024=142MB。这个数据是很吓人的,1秒142MB,那我们刷会儿抖音流量岂不是分分钟爆炸,这是因为我们对视频进行了压缩,接下来我们就来说说视频的压缩。


2.3 视频的压缩


通常一段视频从录制到播放需要经过如下流程:


•摄像机录像•预处理(A/D转换)•预处理(YUV转换等)•压缩编码•数据封装及传输•解码•图像格式变换播放


录像机录像以及预处理不是我们要讲的重点,这里就先不展开了,我们只要知道做完这些预处理后,就要开始正式的编码了,而目前编码的主流格式是H.264和H.265。这些编码有很强的压缩率,通过可以实现300~500:1的压缩率,换言之,如果1080p的视频采用H.264的编码格式,那么每秒就是1194393600bit / 300 = 3981312 bit/s,而这里的3981312 bit/s就是码流,也就是视频文件在单位时间内使用的数据流量。


3.结论


综上所述,我们1080p,24fps,采用H.264格式的视频,

码流为:3981312 bit/s

带宽为:3981312 / 1024 / 1024 = 3.79Mbps

通常我们网络带宽需求 = 视频码流 * 1.3,因此, 

网络带宽需求为:3.79 Mbps * 1.3 = 4.9 Mbps

同样我们也知道,4.9Mbps的带宽理论速度为:4.9/8=0.612MB/s,也就是我们常说的627k的网速。


浏览 124
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报