zoukankan      html  css  js  c++  java
  • 带你脱离视频测试的坑

    本文由云+社区发表

    作者:腾讯云视频

    小编这次分享主要是视频相关的专项测试,音频相关的暂不涉及。

    我们直接切入正题,关于视频通话质量对比,需要一些对比项,这里是从以下5个方面进行数据对比:码率、帧率、分辨率、清晰度、时延。

    接下来我分别介绍一下这5个方面。

    码率

    数据传输时单位时间内传送的数据位数,单位是kbps,即千位每秒。码率越高对应着传输能力越强,视频精度会越高。

    帧率

    帧率是用于测量显示帧数的量度,简称fps。每秒的帧数表示处理器处理时每秒钟能够更新的次数,高的帧率可以得到更流畅、更逼真的动画。

    分辨率/清晰度

    这个两个指标代表着视频画面的清晰程度,越高的话,给用户的画面就越清晰,用户体验会越好。清晰度的单位:LW/PH

    时延

    即实时性,简单来说就是两个人通话,本端说了一句话,对端需等待一段时间才能收到。单位一般用毫秒(ms)表示。

    img

    介绍完这些指标,接下来切入正题,这些数据在手机上,如何获取。

    img

    首先,在双人视频通话连接好后,在非纯净态画面顶部会出现名字,在名字上点击5下,会弹出一段log,这个log是开发为了好分析问题所特意加的,这里面就包含了我们所需要的3个数据,分辨率,帧率以及码率。

    img

    img

    img

    img

    img

    img

    img

    双人视频通话log

    img

    红色框框里面的即为我们要的3个数据,需要看本端的分辨率,码率,帧率,则需要找到Enc这个字段(Enc代表编码端,即本端;Dec代表解码端,即对端),后面对应的依次为分辨率,码率和帧率。

    测试时,需要等待视频通话稳定一段时间,取的数据才有意义,取最大、最小值都意义不大。视频通话分别率刚开始可能会低一些,等网络稳定后视情况,应该会增加分辨率,所以取的分辨率需要等稳定后再取。帧率和码率也一样,稳定后取平均值。

    上面说了手机APP分辨率、码率、帧率的测试方法,接下来说一下时延和清晰度。视频清晰度,本该用一个动态的视频进行分析,这里由于条件有限,采取的是等视频稳定后,互相截图,然后用专业的清晰度计算工具,算出图片的清晰度值,我们认为这个值就是该机型视频通话的清晰度。

    视频专项测试方法

    视频清晰度测试方法

    img

    具体操作如下:在音视频实验室,有专门的设备。两台手机视频通话后,一台手机切换至前摄像头,点出log后,放在架子上,另一台手机关掉本端摄像头;架子上的手机分辨率稳定后,另一端手机直接截图,这张图就是用来计算架子上的手机的分辨率的。

    有专门的计算工具Imatest进行计算,计算方法这里就不展开来说了。两部手机对调,就可以互相取得分辨率了。这里有个问题,即清晰度计算软件是和截图的质量也有关系,不同机型互测的时候,截图效果也是不一样的,这里是有可能会影响清晰度的最终计算结果的,这里还没有想到比较好的解决办法;但同机型互通则不存在该问题。

    时延测试方法

    img

    电脑上打开一个在线秒表,开始计时后。两台手机固定在屏幕前,通话后,稳定一段时间后,拿起第三部手机拍照,即是时延,这里拍照15次,计算差值后取平均值,即为时延。

    到此,手机APP五项性能数据测试方法就全部介绍完成;接下来介绍同类型的产品视频通话,这5项数据需要如何获取。想要得到码率、帧率、分辨率这些数据只能通过一些其他方法。

    01

    首先是码率,这里需要抓包看。准备mac机,确保mac机上有Xcode,手机连上mac后,打开Xcode后,点击window-Device and Simulators,找到identifier,后面的设备标识复制一下,看这里

    img

    02

    打开mac机的cmd,输入rvictl -s 手机标识,回车后即可,此时输入rvictl -l,即可查到已添加的设备。

    img

    03

    打开Wireshare,找到rvio端口,双击后,进入rvio端口,点击Statistics-I/O Graph。

    img

    img

    img

    04

    里面需要调整一下参数,就可以出现对方码率了,首先要先添加一行参数,即上图左下角的“+”号,点击“+”号后,在Enabled打上勾,然后Graph Name修改一下,Y Axis改成Bits,Interval改成1 sec。最后就要修改一下Display Filter,这个参数是用来过滤的,当你需要获取连着电脑的这部手机的码率是,你需要输入ip.srcX.X.X.X and udp;当你需要获取对端的码率时(即非连接mac的那台手机),需要输入ip.dstX.X.X.X and udp。

    此文已由腾讯云+社区在各渠道发布

    获取更多新鲜技术干货,可以关注我们腾讯云技术社区-云加社区官方号及知乎机构号

  • 相关阅读:
    安卓执行机制JNI、Dalvik、ART之间的比較 。android L 改动执行机制。
    Android studio 导入githubproject
    JS创建对象几种不同方法具体解释
    python 学习笔记 13 -- 经常使用的时间模块之time
    Version和Build的差别
    关于Java基础的一些笔试题总结
    vim编码方式配置的学习和思考
    从头认识java-15.5 使用LinkedHashSet须要注意的地方
    一篇文章,带你明确什么是过拟合,欠拟合以及交叉验证
    Spring -- Bean自己主动装配&Bean之间关系&Bean的作用域
  • 原文地址:https://www.cnblogs.com/qcloud1001/p/10469855.html
Copyright © 2011-2022 走看看