共计 1807 个字符,预计需要花费 5 分钟才能阅读完成。
本文由云 + 社区发表作者:腾讯云视频
小编这次分享主要是视频相关的专项测试,音频相关的暂不涉及。
我们直接切入正题,关于视频通话质量对比,需要一些对比项,这里是从以下 5 个方面进行数据对比:码率、帧率、分辨率、清晰度、时延。
接下来我分别介绍一下这 5 个方面。
▽
码率
数据传输时单位时间内传送的数据位数,单位是 kbps,即千位每秒。码率越高对应着传输能力越强,视频精度会越高。
帧率
帧率是用于测量显示帧数的量度,简称 fps。每秒的帧数表示处理器处理时每秒钟能够更新的次数,高的帧率可以得到更流畅、更逼真的动画。
分辨率 / 清晰度
这个两个指标代表着视频画面的清晰程度,越高的话,给用户的画面就越清晰,用户体验会越好。清晰度的单位:LW/PH
时延
即实时性,简单来说就是两个人通话,本端说了一句话,对端需等待一段时间才能收到。单位一般用毫秒(ms)表示。
介绍完这些指标,接下来切入正题,这些数据在手机上,如何获取。
首先,在双人视频通话连接好后,在非纯净态画面顶部会出现名字,在名字上点击 5 下,会弹出一段 log,这个 log 是开发为了好分析问题所特意加的,这里面就包含了我们所需要的 3 个数据,分辨率,帧率以及码率。
双人视频通话 log
红色框框里面的即为我们要的 3 个数据,需要看本端的分辨率,码率,帧率,则需要找到 Enc 这个字段(Enc 代表编码端,即本端;Dec 代表解码端,即对端),后面对应的依次为分辨率,码率和帧率。
测试时,需要等待视频通话稳定一段时间,取的数据才有意义,取最大、最小值都意义不大。视频通话分别率刚开始可能会低一些,等网络稳定后视情况,应该会增加分辨率,所以取的分辨率需要等稳定后再取。帧率和码率也一样,稳定后取平均值。
上面说了手机 APP 分辨率、码率、帧率的测试方法,接下来说一下时延和清晰度。视频清晰度,本该用一个动态的视频进行分析,这里由于条件有限,采取的是等视频稳定后,互相截图,然后用专业的清晰度计算工具,算出图片的清晰度值,我们认为这个值就是该机型视频通话的清晰度。
视频专项测试方法
视频清晰度测试方法
具体操作如下:在音视频实验室,有专门的设备。两台手机视频通话后,一台手机切换至前摄像头,点出 log 后,放在架子上,另一台手机关掉本端摄像头;架子上的手机分辨率稳定后,另一端手机直接截图,这张图就是用来计算架子上的手机的分辨率的。
有专门的计算工具 Imatest 进行计算,计算方法这里就不展开来说了。两部手机对调,就可以互相取得分辨率了。这里有个问题,即清晰度计算软件是和截图的质量也有关系,不同机型互测的时候,截图效果也是不一样的,这里是有可能会影响清晰度的最终计算结果的,这里还没有想到比较好的解决办法;但同机型互通则不存在该问题。
时延测试方法
电脑上打开一个在线秒表,开始计时后。两台手机固定在屏幕前,通话后,稳定一段时间后,拿起第三部手机拍照,即是时延,这里拍照 15 次,计算差值后取平均值,即为时延。
到此,手机 APP 五项性能数据测试方法就全部介绍完成;接下来介绍同类型的产品视频通话,这 5 项数据需要如何获取。想要得到码率、帧率、分辨率这些数据只能通过一些其他方法。
▽
01
首先是码率,这里需要抓包看。准备 mac 机,确保 mac 机上有 Xcode,手机连上 mac 后,打开 Xcode 后,点击 window-Device and Simulators,找到 identifier,后面的设备标识复制一下,看这里
02
打开 mac 机的 cmd,输入 rvictl -s 手机标识,回车后即可,此时输入 rvictl -l,即可查到已添加的设备。
03
打开 Wireshare,找到 rvio 端口,双击后,进入 rvio 端口,点击 Statistics-I/O Graph。
04
里面需要调整一下参数,就可以出现对方码率了,首先要先添加一行参数,即上图左下角的“+”号,点击“+”号后,在 Enabled 打上勾,然后 Graph Name 修改一下,Y Axis 改成 Bits,Interval 改成 1 sec。最后就要修改一下 Display Filter,这个参数是用来过滤的,当你需要获取连着电脑的这部手机的码率是,你需要输入 ip.src==X.X.X.X and udp;当你需要获取对端的码率时(即非连接 mac 的那台手机),需要输入 ip.dst==X.X.X.X and udp。
此文已由腾讯云 + 社区在各渠道发布
获取更多新鲜技术干货,可以关注我们腾讯云技术社区 - 云加社区官方号及知乎机构号