作者:lifusheng,用户体验技术专家

当下,音视频无处不在,很多设备和应用都涉及音视频。因而,对于HarmonyOS开发者们来说,如何对鸿蒙生态产品进行音视频测试是一个非常重要的问题。

华为HarmonyOS生态整机测试能力中心——DevEco Testing,为生态合作伙伴接入HarmonyOS生态提供专业的测试服务。DevEco Testing推出的音视频测试服务,为HarmonyOS整机提供音视频评测能力,满足开发者们的上述需求,也为鸿蒙生态保驾护航。

下面我们以手机投屏业务为例来聊一聊音视频测试吧~

一、传统音视频测试的痛点

手机投屏业务,是将手机播放的视频投屏到智能大屏或平板等。针对手机投屏业务,传统的音视频测试方法就是通过高速相机录制投屏的视频内容和手机播放的视频内容,再用视频工具将高速相机录制的内容逐帧提取出来,人工分析视频流畅、声画同步和时延等测试指标。

传统的音视频测试存在以下痛点:

1. 很多环节需要人工分析,工作量大,误差也大

在分析视频时延、视频流畅、音频时延、声画同步等指标时,除了专业的工具外,往往还需要分析人员逐帧逐采样点地进行结果分析。每测试1分钟的内容,就要分析14400张图片,2880000个音频波形采样点,并对图片和音频波形进行比对,工作量巨大。同时,人为因素引入的误差也比较大。

2. 声画同步测试效率低

所有录像设备录制的内容都会存在声画同步偏差。同一个设备在不同时间录制的内容,声画同步偏差也不同。传统的测试方法是:选择自然界中的真实内容(例如打板、敲击桌子或者钢珠掉落等)作为声画同步测试的校准依据,然后人工分析声画同步偏差,比较费力,且效率低。

3. 录制的图像很容易产生断裂

高速相机录制液晶屏幕,因为液晶屏幕的逐行刷新特性,录制的图像很容易发生丢帧、帧重叠等,导致图像断裂,如图1所示。

图1 图像断裂

4. 测试工具的录制频率低,引起测试偏差比较大

目前主流音视频测试工具的录制频率是60赫兹,引起的测试偏差起码有1/60秒(大约16.7毫秒)。

二、DevEco Testing音视频测试的优势

针对以上痛点,DevEco Testing音视频测试服务是如何应对的呢?下面就让我们一一揭晓~

1. DevEco Testing的音视频测试服务实现了播放、采集、分析全流程自动化测试,无需人工干预。

2. 我们设计了一个可以由计算机视觉和声音识别的、物理的声画同步源——吐司盒子。

吐司盒子可校准所有录像的声画同步偏差,还可以作为录像、直播、视频通话类业务的测试工具,让计算机视觉听觉可以自动化分析测试结果。

图2 吐司盒子

3. 针对录制图像断裂的问题,我们设计了芝士码。

芝士码是基于格雷码而全新设计的二维码。音视频测试时,DevEco Testing后台推送视频到被测设备播放。推送视频的每一帧都含有一个芝士码,DevEco Testing很容易检测出是否发生丢帧、帧重叠等。

图3 芝士码

4.  我们选择支持240赫兹的录像设备,提升测试精度,让测试偏差控制在1/240秒(大约4.17毫秒)。

三、测试流程和实例

了解了DevEco Testing音视频测试服务的优势后,下面让我们来看看DevEco Testing音视频测试的测试流程和测试实例。

1. 典型组网和测试流程

DevEco Testing音视频测试的典型组网如图4所示。

图4 典型组网图

目前,DevEco Testing的音视频测试服务提供三项检测服务:视频流畅性测试、视频质量测试和编解码能力测试。

以视频流畅性测试为例,测试流程如下:

(1)用户在PC端的DevEco Testing客户端上创建测试任务,并开始测试任务。

(2)PC端上的DevEco Testing根据测试任务中配置的“视频分辨率”和“测试帧率”,选择最佳的视频源传输到被测设备。

(3)DevEco Testing控制被测设备,打开对应的app播放器,单文件循环播放刚刚传输的视频。

(4)DevEco Testing下发指令给吐司盒子,吐司盒子开始工作。

