视频压缩1

来源:互联网 发布:python量化投资之路 编辑:程序博客网 时间:2024/06/07 07:30

要实现实时视频通信,除了需比与其它数据通信(语音,非实时视频,数据)更高的带宽外,还需要对视频信号进行较大的压缩。网络带宽正随着无线接入技术和有线传输技术的发展不断提升,但即使这样,如果不对视频信号进行必要的压缩,目前用户的接入带宽也是远远无法满足视频通信的要求。

 

   假设用户接入网带宽为20M(在中国,有这种接入网带宽的用户很少吧?),如果用户想进行实时的视频通信(比如说你想跟外地朋友进行视频聊天),假设你使用的图像分辨率为4CIF(704*576),帧频为25f/s.如果不进行压缩,大概需要多大的带宽呢?

 

   那让我们计算下传输原始信号需要的带宽吧,如果原始图像为4:2:0的YUV格式数据(这个格式已经为原始数据的最小),每幅画面的大小为:704*576*1.5*8 bit = 4.64M,也就是说每一帧为4.64M。如果想看流畅的视频画面,大概每秒需要传输25帧,也即需要4.64*25M = 116M的带宽。CIF(352*288)格式也需要116/4=29M 的带宽。也就是说如果不压缩,20M的接入带宽,连QQ聊天都做不了。你想想QQ聊天的效果有多差?

 

   刚刚计算的是标清分辨率条件下,大家现在不流行说高清,全高清吗,也就是说分辨率为720或者1080。这两种分辨率同样按YUV4:2:0的格式计算,原始数据量就更大了,720P(分辨率为1280*720):1280*720*1.5*8 bit = 10.55M。1080P(分辨率为1920*1080) 1920*1080*1.5*8 bit = 23.73M。要知道这只是一副画面的大小,流畅的视频画面需要大概每秒25帧或以上,也就是说高清720p的视频,原始数据大小为每秒10.55*25 = 263.75M,而1080P每秒数据量为23.73M*25 = 593.25M。这里还都只是算的每秒原始视频数据的数据量,大家再想想,随便一部高清电影,好莱坞大片,怎么也得有两个多小时,原始数据量就是再乘以3600秒*2。

    

   原始视频数据有多大?经过上面简单计算你基本清楚了吧,别说实时传输目前的带宽远远不够,就是你想在自己的PC机子上存储一部高清好莱坞大片,以现在一般用户的硬盘空间也远远不够。(全高清1080P 2小时的大片,原始数据量大约为4171G)

 

   计算了这么多,只是想说明一个问题,原始视频的数据量相当大,不可能直接进行实时网络传输,甚至连存储的代价都相当大。

  

   这就需要做视频压缩,也就是说去除掉原始数据中的一些冗余,然后再进行传输或者存储,来减少对带宽和存储空间的需求。

 

    大家现在可以在2M的带宽上享受高清实时视频服务,可以在一张4G的蓝光DVD里面存储高清视频,这是因为这些传输或者存在的视频信号已经经过了压缩。

 

      而视频压缩又究竟是什么原理呢?为什么能进行压缩传输,显示端又能完美呈现呢?视频压缩又有 那些关键因素呢?




原创粉丝点击