本发明涉及语音检测技术领域,具体涉及一种自动检测上下行语音的测试方法及系统。
背景技术:
在测试上下行语音是否正常时,都要有mo/mt,也就是发起端/接收端,可能设备不同,可以是模块,可以是手机,可以是固话等等。但是一般情况下,需要主叫端和被叫端一起配合测试,主叫端发出的语音,要在被叫端去监听是否正常。
上述的测试方法存在一定的问题,首先其需手动测试,自动化程度较低,其次,大量的手动测试会占用我们很多时间,会使研发测试工作的进程变得缓慢,为此,提出一种自动检测上下行语音的测试方法及系统。
技术实现要素:
本发明所要解决的技术问题在于:如何提高音测试工作的效率,提供了一种自动检测上下行语音的测试方法。
本发明是通过以下技术方案解决上述技术问题的,本发明包括以下步骤:
s1:短接输入与输出引脚
在进行测试前,将被叫端上的mic与spk引脚短接,这样上下行语音便会形成一个回路;
s2:关闭回声抑制算法
s1中的引脚短接成功后,通过at指令关闭被叫端的回声抑制算法,关闭回声抑制算法后,主叫端的发送的dtmf音频信号才会被返回,如果不关闭回声抑制算法,在主叫端将听不到由被叫端返回的声音;
s3:进行语音通话
主叫端拨打被叫端,进行语音通话;
s4:进行语音测试
当主叫端发送的语音为带有用户结果响应码检测的dtmf音频信号,则在主叫端检测到用户结果响应码上报且主叫端也能听到其向被叫端发送的声音,通过检查用户结果响应码上报来验证上下行语音正常;否则只能通过主叫端将听到其向被叫端发送的声音来验证上下行语音正常。
优选的,所述步骤s1中,短接输入与输出引脚是用于使上下行语音形成一个回路。
优选的,所述步骤s2中,关闭回声抑制算法包括以下步骤:
s21:在被叫端设置at指令at+qaudmod=3;
s22:执行s21中的at指令,即可关闭被叫端的回声抑制算法。
优选的,所述步骤s3中,主叫端与被叫端进行语音通话时,由主叫端发送的音频信号到达被叫端后,由于被叫端上的mic与spk引脚短接,这样音频信号便会通过被叫端上的spk引脚到达mic引脚,然后再由被叫端回到主叫端,在主叫端便可以听到返回的声音。
优选的,所述主叫端为待检测模块,用于接收由被叫端还回的dtmf音频信号与用户结果响应码,若用户结果响应码正常则上下行语音也正常。
优选的,所述主叫端具有进行dtmf音频信号检测的功能,所述进行dtmf音频信号检测的方法包括以下步骤:
s41:dtmf音频信号返回至主叫端时,设置at指令at+qtonedet=1,该指令用于开启主叫模块的dtmf音频信号检测功能;
s42:执行步骤a中的at指令,主叫端的dtmf音频信号检测功能处于开启状态,即对dtmf音频信号进行检测;
s43:检测后即可在主叫端得到用户结果响应码,得到用户结果响应码即可判断被叫端的音频正常(用户结果响应码正常音频就会正常,从而验证上下行语音正常)。
一种自动检测上下行语音的测试系统,包括:
短接模块,用于将被叫端上的mic与spk引脚短接;
算法关闭模块,用于通过at指令关闭被叫端的回声抑制算法;
语音通话模块,用于连接主叫端与被叫端并进行语音通话;
音频测试模块,用于对主叫端的发送的语音进行判断,并用于检测用户结果响应码;
所述短接模块、算法关闭模块、语音通话模块均与音频测试模块电连接。
本发明相比现有技术具有以下优点:该自动检测上下行语音的测试方法,由于将被叫端音频模块上的mic与spk引脚短接,这样上下行语音便形成一个回路,再将被叫端的回声抑制算法关闭,这样便可以自动检测上下行语音,不需手动测试,使测试过程的自动化程度得到有效地提高,同时也帮助测试人员大量的手动测试中解放出来,其次,自动化测试过程会节省很多时间,会使研发测试工作的进程变得更加高效,值得被推广使用。
附图说明
图1是本发明音频测试工作的流程示意图;
图2是本发明的dtmf音频信号的传输过程示意框图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例一
如图1所示,本实施例提供一种技术方案:一种自动检测上下行语音的测试方法,包括以下步骤:
s1:短接输入与输出引脚
在进行测试前,将被叫端上的mic与spk引脚短接,这样上下行语音便会形成一个回路;
s2:关闭回声抑制算法
s1中的引脚短接成功后,通过at指令关闭被叫端的回声抑制算法,关闭回声抑制算法后,主叫端的发送的dtmf音频信号才会被返回,如果不关闭回声抑制算法,在主叫端将听不到由被叫端返回的声音;
s3:进行语音通话
主叫端拨打被叫端,进行语音通话;
s4:进行语音测试
主叫端发送的语音为带有用户结果响应码检测的dtmf音频信号,在主叫端检测到用户结果响应码上报且主叫端也能听到其向被叫端发送的声音,通过检查用户结果响应码上报来验证上下行语音正常。
在所述步骤s2中,关闭回声抑制算法包括以下步骤:
s21:在被叫端设置at指令at+qaudmod=3;
s22:执行s21中的at指令,即可关闭被叫端的回声抑制算法。
在所述步骤s3中,主叫端与被叫端进行语音通话时,由主叫端发送的音频信号到达被叫端后,由于被叫端上的mic与spk引脚短接,这样音频信号便会通过被叫端上的spk引脚到达mic引脚,然后再由被叫端回到主叫端,在主叫端便可以听到返回的声音。
在本实施例中,所述主叫端为主叫模块(ec20-a),所述被叫端为被检测模块(ec20-b)。
主叫模块具有进行dtmf音频信号检测的功能,进行dtmf音频信号检测的方法包括以下步骤:
s41:dtmf音频信号返回至主叫模块时,设置at指令at+qtonedet=1;
s42:执行步骤a中的at指令,主叫模块的dtmf音频信号检测功能处于开启状态,即对dtmf音频信号进行检测;
s43:检测后即可在主叫模块得到用户结果响应码,得到用户结果响应码即可判断待检测模块的音频正常。
用户结果响应码即urc;
实际上证明还回是有效的,还是检测主叫端有延迟还回的声音。dtmf音频只会在被叫端有声音,且只在被叫端有urc检测上报,因此模拟近端(被短接后的被叫端)发送给主叫端的有还回的urc以及还回的声音,理论上,urc正常音频就会正常,来验证音频上下行正常,这其实也是一种检测的方式。此外也可以通过脚本来实现检测urc上报用于验证长期压力中的设备音频正常。
通过脚本实现检测urc上报的过程包括以下步骤:
s501:主叫模块与被测试模块分别运行拨号端脚本与接收端脚本;
s502:主叫模块循环切换网络制式,在非gsm网络状态下,主叫模块拨打被测试模块,被测试模块接通,2s后主叫模块向被测试模块以at+vts的指令形式发送dtmf音;在gsm网络状态下,2s后主叫模块向被测试模块以at+qpsnd的指令形式发送音频文件;
s503:进行语音测试
主叫模块检测到正确的dtmf音的urc后,被测试模块挂断通话,否则停止脚本保留现场。
本实施例还做了如下验证,包括以下步骤:
s601:短接输入与输出引脚
在进行测试前,将被叫端上的mic与spk引脚短接,这样上下行语音便会形成一个回路;
s602:进行语音通话
主叫端拨打被叫端,进行语音通话;
s603:进行语音测试
无论主叫端发送的语音为带有用户结果响应码检测的dtmf音频信号还是普通的音频信号,在主叫端只能听到杂音,因此在未关闭回声抑制算法的情况下是无法对上下行语音进行验证工作的。
本实施例还提供了一种自动检测上下行语音的测试系统,包括:
短接模块,用于将待检测模块上的mic与spk引脚短接;
算法关闭模块,用于通过at指令关闭待检测模块的回声抑制算法;
语音通话模块,用于连接主叫模块与待检测模块并进行语音通话;
音频测试模块,用于对主叫模块的发送的语音进行判断,并用于检测用户结果响应码;
短接模块、算法关闭模块、语音通话模块均与音频测试模块电连接。
实施例二
如图1所示,本实施例提供一种技术方案:一种自动检测上下行语音的测试方法,包括以下步骤:
s1:短接输入与输出引脚
在进行测试前,将被叫端上的mic与spk引脚短接,这样上下行语音便会形成一个回路;
s2:关闭回声抑制算法
s1中的引脚短接成功后,通过at指令关闭被叫端的回声抑制算法,关闭回声抑制算法后,主叫端的发送的dtmf音频信号才会被返回,如果不关闭回声抑制算法,在主叫端将听不到由被叫端返回的声音;
s3:进行语音通话
主叫端拨打被叫端,进行语音通话;
s4:进行语音测试
主叫端发送的语音为普通的音频信号,在主叫端可以听到其向被叫端发送的声音,从而验证上下行语音正常。
在所述步骤s2中,关闭回声抑制算法包括以下步骤:
s21:在被叫端设置at指令at+qaudmod=3;
s22:执行s21中的at指令,即可关闭被叫端的回声抑制算法。
在所述步骤s3中,主叫端与被叫端进行语音通话时,由主叫端发送的音频信号到达被叫端后,由于被叫端上的mic与spk引脚短接,这样音频信号便会通过被叫端上的spk引脚到达mic引脚,然后再由被叫端回到主叫端,在主叫端便可以听到返回的声音。
在本实施例中,所述主叫端为主叫模块(ec20-a),所述被叫端为被检测模块(ec20-b)。
本实施例还提供了一种自动检测上下行语音的测试系统,包括:
短接模块,用于将待检测模块上的mic与spk引脚短接;
算法关闭模块,用于通过at指令关闭待检测模块的回声抑制算法;
语音通话模块,用于连接主叫模块与待检测模块并进行语音通话;
音频测试模块,用于对主叫模块的发送的语音进行判断,并用于检测用户结果响应码;
短接模块、算法关闭模块、语音通话模块均与音频测试模块电连接。
需要说明的是,由于从被测试模块还回的声音,是和回音一个性质,会被回音抑制算法完全消除掉,这样我们便没有办法在主叫模块上检测dtmf音频信号,主叫模块听到的就是一些杂音,此时在被测试模块上执行命令at+qaudmod=3后可以解决这个问题。
回声抑制算法是较早的一种回声控制算法。是一种基于声回波抑制的非线性的回声消除。它通过简单的比较器将准备由扬声器播放的声音与当前话筒拾取的声音的电平进行比较,如果前者高于某个阈值,那么就允许传至扬声器,而且话筒被关闭,以阻止它拾取扬声器播放的声音而引起远端回声。如果话筒拾取的声音电平高于某个阈值,扬声器被禁止,以达到消除回声的目的。
综上所述,上述两组实施例中的自动检测上下行语音的测试方法,由于将被叫端音频模块上的mic与spk引脚短接,这样上下行语音便形成一个回路,再将被叫端的回声抑制算法关闭,这样便可以自动检测上下行语音,不需手动测试,使测试过程的自动化程度得到有效地提高,同时也帮助测试人员大量的手动测试中解放出来,其次,自动化测试过程会节省很多时间,会使研发测试工作的进程变得更加高效,值得被推广使用。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。