如何设置视频的帧率、分辨率、码率来调节音视频即时通讯的质量
原文地址: http://www.cnblogs.com/hsq0421/p/4092262.html
在通过网络进行音视频即使通讯的时候,选择合适的视频质量参数就需要根据实际的系统运行环境综合来决定,下面我们针对常见的网络环境给出一些建议供参考。
目前常见的网络主要有四种类型:ADSL拨号接入方式、光纤接入方式、3G拨号接入方式、局域网。
ADSL拨号接入方式是一种非对称的网络接入,下行流量通常有2Mbps、4Mbps、6Mbps等,而上行流量通常都是512kbps,即上行速率和下行速率是不对称的。此时如果需要使用AnyChat进行音视频的交互,则上传流量只能用512kbps作为参考值,适合的分辨率有:QVGA(320x240)、CIF(352x288)、VGA(640x480)。
纤接入方式是一种对称的网络接入,通常上行速率和下行速率相同。光纤接入的网络通常非常稳定,适合传输较高质量的视频,当网络带宽允许的情况下,适合的分辩率有:QVGA(320x240)、CIF(352x288)、VGA(640x480)、SVGA(800x600)、720P(1280x720)。
3G拨号接入方式也是一种非对称的网络接入,不同的网络运营商所提供的网络带宽各不相同,而且和ADSL一样上行网络带宽远远低于下行网络带宽,如联通的3G宣传的7.2Mbps网络带宽便是指下行带宽,而且3G的网络带宽质量与位置相关,如离信号基站越近,质量就越好,同一个基站下使用3G的用户越少,质量也就越好。在这种接入方式下,适合上传的分辨率有:QVGA(320x240)、CIF(352x288)。
局域网,或是专网网络带宽都非常充裕,选择多大的分辨率主要根据PC的性能来决定,通常局域网可以选择CIF(352x288)、VGA(640x480)、SVGA(800x600)、720P(1280x720)等分辨率。
现在就AnyChat音视频开发包为例,进行设置视频的帧率、分辨率、码率来调节音视频即时通讯的质量。
AnyChat质量模式分辨率、码率对应表(单位:kbps)
320x240 |
352x288 |
640x480 |
800x600 |
1280x720 |
||||||
12fps |
25fps |
12fps |
25fps |
12fps |
25fps |
12fps |
25fps |
12fps |
25fps |
|
static |
20 |
40 |
60 |
70 |
100 |
130 |
160 |
180 |
350 |
380 |
motion |
150 |
200 |
210 |
250 |
400 |
450 |
550 |
650 |
850 |
900 |
avg |
80 |
120 |
150 |
180 |
200 |
230 |
300 |
350 |
450 |
550 |
Static—静态画面, motion—运动图像峰值, agv—平均码率
AnyChat的视频质量分为“码率控制模式”和“质量控制模式”,在“码率控制模式”下,视频流的目标码率会在设定码率的上下浮动,而在“质量控制模式”下,目标码率会根据视频图像的运动场景自动进行调节,静态画面时输出较低的码率,而运动画面时,会输出较高的码率,以保障视频的细节得到展现。通常来说,光纤接入方式、局域网等网络带宽比较充裕的场合可使用“质量控制模式”,而ADSL拨号接入和3G拨号接入则采用“码率控制模式”比较合适。
关于视频的帧率,帧率越高,视频越流畅,同时给网络的压力也会增大,输出的码率也会增加,通常来说,光纤接入方式、局域网等网络带宽比较充裕的场合可使用高帧率,如20fps、25fps,而ADSL拨号接入和3G拨号接入则采用低帧率比较合适,如8fps、12fps等。
如何设置视频的帧率、分辨率、码率来调节音视频即时通讯的质量相关推荐
- html文件显示controls,html5中设置或返回浏览器应当显示标准的音视频控件的属性controls...
实例 为视频启动控件:myVid=document.getElementById("video1"); myVid.controls=true; 定义和用法 controls 属性 ...
- android硬编码封装mp4,【Android 音视频开发打怪升级:音视频硬解码篇】四、音视频解封和封装:生成一个MP4...
[声 明] 首先,这一系列文章均基于自己的理解和实践,可能有不对的地方,欢迎大家指正. 其次,这是一个入门系列,涉及的知识也仅限于够用,深入的知识网上也有许许多多的博文供大家学习了. 最后,写文章过程 ...
- 基于iOS的网络音视频实时传输系统(二)- 捕获音视频数据
下载 GitHub: client 端:https://github.com/AmoAmoAmo/Smart_Device_Client server端:https://github.com/AmoA ...
- 安卓音视频入门难,老司机分享音视频开发学习技巧与痛点
最近在写文章的时候,发现很多读者给我私信提问,想了解安卓音视频这块, 很多同学也对音视频开发有点浓厚的兴趣,但奈何没有系统的学习知识,仅靠自己苦苦钻研确实力不从心,今天就借这个机会分享一下我学习音视频 ...
- 设置按峰值带宽计费_计费系统—音视频云服务
背景 早期的计费系统是电话局中记录用户通话资费有关信息的系统.在电话通话中的计费系统:按照流量和时长生成业务服务使用记录,传递给计费系统用于计费. 本文框架概览 1.计费系统的业务需求2.计费系统的产 ...
- 有关视频小知识(码率,比特率,视频编码等)
视频: (以下说的都是视频的,不包括音频) 1.码率近似等于比特率 视频文件大小就是由码率决定的,而且是成正比. 码率的单位是kbps,也就是kb/s 简单来说,码率越高越清晰(不考虑其他条件的情况下 ...
- 超分辨率在移动实时音视频的应用实践
作者 | 周世付 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 在 RTC 2019实时互联网大会上,声网Agora AI 算法工程师周世付,分享了超分辨率应用于移动端实时音视频场景下 ...
- 超分辨率技术在实时音视频领域的研究与实践
前言 近日,计算机视觉和模式识别领域顶级会议 CVPR 在美国新奥尔良市举办,同时计算机图像恢复领域最具影响力的全球性顶级赛事 NTIRE 在会上颁奖,网易云信音视频实验室取得 NTIRE 高效率超分 ...
- 浏览器中的音视频知识总结(工作中需要和音视频打交道必看!)
大厂技术 高级前端 Node进阶 点击上方 程序员成长指北,关注公众号 回复1,加入高级Node交流群 视频是什么 视频,其实就是一系列连续播放的图片,如果1s钟播放24张图片,那么人眼看到的就不 ...
- 微信多媒体团队访谈:音视频开发的学习、微信的音视频技术和挑战等
内容概述 腾讯多媒体内核中心高级研究员时永方接受了LiveVideoStack的邮件采访,谈及了个人成长中的关键时刻,学习多媒体开发的三点核心,以及在5G和高清时代下,微信多媒体团队面临的挑战. Q: ...
最新文章
- Google Test(GTest)使用方法和源码解析——断言的使用方法和解析
- 投稿2877篇,EMNLP 2019公布4篇最佳论文
- mysql数据库语句q_mysql数据库命令大全,mysql基本命令大全
- mxnet DepthwiseConv2D
- 1.12 改善你的模型表现-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
- 京东应用架构设计与治理
- 企业路由器应用——DMZ口
- 2015生命之旅---第一站重庆
- 科研实习 | 香港科技大学统计机器学习实验室张潼教授招收暑期科研实习生
- eureka hostname作用_SpringCloud基础教程(三)-Eureka进阶
- 全国计算机等级考试题库二级C操作题100套(第49套)
- 解读金融高频交易不出错的金手指:分布式事务管理
- IFD-x 微型红外成像仪(模块)的温度测量和成像精度
- 合成资产赛道之Mirror Protocol
- blend2d + MFC
- ADB interface 驱动下载,以及使用,Because an app is obscuring a permission request settings can’t verify your
- 【Java并发编程(一)】并发设计原理
- 抖音巨量引擎1 创建广告计划
- 论文阅读5 | Recent Advances in Data-Driven Wireless Communication Using Gaussian Processes: A Comprehens
- delphi 取屏幕分辨率_使用Delphi更改Windows屏幕分辨率的更新