语音测试系统、方法及装置与流程

文档序号:32518332发布日期:2022-12-13 17:38阅读:36来源:国知局
语音测试系统、方法及装置与流程

1.本公开涉及数据处理技术领域,尤其涉及语音技术领域。


背景技术:

2.语音交互是人机交互的一个重要领域。由于交互的便利性,语音交互技术广泛应用于各种产品,例如车载终端、智能手机、智能家电等。语音交互依赖于语音交互功能。当该功能有一些重大改进的时候需要对相关产品进行语音测试,以确定其语音交互功能是否能够满足要求。


技术实现要素:

3.本公开提供了一种用于语音测试的系统、方法及装置。
4.根据本公开的一方面,提供了一种语音测试系统,包括语音测试模组和计算设备,语音测试模组中设置有待测设备采用的第一芯片,其中:
5.语音测试模组中安装有待测设备的语音交互功能,语音测试模组用于将待测音频发送给第一芯片以执行语音交互功能,并记录待测音频的累积发送帧数;响应于语音交互功能产生的预设事件,读取累积发送帧数;基于累积发送帧数确定预设事件的触发时间点;将预设事件的触发时间点发送给计算设备;
6.计算设备,基于触发时间点以及预设事件在待测音频中的标注时间点,确定预设事件的响应延时。
7.根据本公开的另一方面,提供了一种语音测试方法,包括:
8.将待测音频发送给第一芯片以执行待测设备的语音交互功能,并记录待测音频的累积发送帧数;
9.响应于语音交互功能产生的预设事件,读取累积发送帧数,并基于累积发送帧数确定预设事件的触发时间点;
10.将预设事件的触发时间点发送给计算设备,以使计算设备基于触发时间点以及预设事件在待测音频中的标注时间点确定预设事件的响应延时。
11.根据本公开的另一方面,提供了一种语音测试方法,包括:
12.接收预设事件的触发时间点,触发时间点是语音测试模组响应于语音交互功能的预设事件发送的;语音测试模组安装有执行语音交互功能的第一芯片;
13.基于触发时间点以及预设事件在待测音频中的标注时间点确定预设事件的响应延时。
14.根据本公开的另一方面,提供了一种语音测试装置,包括:
15.第一确定模块,用于将待测音频发送给第一芯片以执行待测设备的语音交互功能,并记录待测音频的累积发送帧数;
16.第二确定模块,用于响应于语音交互功能产生的预设事件,读取累积发送帧数,并基于累积发送帧数确定预设事件的触发时间点;
17.发送模块,用于将预设事件的触发时间点发送给计算设备,以使计算设备基于触发时间点以及预设事件在待测音频中的标注时间点确定预设事件的响应延时。
18.根据本公开的另一方面,提供了一种语音测试装置,包括:
19.时间点接收模块,用于接收预设事件的触发时间点,触发时间点是语音测试模组响应于语音交互功能的预设事件发送的;语音测试模组安装有执行语音交互功能的第一芯片;
20.延时确定模块,用于基于触发时间点以及预设事件在待测音频中的标注时间点确定预设事件的响应延时。
21.根据本公开的另一方面,提供了一种语音测试模组,包括:
22.第一芯片;
23.至少一个处理器;以及
24.与至少一个处理器通信连接的存储器;其中,
25.存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开的语音测试方法。
26.根据本公开的另一方面,提供了一种电子设备,包括:
27.至少一个处理器;以及
28.与该至少一个处理器通信连接的存储器;其中,
29.该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本公开的语音测试方法。
30.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,该计算机指令用于使该计算机执行根据本公开中任一实施例的语音测试方法。
31.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现根据本公开中任一实施例的语音测试方法。
32.本公开中,语音测试模组能够自动将待测音频灌入第一芯片,并基于预设事件自动获取累积发送帧数,进而自动确定预设事件的响应延时。从灌入音频到测试结果的全流程自动化,由此提高了测试效率。语音测试模组仅需安装拆卸待测设备的芯片并集成相应语音交互功能即可完成自动化测试,该方案具有可扩展性。
33.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
34.附图用于更好地理解本方案,不构成对本公开的限定。其中:
35.图1是根据本公开一实施例的语音测试系统结构示意图;
36.图2是根据本公开另一实施例的基于语音测试系统的语音测试方法的流程示意图;
37.图3是根据本公开另一实施例的语音测试系统的结构示意图;
38.图4是根据本公开另一实施例的语音测试系统进行唤醒测试的示意图;
39.图5是根据本公开另一实施例的语音测试系统进行首包响应时间测试的示意图;
40.图6是根据本公开另一实施例的语音测试系统进行硬延迟测试的示意图;
41.图7是根据本公开另一实施例的语音测试系统的结构示意图;
42.图8根据本公开另一实施例的基于语音测试系统的语音测试方法的流程示意图;
43.图9是根据本公开一实施例的语音测试装置的结构示意图;
44.图10是根据本公开另一实施例的语音测试装置的结构示意图;
45.图11是用来实现本公开实施例的语音测试方法的电子设备的框图。
具体实施方式
46.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
47.本公开中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
48.相关技术中对设备的语音交互功能进行测试时,往往需要有对应的待测设备。以智能音箱为例,对a款音箱测试时,需要运输a音箱到专门的测试场景中。对b款音箱进行测试时,也需要运输b款音箱到专门的测试场景中。且该测试场景需要针对语音交互功能进行搭建。由此,语音测试比较繁琐。
49.有鉴于此,根据本公开第一方面实施例,针对需要测试语音交互功能的待测设备,提供一种语音测试系统100。如图1所示,该语音测试系统100包括语音测试模组101和计算设备102。其中,语音测试模组101中设置有待测设备采用的第一芯片1011,并安装有该待测设备的语音交互功能。由此,语音测试模组101能够基于待测设备的第一芯片1011执行语音交互功能,以实现对待测设备的语音测试。
50.如图2所示,为基于该语音测试系统100的语音测试方法的流程示意图,包括:
51.s201,语音测试模组101将待测音频发送给第一芯片1011以执行待测设备的语音交互功能,并记录待测音频的累积发送帧数。
52.s202,语音测试模组101响应于语音交互功能产生的预设事件,读取累积发送帧数。
53.一般情况下,为了避免语音交互设备“乱插话”。语音交互设备需要先唤醒然后才能与之正常对话。本公开实施例中的语音测试包括唤醒测试和语音识别测试。所谓唤醒测试可理解为测试语音交互设备是否能够及时正确的唤醒。所谓语音识别测试可理解为测试语音交互设备是否能够在唤醒之后正确对话。
54.一般情况下,唤醒测试需要待测语音中携带有唤醒词。检测到唤醒词的情况下,待测设备会执行唤醒操作。因此,在唤醒测试场景中,预设事件可以为唤醒操作,也即,检测到唤醒操作即可确定产生唤醒测试的预设事件。
55.类似的,语音识别测试中,待测音频将由待测设备发送给云端进行解析识别,然后返回识别结果。对应本公开实施例,是由语音测试模组101将待测音频发送给云端,然后接
收识别结果。因此,语音识别测试场景中,可基于语音识别结果的返回情况确定预设事件。如,语音识别结果包括多个响应包,语音识别结果将逐包返回给第一芯片1011。在需要确定首包响应时间时(即确定从开始说话到开始接收到识别结果的时间延迟),可将接收到首包响应包作为预设事件。在需要确定硬延迟时(即确定从结束说话到识别完成的时间延迟),将接收到最后一包响应包作为预设事件。
56.需要说明的是,预设事件可基于测试需要确定,本公开实施例对此不作限定。
57.s203,语音测试模组101基于累积发送帧数确定预设事件的触发时间点;将预设事件的触发时间点发送给计算设备102。
58.s204,计算设备102基于触发时间点以及预设事件在待测音频中的标注时间点,确定预设事件的响应延时。
59.本公开实施例中,语音测试模组101集成待测设备的第一芯片1011,并可以基于该第一芯片1011执行语音交互功能以实现对待测设备的语音测试。语音测试模组101能够自动将待测音频灌入第一芯片1011,并基于预设事件自动获取累积发送帧数,确定预设事件的触发时间点,进而由计算设备102自动确定预设事件的响应延时。由此,基于计算设备102和语音测试模组101,实现了从灌入音频到测试结果的全流程自动化,由此提高了测试效率。此外,本公开实施例中,语音测试模组101仅需安装拆卸相应待测设备的芯片并集成相应待测设备的语音交互功能即可完成自动化测试,因此基于该系统的语音测试方法也更加具有可扩展性。
60.相关技术中的语音测试需要人工喊麦,以前述a音箱为例,测试时需要人工喊出待测音频,由a音箱的麦克风采集后传输给a音箱的芯片以执行a音箱的语音交互功能。而这种方式,不仅耗费人力资源,且在出现问题需要复测时,难以保证音频同源。例如,复测时喊麦人员和复测前喊麦人员不同,导致音频不同源。即使同一喊麦人员,在不同时间段的状态不同,发出的音频也具有差异,亦难以保证严格同源。
61.为此,本公开实施例中为了保证同一待测设备的音频同源,采用预先录制好的音频作为测试集对语音测试模组101进行灌测。
62.在一些可能的实施方式中,如图3所示,测试集中的音频可以由采样芯片104进行采集。采样芯片104可采用多路麦克风采集音频。针对不同的待测设备,只需从采样芯片104采集的音频中提取待测设备所需的音频即可。例如,采样芯片104采集了8路麦克风数据和参考数据。针对需要两路麦克风数据的a音箱,从采样芯片104采集的音频数据中提取两路麦克风数据和参考数据即可。对于需要三路麦克风数据的b音箱,则从采样芯片104采集的音频数据中提取三路麦克风数据和参考数据即可。
63.当然,若不同的待测设备使用的麦克风不同,则可以基于采样芯片104和相应的麦克风采集音频数据即可。在不同麦克风之间的性能差异不大,或对测试结果影响甚微时,则不需要基于不同麦克风重复采集音频。实施时,可以根据实际情况作出合理选择。
64.为了实现灌测,在一些可能的实施方式中,如图3所示,语音测试模组101还包括存储器1012和第二芯片1013。其中,第二芯片1013相对于第一芯片1011为低功耗芯片,可主要集成测试程序,该测试程序中集成对第一芯片1011的控制功能,该控制功能主要控制第一芯片1011执行语音交互功能。如第二芯片1013集成语音交互功能的sdk(software development kit,软件开发工具包)。那么当不同待测设备的语音交互功能不同时,只需更
新测试程序中的sdk即可实现对第一芯片1011的驱动。若待测设备采用的芯片不同,那么将待测设备的芯片可拆卸的安装到语音测试模组101即可。
65.为了实现灌测,如图3所示,语音测试模组101中的存储器1012,用于存储测试集;语音测试模组101的第二芯片1013,用于从测试集中读取待测音频,将待测音频发送给第一芯片1011;第一芯片1011,用于记录待测音频的累积发送帧数,并基于语音交互功能产生预设事件;语音测试模组101中的第二芯片1013,还用于响应于预设事件,从第一芯片1011中读取待测音频的累积发送帧数,并基于累积发送帧数确定预设事件的触发时间点;将预设事件的触发时间点发送给计算设备102。
66.本公开实施例中,基于预先录制的测试集,能够保证无论何时进行测试,测试音频都是同源的。而且音频录制好之后,灌输给第一芯片1011的音频不会夹杂该音频之外的噪声,尤其不会受到测试场地的噪声影响,对测试环境没有严格要求,由此保证测试结果的准确性。此外,相较于由第一芯片1011去读取测试集,采用第二芯片1013控制第二芯片1013执行测试,能够减少对第一芯片1011的功能改造,便于执行测试。
67.在一些可能的实施方式中,语音测试模组101得到累积发送帧数后,基于累积发送帧数和单帧音频的播放时长,确定预设事件的触发时间点。例如,单帧音频的播放时长为10ms,累积发送帧数为5帧,则预设事件的触发时间点为50ms。也即,预设事件的触发时间点是相对测试音频自身的时间轴而言的,该触发时间点是从待测音频的起播时间点到发生该预设事件时的时长。
68.本公开实施例中,基于预设事件的累积发送帧数能够快速、准确的确定预设事件的触发时间点。基于累积发送帧数,准确无误的确定预设事件的触发时间点,不会产出错误的触发时间数据,不需要清洗错误数据,由此提高测试效率。
69.为便于理解,下面从不同的测试情况出发,对该累积发送帧数进行详细说明:
70.情况1、在测试语音唤醒能力的情况下,语音测试模组101监听第一芯片1011基于待测音频触发的唤醒信号;在监听到唤醒信号的情况下,获取待测音频的累积发送帧数;
71.如图4所示,待测音频通过第一芯片1011将待测音频一帧帧灌输给第二芯片1013,第二芯片1013实时累积待测音频的累积发送帧数,并将待测音频的音频数据实时压缩后发送给第一芯片1011。第一芯片1011将待测音频的压缩包实时发送给云端进行检测。云端实时检测接收到的音频数据,并将识别结果实时返回给第二芯片1013。第二芯片1013将识别结果实时发送给第一芯片1011,第一芯片1011确定识别结果中包含唤醒词时,确定需要执行唤醒操作。由此,第一芯片1011发送中断信号唤醒语音交互功能。在第二芯片1013监测到该中断信号时,即确定产生预设事件。基于该预设事件,第二芯片1013从第一芯片1011中读取累积发送帧数,基于累积发送帧数确定预设事件的触发时间点,发送给计算设备102。
72.计算设备102基于该累积发送帧数确定唤醒时间点1,然后和待测音频标注的唤醒时间点2比对,得到唤醒延时(即唤醒响应时间)。即确定唤醒时间点1和唤醒时间点2之间的时间差作为唤醒延时。
73.情况2、在测试语音识别能力的情况下,监听第一芯片1011对待测音频的语音识别结果的接收情况;在接收到语音识别结果的首个响应包的情况下,获取待测音频的累积发送帧数。
74.如图5所示,第二芯片1013将经由第一芯片1011压缩的待测音频实时传输给云端,
云端对待测音频解析识别后,逐包返回响应识别结果给第二芯片1013。第二芯片1013在接收到第一个响应包的情况下,确定产生预设事件,基于第一芯片1011读取累积发送帧数,基于累积发送帧数确定预设事件的触发时间点。
75.当然,在另一些实施例中,第二芯片1013可以将云端返回的数据包发送给第一芯片1011,由第一芯片1011对数据包进行解析确定是否为响应包。若为响应包,则第一芯片1011产生接收到首个响应包的事件给第二芯片1013,由此第二芯片1013确定监测到预设事件,进而基于第一芯片1011读取累积发送帧数然后,基于累积发送帧数确定预设事件的触发时间点,并发送给计算设备102。
76.计算设备102,将预设事件的触发时间点确和待测音频中标注的语音起点进行比对,得到首包响应时间。其中,音频起点即待测音频中开始说话的时间点。
77.情况3、在接收到语音识别结果的最后一个响应包的情况下,获取待测音频的累积发送帧数。
78.类似的,如图6所示,云端将识别结果逐包发送给语音模式模组的第二芯片1013。之后可以如图5所示的方法一样,由第二芯片1013确定最后一个响应包。在确定得到最后一个响应包的情况下,第一芯片1011从第二芯片1013读取累积发送帧数,基于累积发送帧数确定预设事件的触发时间点,将其发送给计算设备102。
79.当然,在其他实施例中,也可以由第一芯片1011确定接收到最后一个响应包。
80.计算设备102基于该累积发送帧数,确定最后一个响应包的接收时间,然后和待测音频中标注的语音尾点计算时间差,作为硬延迟。其中,语音尾点,即在待测音频中结束说话的时间点。
81.本公开实施例中,针对唤醒、语音识别能力,依据不同能力具有不同的触发事件,在准确的时机获取累积发送帧数,进而针对每种预设时间均能得到准确的触发时间点,由此提高测试的准确性。
82.此外,唤醒能力测试,除了测试唤醒响应时间之外,还可以由计算设备102统计唤醒精度和误唤醒情况。例如,基于唤醒响应时间确定比标注的唤醒时间点提前唤醒时,则本次唤醒为误唤醒,基于误唤醒,可以统计多次唤醒测试中的误唤醒率。唤醒精度可理解正确唤醒率,可表示为在多次唤醒测试中准确唤醒的次数与总唤醒测试次数的比值。
83.类似的,语音识别能力测试,除了首包响应时间和硬延迟之外,本公开实施例中还具有其他的测试指标包括:
84.字准,即语音识别结果中识别出的每个字符与待测音频中每个字符对比,得到字符识别的准确率;
85.句准,针对每个句子,如果产生识别错误,包括多字符、少字符、字符错误则该句子均确定为未能正确识别的句子。可以统计未能正确识别的句子和所有句子的比值作为句准,作为一种统计指标来衡量待测设备的语音交互功能。
86.当然,需要说明的是,其他语音测试指标也适用于本公开实施例,对此不作限定。
87.为了便于实现测试的管理功能,本公开实施例中,还提供以下方案。
88.在一些可能的实施例中,技术设备可支持测试人员灵活控制语音测试模组101的测试任务。例如计算设备102可基于测试人员的输入操作,生成音频测试指令,音频测试指令中包括待测音频的音频标识。之后,由计算设备102将音频测试指令发送给语音测试模组
101;语音测试模组101,则基于音频测试指令中的音频标识从测试集中读取待测音频。而后,语音测试模组101将待测音频灌输给第一芯片1011执行后续的语音测试。
89.本公开实施例基于音频测试指令实现对待测音频的准确定义,以便于对语音测试模组101灵活的分配测试任务,使得语音测试模组101能够基于测试任务准确的完成测试。
90.为进一步便于管理语音测试模组101,本公开实施例中,计算设备102还可以维护语音测试模组101的状态。如:
91.在语音测试模组101没有语音测试任务的情况下,将语音测试模组101标记为空闲态;
92.在语音测试模组101执行语音测试任务的情况下,将语音测试模组101标记为执行中;
93.在语音测试模组101出现故障的情况下,将语音测试模组101标记为不可用。
94.由此,对语音测试模组101进行不同状态的定义,可便于了解语音测试模组101的工作情况,便于为语音测试模组101分配相应的任务。
95.例如,如图7所示,同一计算设备102可同时对多个语音测试模组101进行语音测试。连接的语音测试模组101可以相同也可以不同,均适用于本公开实施例。计算设备102中维护有各个语音测试模组101的状态,以便于测试人员了解哪些语音测试模组101有故障,哪些语音模组正在执行测试任务。基于空闲态能够了解可对哪些语音测试模组101分配任务。实施时,计算设备102和各语音测试模组101之间通过串口通信。测试人员可通过该串口向图7中的语音测试模组1011分配语音测试任务。如通过该串口发送语音测试指令给语音测试模组1011。该语音测试指令中可包括一条待测音频的音频标识,也可包括多条待测音频的音频标识。语音测试模组1011基于该语言测试指令执行测试任务。若包含多条待测音频时,语音测试模组1011对多条待测音频逐一进行测试。每条待测音频的相应的语音识别结果和累积发送帧数均,基于累积发送帧数确定预设事件的触发时间点;通过串口发送给计算设备102。由计算设备102对测试指标进行统计分析。
96.测试人员不仅可以对语音测试模组1011分配任务,还可以对其他任一处于空闲态的语音测试模组101分配任务,以此同一计算设备102可控制多个语音测试模型进行测试,且只需一个测试人员即可完成多语音测试模组101的测试,由此可以减少人力成本,提高测试效率。
97.本公开实施例中,通过维护语音测试模组101的状态,能够便于理解语音测试模组101的工作情况,便于为管理语音测试模组101,提高测试效率。
98.除此之外,本公开实施例中还允许按需修改语音测试模组101的状态。可实施为由计算设备102响应于用户操作,修改语音测试模组101的状态。语音测试模组101基于状态变化,执行相应的操作。例如,测试人员发现为某语音测试模组101分配任务有误时,可通过计算设备102手动修改其状态。如修改为不可用,则语音测试模组101将中止测试。而后,测试人员将语音测试模组101修改为空闲态,则可以重新为该语音测试模组101分配测试任务。
99.再例如,语音测试模组101不可用时,说明测试出现问题。在该问题解决后,测试人员可将语音测试模组101更改为空闲态,由此语音测试模组101可重新进行语音测试任务。
100.综上,本公开实施例中支持灵活的更新语音测试模组101的状态,可提高测试管理的效率。
101.此外,本公开实施例中还可以提供告警能力,以便于测试人员不在测试现场也能了解到关键信息。例如,在语音测试模组101出现故障的情况下,计算设备102执行告警操作。该故障例如语音测试模组101中硬件出现故障、存储器1012的测试集中无对应的待测音频、待测音频的音频文件错误、长时间未唤醒等。
102.针对语音测试模组101的故障,可以部分故障由语音测试模组101上报给计算设备102,部分故障由计算设备102检测得到。例如,无法发送待测音频到云端时,语音测试模组101可上报给计算设备102。在例如,发送待测音频后,语音测试模组101将会输出对待测音频的语音识别结果给计算设备102,计算设备102在长时间得不到语音识别结果,或语言识别结果中不包含唤醒词时,计算设备102确定语音识别模组存在故障。无论何种方式得知语音识别模组存在故障,计算设备102均可以进行告警操作。例如,可通过即时通讯工具发送告警信息给测试人员,也可以通过邮件发送给测试人员,还可以通过计算设备102内置的音频播放器发出声音进行告警。具体的告警方式本公开实施例不进行限定。
103.综上,本公开实施例中支持出现故障时进行告警操作,以便于及时了解到测试任务出现问题,可以保障系统有条理的运行。
104.为便于理解整体的测试流程,下面结合图8对此进行说明,如图8所示,包括:
105.s801,采样芯片104采集测试集,并将测试集写入语音测试模组101的sd卡(secure digital memory card/sd card,安全数码卡)。
106.其中,测试集中包括不同测试场景的音频数据。例如唤醒测试、语音识别测试。其中,不同测试场景下,还可以进一步细分子测试场景。例如针对不同距离的测试,例如距离待测设备1米、3米、5米情况下进行唤醒的测试,进行语音识别的测试。
107.除了不同距离的子测试场景,还可以进一步包含内燥场景测试和外燥场景测试。内燥和外燥的区别在于,噪声源来自于内部还是外部环境。例如唤醒测试时,用户说话的同时具有环境噪声,而该噪声来自己待测设备之外,则该种情况为外燥。用户说话的同时,待测设备播放音乐,则采集的音频中会包含待测设备自己的音频内容,则该种情况为内燥。
108.s802,语音测试模组101响应于测试程序的烧写指示,写入测试程序。
109.测试程序中包括不同测试场景的测试用例,还集成语音交互功能的sdk。
110.s803,计算设备102响应于用户操作,生成音频测试指令发送给语音测试模组101。
111.s804,语音测试模组101基于音频测试指令,从sd卡中读取待测音频,发送给语音测试模组101的第一芯片1011,并记录累积发送帧数。
112.s805,语音测试模组101基于语音交互功能产生的预设事件,读取累积发送帧数,确定累积发送帧数和单帧发送时长的乘积,作为预设事件的触发时间点。
113.需要说明的是,在确定待测音频测试完成的情况下,计算设备102将会对第一芯片1011记录的累积发送帧数进行复位。也即,每条待测音频测试结束后,都需要重置该累积发送帧数,以便于适用下一待测音频的测试。
114.此外,本公开实施例中语音测试模组101的第一芯片1011和第二芯片1013之间可基于spi(serial peripheral interface,串行外设接口)实现通信。
115.s806,语音测试模组101将预设事件的触发时间点发送给计算设备102。
116.s807,计算设备102基于预设事件的触发时间点和预设事件在待测音频中的标注时间点,确定响应延时。
117.其中,针对唤醒场景和语音识别场景如果统计测试指标已在前文说明,这里不再赘述。
118.s808,计算设备102在确定语音测试模组101出现故障的情况下,发送告警信息给终端设备。
119.综上,本公开实施例中,基于语音测试模组101和计算设备102,能够自动的进行语音测试,获得多项语音测试指标,实现语音测试的全流程化管理。
120.此外,为了保证语音测试能够正常进行,本公开实施例中,每次测试开始前,或有新的待测设备或新的语音交互功能需要测试时,可以先进行测试校验,在测试校验通过的情况下,再完成所有测试。
121.测试校验包括:
122.1、数据传输一致性校验,即验证第二芯片传输给第一芯片1011的数据是否一致。实施时,可打印第一芯片1011和第二芯片的每帧首包数据进行对比,若一致说明数据传输一致性校验通过。经实验证明本公开实施例中数据完全一致,长时间灌测也不会出现丢帧的情况,故此,本公开实施例提供的语音测试方法稳定可靠。
123.2、测试结果的准确性校验,即检测采用本公开实施例提供的方法和标准测试结果进行比对,经比对发现本方法错误率极低,是一种准确可行的方法。
124.基于相同的技术构思,本公开实施例还提供一种语音测试方法,应用于语音测试模组101,语音测试模组101的执行方法已在前文说明,如执行图2中、图8中语音测试模组101的相关方法,这里不再赘述。
125.类似的,基于相同的技术构思,本公开实施例还提供一种语音测试方法,应用于前文的计算设备102,计算设备102的执行方法已在前文说明,如执行图2中、图8中计算设备102的相关方法,这里不再赘述。
126.基于相同的技术构思,本公开实施例还提供一种语音测试装置900,如图9所示,为该装置的结构示意图,包括:
127.第一确定模块901,用于将待测音频发送给第一芯片以执行待测设备的语音交互功能,并记录待测音频的累积发送帧数;
128.第二确定模块902,用于响应于语音交互功能产生的预设事件,读取累积发送帧数,并基于累积发送帧数确定预设事件的触发时间点;
129.发送模块903,用于将预设事件的触发时间点发送给计算设备,以使计算设备基于触发时间点以及预设事件在待测音频中的标注时间点确定预设事件的响应延时。
130.在一些实施例中,第二确定模块,具体用于:
131.基于以下至少一种方法获取累积发送帧数:
132.方法1,在测试语音唤醒能力的情况下,监听第一芯片基于待测音频触发的唤醒信号;在监听到唤醒信号的情况下,获取待测音频的累积发送帧数;
133.方法2,在测试语音识别能力的情况下,监听对待测音频的语音识别结果的接收情况;在接收到语音识别结果的首个响应包的情况下,获取待测音频的累积发送帧数;
134.方法3,在接收到语音识别结果的最后一个响应包的情况下,获取待测音频的累积发送帧数。
135.在一些实施例中,第二确定模块,具体用于:基于累积发送帧数和单帧音频的播放
时长,确定预设事件的触发时间点。
136.在一些实施例中,该装置还包括:
137.音频接收模块,用于确定模块将待测音频发送给第一芯片之前,接收音频测试指令,音频测试指令中包括待测音频的音频标识;
138.第一确定模块,还用于基于音频标识从测试集中读取待测音频。
139.基于相同的技术构思,本公开实施例还提供一种语音测试装置1000,如图10所示,包括:
140.时间点接收模块1001,用于接收预设事件的触发时间点,触发时间点是语音测试模组响应于语音交互功能的预设事件发送的;语音测试模组安装有执行语音交互功能的第一芯片;
141.延时确定模块1002,用于基于触发时间点以及预设事件在待测音频中的标注时间点确定预设事件的响应延时。
142.在一些实施例中,还包括:
143.指令发送模块,用于将音频测试指令发送给语音测试模组;音频测试指令中包括待测音频的音频标识。
144.在一些实施例中,还包括状态管理模块,用于:
145.在语音测试模组没有语音测试任务的情况下,将语音测试模组标记为空闲态;
146.在语音测试模组执行语音测试任务的情况下,将语音测试模组标记为执行中;
147.在语音测试模组出现故障的情况下,将语音测试模组标记为不可用。
148.在一些实施例中,状态管理模块,还用于响应于用户操作,修改语音测试模组的状态。
149.在一些实施例中,还包括:
150.告警模块,用于在语音测试模组出现故障的情况下,执行告警操作。
151.本公开实施例的装置的各模块、子模块的具体功能和示例的描述,可以参见上述方法实施例中对应步骤的相关描述,在此不再赘述。
152.本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
153.根据本公开的实施例,本公开还提供了一种语音测试模组,电子设备、一种可读存储介质和一种计算机程序产品。
154.语音测试模组包括:
155.第一芯片;
156.至少一个处理器;以及
157.与至少一个处理器通信连接的存储器;其中,
158.存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够前述语音测试模组执行的任一项方法。
159.图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计
算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
160.如图11所示,设备1100包括计算单元1101,其可以根据存储在只读存储器(rom)1102中的计算机程序或者从存储单元1108加载到随机访问存储器(ram)1103中的计算机程序,来执行各种适当的动作和处理。在ram 1103中,还可存储设备1100操作所需的各种程序和数据。计算单元1101、rom 1102以及ram 1103通过总线1104彼此相连。输入/输出(i/o)接口1105也连接至总线1104。
161.设备1100中的多个部件连接至i/o接口1105,包括:输入单元1106,例如键盘、鼠标等;输出单元1107,例如各种类型的显示器、扬声器等;存储单元1108,例如磁盘、光盘等;以及通信单元1109,例如网卡、调制解调器、无线通信收发机等。通信单元1109允许设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
162.计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元1101执行上文所描述的各个方法和处理,例如语音测试方法。例如,在一些实施例中,语音测试方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1108。在一些实施例中,计算机程序的部分或者全部可以经由rom1102和/或通信单元1109而被载入和/或安装到设备1100上。当计算机程序加载到ram 1103并由计算单元1101执行时,可以执行上文描述的语音测试方法的一个或多个步骤。备选地,在其他实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法语音测试方法。
163.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
164.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
165.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计
算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
166.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。
167.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
168.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。如本公开实施例中的云端可实现为服务器。
169.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
170.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1