(5)DevEco Testing下发开始录制的指令给录像设备,录像设备录制被测设备和吐司盒子的视频。测试任务中配置了“测试时长”,到达时长后,DevEco Testing下发停止录制的指令给录像设备。

(6)DevEco Testing下发指令给吐司盒子,吐司盒子停止工作。

(7)录像设备上传录制的视频到PC端,PC端的DevEco Testing对视频进行分析,形成测试报告,然后将测试报告上传到云端。

通过以上测试流程可知,用户需要执行操作的就是第(1)步——创建和开始测试任务,然后等待DevEco Testing自动完成测试并生成测试报告即可。

2. 测试实例

下面我们仍然以手机投屏业务为例,来看看DevEco Testing音视频测试需要准备的设备和具体的操作步骤。

图5 测试场景

图5是手机投屏业务的测试场景。根据图5可知,需要准备如下设备:

(1)被测设备:即播放视频的手机。

(2)投屏设备:用于将被测设备播放的视频投屏到此设备。

(3)吐司盒子:声画偏差的校准设备,是一个可以由计算机视觉和声音识别的、物理的声画同步源。

4)录像设备:支持240帧慢动作录制的设备。图1中的录像设备是一台手机。

除了以上四个设备外,还需准备一台Windows 10(64位)的PC机,并在PC机上安装DevEco Testing客户端。

下载地址(注意选择“下载设备测试客户端”):

https://devicepartner.huawei.com/cn/competency-test

图6 下载DevEco Testing客户端

以上设备连接就绪后,就可以开始测试了。

下面为大家介绍如何创建和开始测试任务,以及如何查看测试报告:

(1)登录DevEco Testing客户端,选择“图形图像测试 > 音视频测试”。

(2)选择测试服务,比如“视频流畅性测试”。

(3)在图7所示的“创建任务”界面配置测试参数,点击“开始测试”。

图7 创建任务

(4)图8所示的“测试执行”界面显示测试任务的进度和过程步骤。

图8 测试执行

(5)测试任务执行完成后,点击右下角的“查看报告”,即可查看详细的测试结果,如图9所示。

图9 查看报告

以上就是本期DevEco Testing音视频测试的介绍内容了,欢迎大家体验DevEco Testing音视频测试服务!

HDC2021技术分论坛:吐司盒子?芝士码?HarmonyOS音视频测试来啦的更多相关文章

  1. HDC2021技术分论坛:如何高效完成HarmonyOS分布式应用测试?

    作者:liuxun,HarmonyOS测试架构师 HarmonyOS是新一代的智能终端操作系统,给开发者提供了设备发现.设备连接.跨设备调用等丰富的分布式API.随着越来越多的开发者投入到Harmon ...

  2. HDC2021技术分论坛:组件通信、硬件池化,这些创新技术你get了吗?

    作者:ligang 华为分布式硬件技术专家,sunbinxin 华为应用框架技术专家 HarmonyOS是一款全新的分布式操作系统,为开发者提供了元能力框架.事件通知.分布式硬件等分布式技术,使能开发 ...

  3. HDC2021技术分论坛:异构组网如何解决共享资源冲突?

    作者:lijie,HarmonyOS软总线领域专家 相信大家对HarmonyOS的"超级终端"比较熟悉了.那么,您知道超级终端场景下的多种设备在不同环境下是如何组成一个网络的吗?这 ...

  4. HDC2021技术分论坛:进程崩溃/应用卡死,故障频频怎么办?

    ​作者:jiwenqiang,DFX技术专家 提到开发一个产品,我们通常首先想到的是要实现什么样的功能,但是除了功能之外,非功能属性也会很大程度上影响一个产品的体验效果,比如不定时出现的应用卡死.崩溃 ...

  5. HDC2021技术分论坛:“积木拼装”,HarmonyOS弹性部署大揭秘!

    作者:peitaiyi,华为终端OS产品交付专家 HarmonyOS是一款面向万物互联时代的.全新的分布式操作系统.在传统的单设备系统能力基础上,HarmonyOS提出了基于同一套系统能力.适配多种终 ...

  6. HDC技术分论坛:HarmonyOS新一代UI框架的全面解读

    作者:yuzhiqiang,UI编程框架首席技术专家 在Harmony 3.0.0开发者预览版中,包含了新一代的声明式UI框架ArkUI 3.0.多语言跨平台编译器ArkCompiler 3.0.跨端 ...

  7. 腾讯技术分享:微信小程序音视频与WebRTC互通的技术思路和实践

    1.概述 本文来自腾讯视频云终端技术总监rexchang(常青)技术分享,内容分别介绍了微信小程序视音视频和WebRTC的技术特征.差异等,并针对两者的技术差异分享和总结了微信小程序视音视频和WebR ...

  8. 腾讯技术分享:微信小程序音视频技术背后的故事

    1.引言 微信小程序自2017年1月9日正式对外公布以来,越来越受到关注和重视,小程序上的各种技术体验也越来越丰富.而音视频作为高速移动网络时代下增长最快的应用形式之一,在微信小程序中也当然不能错过. ...

  9. 音视频通讯QoS技术及其演进

    利用多种算法和策略进行网络传输控制,最大限度满足弱网场景下的音视频用户体验. 良逸|技术作者 01 什么是QoS?音视频通讯QoS是哪一类? QoS(Quality of Service)是服务质量的 ...

  10. 了不起的WebRTC:生态日趋完善,或将实时音视频技术白菜化

    本文原文由声网WebRTC技术专家毛玉杰分享. 1.前言 有人说 2017 年是 WebRTC 的转折之年,2018 年将是 WebRTC 的爆发之年,这并非没有根据.就在去年(2017年),WebR ...

