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

简介: 视频码率、分辨率、帧率的关系

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


码流

码流(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

目录
相关文章
|
2月前
|
编解码
视频分辨率和帧率
【10月更文挑战第7天】视频分辨率和帧率
|
2月前
|
机器学习/深度学习 存储 编解码
微帧Per-Title编码技术:自适应码率-画质-分辨率
Per-Title编码技术由Netflix提出,旨在为每部电影量身定制合适的码率阶梯,以节省带宽和存储成本。传统固定码率阶梯在某些视频类型上存在浪费,Per-Title通过分析视频内容的复杂度,生成最优的码率-质量曲线,确保在有限带宽下提供最佳视频质量。微帧的Per-Title技术进一步优化了这一过程,通过智能算法和深度学习,为每个视频选择最合适的分辨率和码率组合,实现高效传输和优质观看体验。
|
6月前
|
Java Linux
ffmpeg音频格式转换、合成、速率调整
ffmpeg音频格式转换、合成、速率调整
131 2
|
7月前
|
机器学习/深度学习 编解码
SRGAN超分辨率网络
SRGAN超分辨率网络
87 0
|
编解码 C++
基于Live555实现RtspServer及高清高分辨率和高码率视频传输优化
基于Live555实现RtspServer及高清高分辨率和高码率视频传输优化
522 0
绘制帧率与实际显示时帧率不同步,怎么测得显示帧率?
绘制帧率与实际显示时帧率不同步,怎么测得显示帧率?
179 0
|
编解码
流媒体技术学习笔记之(五)码流、码率、采样率、比特率、帧速率、分辨率、高清视频的概念
码流、码率、采样率、比特率、帧速率、分辨率、高清视频的概念   高清视频主要编码   480P格式:720x480  720P格式:1280x720 【表现体育节目、快速运动的视频时,720P更明显】 1080P格式:1920x1080 【适合普通电视节目、电影等慢速运动的视频时,1080P更明显】 1、码流(码率)           码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,通俗一点的理解就是取样率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是kb/s或者Mb/s。
4865 0
|
编解码 Android开发 数据格式
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(二)
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(二)
407 0
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(二)
|
数据采集 传感器 编解码
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(一)
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(一)
243 0
|
编解码 Android开发
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(三)
【Android RTMP】x264 编码器初始化及设置 ( 获取 x264 编码参数 | 编码规格 | 码率 | 帧率 | B帧个数 | 关键帧间隔 | 关键帧解码数据 SPS PPS )(三)
276 0