视频码率、分辨率、帧率的关系

视频带宽计算公式(码流_分辨率_帧率)   (自己整理过的.)

码流
码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是Kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越高,处理出来的文件就越接近原始文件,图像质量越好,画质越清晰,要求播放设备的解码能力也越高。

帧率

     一帧就是一副静止的画面,连续的帧就形成动画,如电视图象等。我们通常说帧数,简单地说,就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用fps(Frames Per Second)表示。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数 (fps) 愈多,所显示的动作就会愈流畅。

分辨率

视频分辨率是指视频成像产品所成图像的大小或尺寸。常见的视像分辨率有352×288,176×144,640×480,1024×768。在成像的两组数字中,前者为图片长度,后者为图片的宽度,两者相乘得出的是图片的像素,长宽比一般为4:3. 目前监控行业中主要使用Qcif(176×144)、CIF(352×288)、HALF D1(704×288)、D1(704×576)等几种分辨率。

D1是数字电视系统显示格式的标准,共分为以下5种规格:

D1:480i格式(525i):720×480(水平480线,隔行扫描),和NTSC模拟电视清晰度相同,行频为15.25kHz,相当于我们所说的4CIF(720×576)

D2:480P格式(525p):720×480(水平480线,逐行扫描),较D1隔行扫描要清晰不少,和逐行扫描DVD规格相同,行频为31.5kHz

D3:1080i格式(1125i):1920×1080(水平1080线,隔行扫描),高清方式采用最多的一种分辨率,分辨率为1920×1080i/60Hz,行频为33.75kHz

D4:720p格式(750p):1280×720(水平720线,逐行扫描),虽然分辨率较D3要低,但是因为逐行扫描,市面上更多人感觉相对于1080I(实际逐次540线)视觉效果更加清晰。不过个人感觉来说,在最大分辨率达到1920×1080的情况下,D3要比D4感觉更加清晰,尤其是文字表现力上,分辨率为1280×720p/60Hz,行频为45kHz

D5:1080p格式(1125p):1920×1080(水平1080线,逐行扫描),目前民用高清视频的最高标准,分辨率为1920×1080P/60Hz,行频为67.5KHZ。

其中D1 和D2标准是我们一般模拟电视的最高标准,并不能称的上高清晰,D3的1080i标准是高清晰电视的基本标准,它可以兼容720p格式,而D5的1080P只是专业上的标准。

帧率、码流与分辨率之间关系

公式:

带宽 / (码流 * 8) = 同时在线人数

文件大小 = 时间×码率/8

一个视频文件的大小为5.86M,播放时长为3分7秒:

1、该文件对应的码流就是

     5.86 * 1024 * 1024 * 8 / (3 * 60 + 7) =262872.95657754bps

2、10M独享带宽能支撑的同时在线人数

    10* 1024 * 1024 / 262872.95657754 =39.889078498294

3、支撑1000人同时在线的系统最少需要的带宽数为

    262872* 1000 / (1024 * 1024) = 250.69427490234M

原文链接:https://blog.csdn.net/LUFANGBO/article/details/83793198


设置视频码率的必要性

在视频会议应用中,视频质量和网络带宽占用是矛盾的,通常情况下视频流占用的带宽越高则视频质量也越高;如要求高质量的视频效果,那么需要的网络带宽也越大;解决这一矛盾的钥匙当然是视频编解码技术。评判一种视频编解码技术的优劣,是比较在相同的带宽条件下,哪个视频质量更好;在相同的视频质量条件下,哪个占用的网络带宽更少。

是不是视频码率越高,质量越好呢?理论上是这样的,然而在我们肉眼分辨的范围内,当码率高到一定程度,感觉没有什么差别。所以码率设置有它的最优值,H.264(也叫AVC或X.264)的文档中,视频的建议码率如下:

视频大小    分辨率    建议码率

480P    720X480    1800Kbps

720P    1280X720    3500Kbps

1080P    1920X1080    8500Kbps

三、手机设置码率建议

             通过上面的介绍,结合我做过的一些手机项目,我总结了一套设置码率的公式,分享给大家如下:

项目计算公式                    192X144    320X240    480X360    640X480    1280X720    1920X1080


极低码率(宽X高X3)/4    30kb/s     60kb/s    120kps   250kbps   500kbps    1mbps


低码率(宽X高X3)/2        60kb/s    120kb/s   250kbps   500kbps  1mbps      2mbps


中码率(宽X高X3)             120kb/s   250kb/s   500kbps  1mbps   2mbps     4mbps


高码率(宽X高X3)X 2      250kb/s   500kb/s   1mbps    2mbps   4mbps    8mbps


极高码率(宽X高X3)X4    500kb/s   1mb/s   2mbps   4mbps    8mbps     16mbps

阿里云给的建议:根据清晰度  给出码率和分辨率

链接:https://www.jianshu.com/p/be38f54dafcb


参数设置:

        cameraView.addCameraListener(object : CameraListener() {

            override fun onCameraOpened(options: CameraOptions) {
                super.onCameraOpened(options)
                cameraView.setVideoSize(SizeSelectors.maxWidth(720))
                cameraView.videoBitRate = 1500 * 1000
                cameraView.audioBitRate = 64000
            }

            override fun onCameraError(exception: CameraException) {
                super.onCameraError(exception)
                ToastUtils.error("camera error: $exception")
            }

        })

Android 视频压缩传输

1、https://github.com/Tourenathan-G5organisation/SiliCompressor

2、https://github.com/zerochl/FFMPEG-AAC-264-Android-32-64

3、https://www.cnblogs.com/wzqnxd/p/10038881.html

4、https://blog.csdn.net/qq_36421691/article/details/79113392

5、https://www.jianshu.com/p/910b5206b229

发布了66 篇原创文章 · 获赞 222 · 访问量 119万+

猜你喜欢

转载自blog.csdn.net/Liuqz2009/article/details/103913457