随机推荐

  1. 【Azure Redis 缓存】VM 里的 Redis 能直接迁移到 Azure Cache for Redis ? 需要改动代码吗?

    问题描述 原来部署在VM 里的 Redis 能直接迁移到 Azure Cache for Redis? 需要改动代码吗? 问题解答 以上问题需要从两个方面来解答. 第一:VM中Redis的数据转移到 ...

  2. Jmeter如何分布式执行脚本?

    Jmeter分布式执行原理: JMeter分布式执行时,选择其中一台作为调度机(master),其他机器作为执行机(slave): master会在本地编辑好jmx压测脚本,执行时,master将jm ...

  3. Zabbix“专家坐诊”第198期问答汇总

    问题一 Q:请问一下,自带的思科SNMP交换机模板,怎么不监控down的接口? A1:这种一般在自动发现规则里加个过滤器,过滤出IFSTATUS匹配(1|3)的就能实现只发现up的端口了. A2: 1 ...

  4. BKP备份寄存器&RTC实时时钟

    UNIX时间戳    time.h 三条路,上面主要作为系统时钟,中间的作为RTC时钟,下面的作为看门狗的时钟 与RTC有关的外部晶振(主电源断电不停)一般都i是32.768KHZ   2^15=32 ...

  5. day17--Java常用类05

    Java常用类 5.其他常用类 5.1Math类 java.lang.Math提供了一系列静态方法用于科学计算:其方法的参数和返回值类型一般为double型.如果需要更加强大的数学运算能力,计算高等数 ...

  6. 关于C++ 多态实现技术的深度解析(vfptr,vftable)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  7. 三维模型OBJ格式轻量化压缩处理效率提高的技术方法探讨

    三维模型OBJ格式轻量化压缩处理效率提高的技术方法探讨 要提高三维模型OBJ格式轻量化压缩处理的效率,可以采取以下方法: 1.优化算法选择:选择合适的优化算法对模型进行轻量化处理.不同的优化算法有不同 ...

  8. XSS 从 PDF 中窃取数据

    XSS 从 PDF 中窃取数据 将服务器端 XSS 注入到动态生成的 PDF 中 在 hack the box 的 Book 机器(Scripting Track)上,我遇到了一个 Web 应用程序, ...

  9. 记录--千万别让 console.log 上生产!用 Performance 和 Memory 告诉你为什么

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 很多前端都喜欢用 console.log 调试,先不谈调试效率怎么样,首先 console.log 有个致命的问题:会导致内存泄漏. 为什 ...

  10. 手机,IPAD查看eagle素材库

    把eagle素材库塞进手机里是一种什么样的体验?手机和ipad也能查看eagle素材库,随时随地查询浏览素材. 先看使用截图 实现原理: 在任意电脑,服务器或者nas中安装PicHome系统.在Pic ...