音频编码方法的调试方法及其相关装置与流程
本申请涉及音频编码技术领域,特别是涉及音频编码方法的调试方法及其相关装置。
背景技术:
目前,一般是由开发人员手动调整音频编码方法,以得到最优的编码方法。这种手动调优的方式将会极大的占据更多的开发时间,提高了成本。
技术实现要素:
本申请主要的目的是提供音频编码方法的调试方法及其相关装置,可以自动化进行音频编码方法的调试工作,无需开发人员手动干预,节省成本。
为达到上述目的,本申请采用的一个技术方案是:提供一种音频编码方法的调试方法,该方法包括:
获取以各个编码方法对同一音频文件进行编码后得到的文件,确定各个编码方法对应的编码时长;
确定各个编码方法的编码文件被同一语音识别算法语音识别的时长和准确率;
基于各个编码方法对应的编码时长、识别时长和识别准确率确定最优编码方法。
其中,基于各个编码方法对应的编码时长、识别时长和识别准确率确定最优编码方法,包括:以各个编码方法对应的编码时长和识别时长计算各个编码方法对应的时延;
从识别准确率超过准确率阈值的编码方法中选择时延最少的编码方法,将时延最少的编码方法作为最优编码方法。
其中,获取以各个编码方法对同一音频文件进行编码后得到的文件,确定各个编码方法对应的编码时长,包括:获取设备传输的以各个编码方法对同一音频文件进行编码后得到的文件、各个编码方法对应的编码时长和发送时间点;
以各个编码方法对应的编码时长和识别时长计算各个编码方法对应的时延,包括:基于各个编码方法对应的发送时间点计算各个编码方法对应的网络传输时间;
将各个编码方法对应的编码时长、网络传输时间和识别时长的总和作为各个编码方法对应的时延。
其中,编码方法包括编码格式和编码参数,
获取以各个的编码方法对同一音频文件进行编码后得到的文件,确定各个编码方法的编码时长,包括:获取以每个编码格式的各组编码参数值对同一音频文件进行编码后得到的文件,确定每个编码格式的各组编码参数值对应的编码时长;
从识别准确率超过阈值的编码方法中选择时延最少的编码方法,将时延最少的编码方法作为最优编码方法,包括:将每个编码格式的识别准确率超过阈值的编码参数值中选择时延最少的编码参数值,将时延最少的编码参数值作为每个编码格式的最优编码参数值。
其中,将时延最少的编码参数值作为每个编码格式的最优编码参数值,之后包括:从不同编码格式的最优编码参数值中选择时延最少的,将时延最少的编码格式的最优编码参数值作为最优编码格式的最优编码参数值。
其中,得到以各个的编码方法对同一音频文件进行编码后得到的文件,之前包括:保存每种编码格式的各个编码参数及其取值范围。
其中,得到以各个的编码方法对同一音频文件进行编码后得到的文件,包括:得到以各个编码方法对同一音频文件进行多次编码后得到的文件;
确定各个编码方法的编码文件被同一语音识别算法语音识别的时长和准确率,包括:将各个编码方法的多个编码文件中被语音识别算法正确识别的数目与各个编码方法的多个编码文件的总数的比值,作为各个编码方法对应的识别准确率;
以各个编码方法的多个编码文件中被正确识别的编码文件的识别时长的平均值,作为各个编码方法对应的识别时长。
其中,音频文件包括参数不同的音频文件;
方法还包括:依次将各种参数的音频文件作为同一音频文件;
基于各个编码方法对应的编码时长、识别时长和识别准确率确定最优编码方法,包括:基于各个编码方法对应的编码时长、识别时长和识别准确率确定各种参数的音频文件对应的最优编码方法。
为达到上述目的,本申请提供一种音频编码方法的调试装置,该音频编码方法的调试装置包括存储器和处理器;存储器中存储有计算机程序,处理器用于执行计算机程序以实现上述方法中的步骤。
为达到上述目的,本申请提供一种可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法中的步骤。
与现有技术相比,本申请的有益效果是:依据各个编码方法对应的编码时长、识别时长和识别准确率就可以确定最优编码方法,可以自动化进行音频编码方法的调试工作,无需开发人员手动干预,节省成本。
附图说明
图1是本申请的音频编码方法的调试方法第一实施例的流程示意图;
图2是本申请的音频编码方法的调试方法第二实施例的流程示意图;
图3是本申请的音频编码方法的调试装置一实施例的结构示意图;
图4是本申请可读存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明,若本申请实施例中有涉及方向性指示(诸如上、下、左、右、前、后……),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,若本申请实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
请参阅图1,图1为本申请音频编码方法的调试方法第一实施方式的流程示意图,如图1所示,本实施方式音频编码方法的调试方法包括以下步骤。
s101:获取以各个编码方法对同一音频文件进行编码后得到的文件,确定各个编码方法对应的编码时长。
在一实现方式中,可以以各个编码方法对同一音频文件进行编码,以得到各个编码方法的编码文件,还可以在编码后记录各个编码方法对应的编码时长。其中各个编码方法对应的编码时长是指,用各个编码方法对同一音频文件进行编码所耗费的时间。
可以理解的是,可以逐个以各个编码方法对同一音频文件进行编码,以得到各个编码方法的编码文件,并记录各个编码方法对应的编码时长。例如,测试a、b和c编码方法中的最优编码方法时:先以a编码方法对同一音频文件进行编码,得到a编码方法编码的文件,记录以a编码方法对同一音频文件进行编码所耗费的时间;然后以b编码方法对同一音频文件进行编码,得到b编码方法编码的文件,记录以b编码方法对同一音频文件进行编码所耗费的时间;接着以c编码方法对同一音频文件进行编码,得到c编码方法编码的文件,记录以c编码方法对同一音频文件进行编码所耗费的时间。
另外,或者可以并行以各种编码方法对同一音频文件进行编码,以得到各个编码方法的编码文件,并记录各个编码方法对应的编码时长。
在另一实现方式中,可以从其他设备获取到各个编码方法的编码文件,并且从其他设备获取到各个编码方法对应的编码时长。其他设备可以是终端、服务器等设备。
可以理解的是,可以从多个设备获取编码方法的编码文件和编码方法对应的编码时长,可以节省调试时间。例如,从a设备获取a和b编码方法的编码文件,并获取a和b编码方法对应的编码时长,从b设备获取c和d编码方法的编码文件、并获取c和d编码方法对应的编码时长……。
当然,或者可以从一个设备获取各个编码方法的编码文件和各个编码方法对应的编码时长。例如,从a设备获取所有编码方法的编码文件和所有编码方法对应的编码时长。
相应地,可以逐个获取各个编码方法的编码文件和对应的编码时长。当然,或者可以一次性获取所有编码方法的编码文件和对应的编码时长。
s102:确定各个编码方法的编码文件被同一语音识别算法语音识别的时长和准确率。
在一实现方式中,在获取到若干个编码方法的编码文件后,可以将各个编码方法的编码文件分别输入到语音识别算法,以让语音识别算法对这若干个编码方法的编码文件进行语音识别,从而基于语音识别的结果确定这若干个编码方法对应的识别准确率,将各个编码方法的编码文件被语音识别算法进行语音识别所耗费的时间作为各个编码方法对应的识别时长,并且记录各个编码方法对应的识别时长。
可以理解的是,对所有编码方法的编码文件进行语音识别所用的语音识别算法为同一个语音识别算法,以减少干扰因素,提高调试结果的准确性。
在另一实现方式中,可将各个编码方法的编码文件发送给识别服务器,让识别服务器使用其上装载的语音识别算法对各个编码方法的编码文件进行语音识别,并从识别服务器获取各个编码方法对应的识别时长和识别准确率。
s103:基于各个编码方法对应的编码时长、识别时长和识别准确率确定最优编码方法。
可以依据步骤s101得到的各个编码方法对应的编码时长、以及步骤s102确定的各个编码方法对应的识别时长和识别准确率确定最优编码方法。
其中,最优编码方法可以指,时效性高且识别准确率高的编码方法。
可选地,可以先以各个编码方法对应的编码时长和识别时长计算各个编码方法对应的时延,然后基于各个编码方法对应的时延和识别准确率确定最优编码方法。
在一实现方式中,基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:从识别准确率超过准确率阈值的编码方法中选择时延最少的编码方法,将时延最少的编码方法作为最优编码方法。其中,准确率阈值可以根据实际情况进行设定,例如,可以为98%、90%等值。
在另一实现方式中,基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:从时延低于时延阈值的编码方法中选择识别准确率最高的编码方法,将识别准确率最高的编码方法作为最优编码方法。其中,时延阈值可以根据实际情况进行设定,例如,可以为2ms、10ms等值。
在本实施方式中,依据各个编码方法对应的编码时长、识别时长和识别准确率就可以确定最优编码方法,可以自动化进行音频编码方法的调试工作,无需开发人员手动干预,节省人力资源。
进一步地,基于音频编码方法的调试方法的第一实施方式,本申请音频编码方法的调试方法可以包括下述四种执行方式,当然不限于此。
其一可以为:终端或服务器独自完成音频文件的编码、编码文件的识别,对编码时长、识别时长和识别准确率的统计和对比,以确定最优编码方法。
其二可以为:中转服务器从终端获取各个编码方法的编码文件及各个编码方法对应的编码时长,并将各个编码方法的编码文件发送给识别服务器,以让识别服务器对各个编码方法的编码文件进行识别,确定各个编码方法对应的识别时长和识别准确率。中转服务器从识别服务器获取各个编码方法对应的识别时长和识别准确率,对各个编码方法对应的编码时长、识别时长和识别准确率进行对比,以确定最优编码方法。
其三可以为:终端对音频文件进行编码,将各个编码方法的编码文件发送给服务器,以让服务器用同一语音识别算法对各个编码方法的编码文件进行识别,接着终端从服务器获取各个编码方法对应的识别时长和识别准确率,然后终端对各个编码方法对应的编码时长、识别时长和识别准确率进行对比,以确定最优编码方法。相对于前两种执行方法,第三种执行方法考虑到了在终端和服务器实际语音交互过程中,编码文件经过网络传输发送给服务器的过程,这与实际情况比较吻合,可以得到准确的时间信息,从而可以得到准确的调试结果。
其四可以为:终端对音频文件进行编码,将各个编码方法的编码文件发送给服务器,以让服务器用同一语音识别算法对各个编码方法的编码文件进行识别。服务器对各个编码方法对应的编码时长、识别时长和识别准确率进行对比,以确定最优编码方法。第四种执行方式与终端和服务器实际语音交互过程更加吻合,可以得到最准确的测试结果;并且与第三种执行方式相比,终端无需具有统计并对比确定最优编码方法的功能,而且减少了数据传输的过程,避免数据丢失,节约调试时间。进一步地,在音频编码方法的调试方法第二实施方式中对第四种执行方式进行详细描述。
请参阅图2,图2为本申请音频编码方法的调试方法第二实施方式的流程示意图。其中,编码方法包括编码格式和编码参数。其中编码格式包括mp3、speex、opus等编码格式。编码参数包括采样率、位宽度、压缩率等参数。每一编码格式的每一种编码参数都有一取值范围,可以理解的是,每一编码格式的所有编码参数的一种取值组合构成了每一编码格式的一组编码参数值。每一编码格式可以具有一个或多组编码参数值。为了方便终端确定每一编码格式的若干组编码参数值,即确定每一编码格式对应的若干个编码方法,终端可以存储有每种编码格式的多种编码参数的取值范围。进一步地,终端可以直接存储有每种编码格式的若干组编码参数值。当然,每种编码格式的多种编码参数的取值范围或每种编码格式的若干组编码参数值可以以配置文件的方式存储到终端中。如图2所示,本实施方式音频编码方法的调试方法包括以下步骤。
s201:获取终端传输的以各个编码方法对同一音频文件进行编码后得到的文件、各个编码方法对应的编码时长和发送时间点。
在本实施方式中,从终端获取以各个编码方法对同一音频文件进行编码后得到的文件、各个编码方法对应的编码时长和发送时间点。
可以理解的是,在编码方法包括编码格式和编码参数时,一种编码方法可以指一种编码格式的一组编码参数值。从而步骤s201即可以包括:获取以每个编码格式的各组编码参数值对同一音频文件进行编码后得到的文件,确定每个编码格式的各组编码参数值对应的编码时长和发送时间点。
其中,各个编码方法对应的发送时间点是指,终端发送各个编码方法的编码文件的起始时间。例如,a终端开始将编码方法的编码文件发送给服务器时,获取当前时间,将当前时间作为该编码方法对应的发送时间点。
另外,终端还可以将发送各个编码方法的编码文件时到的网络状态参数发送给服务器,以让服务器便于基于网络状态参数确认网络传输时间。
s202:确定各个编码方法的编码文件被同一语音识别算法语音识别的时长和准确率。
在一实现方式中,在步骤s201中,可以得到以各个编码方法对同一音频文件进行多次编码后得到的文件。确定各个编码方法的编码文件被同一语音识别算法语音识别的准确率,可以包括:将各个编码方法的多个编码文件中被语音识别算法正确识别的数目与各个编码方法的多个编码文件的总数的比值,作为各个编码方法对应的识别准确率。例如,a编码方法对语音内容为“打开灯光”的音频文件进行了10次编码,得到a编码方法的10个编码文件,a编码方法的这10个编码文件被同一语音识别算法识别时,有5个编码文件被语音识别算法正确识别为“打开灯光”,其他5个编码文件被语音识别算法识别出的内容不是“打开灯光”,从而a编码方法的识别准确率为5/10=50%。
确定各个编码方法的编码文件被同一语音识别算法语音识别的时长,可以包括:以各个编码方法的多个编码文件中被正确识别的编码文件的识别时长的平均值,作为各个编码方法对应的识别时长。例如,a编码方法的这10个编码文件被同一语音识别算法识别时,有5个编码文件被语音识别算法正确识别为“打开灯光”,可以将5个被正确识别的编码文件的识别时长的平均值作为a编码方法对应的识别时长。当然,在其他实现方式中,也可以直接将各个编码方法的所有编码文件的识别时长的平均值作为各个编码方法对应的识别时长。
s203:基于各个编码方法对应的发送时间点计算各个编码方法对应的网络传输时间。
在本实施方式中,可以将获取到各个编码方法的编码文件的时间作为各个编码方法对应的获取时间点,各个编码方法对应的获取时间点减去各个编码方法对应的发送时间点即可得到各个编码方法对应的网络传输时间。
在另一实现方式中,还可以基于网络状态参数确定各个编码方法对应的网络传输时间。其中网络状态参数可以是从终端获取的,也可以是服务器自身获取到的。
可以理解的是,步骤s203的执行顺序不限于此,只要步骤s203在步骤s201之后执行即可,例如步骤s203可以在步骤s202之前执行。s204:将各个编码方法对应的编码时长、网络传输时间和识别时长的总和作为各个编码方法对应的时延。
s205:基于各个编码方法对应的时延和识别准确率确定最优编码方法。
在一实现方式中,从识别准确率超过准确率阈值的编码方法中选择时延最少的编码方法,将时延最少的编码方法作为最优编码方法。
在另一实现方式中,从时延小于时延阈值的编码方法中选择识别准确率最高的编码方法,将识别准确率最高的编码方法作为最优编码方法。
在一应用场景中,基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:基于每个编码格式的各组编码参数组对应的时延和识别准确率确定每个编码格式的最优编码参数值。
在另一应用场景中,基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:基于每个编码格式的各组编码参数组对应的时延和识别准确率确定每个编码格式的最优编码参数值,继而基于每个编码格式的最优编码参数值对应的时延和识别准确率确定最优编码格式的最优编码参数值。
具体地,基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:每个编码格式的识别准确率超过阈值的编码参数值中选择时延最少的编码参数值,将时延最少的编码参数值作为每个编码格式的最优编码参数值;从不同编码格式的最优编码参数值中选择时延最少的,将时延最少的编码格式的最优编码参数值作为最优编码格式的最优编码参数值。
在另一实施方式中,基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:每个编码格式的时延低于时延阈值的编码参数值中选择识别准确率最高的编码参数值,将识别准确率最高的编码参数值作为每个编码格式的最优编码参数值;从不同编码格式的最优编码参数值中选择识别准确率最高的,将识别准确率最高的编码格式的最优编码参数值作为最优编码格式的最优编码参数值。
另外,在基于每个编码格式的最优编码参数值对应的时延和识别准确率确定最优编码格式的过程中,还可以基于每个编码格式的最优编码参数值对应的时延和识别准确率按照最优编码格式到最劣编码格式的方式对编码格式进行排序。
例如,a编码格式的最优编码参数值对应的识别准确率为98%,对应的时延为1ms;b编码格式的最优编码参数值对应的识别准确率为97%,对应的时延为1.5ms;c编码格式的最优编码参数值对应的识别准确率为99%,对应的时延为1.25ms。其中,如果从时延超过时延阈值的编码格式中选取识别准确率最高的编码格式为最优编码格式的话,可以按照识别准确率的高低顺序对编码格式进行排序,上述条件中,最优编码格式→最劣编码格式的顺序为c→a→b。另外,如果从识别准确率超过准确率阈值的编码格式中选取时延最少的编码格式为最优编码格式的话,可以按照时延的多少顺序对编码格式进行排序,上述条件中,最优编码格式→最劣编码格式的顺序为a→c→b。
在又一应用场景中,每个编码格式有一组编码参数值,那基于各个编码方法对应的时延和识别准确率确定最优编码方法,可以包括:基于每个编码格式的编码参数组对应的时延和识别准确率确定最优编码格式。
本申请还可以基于第一实施方式和第二实施方式的方案,对参数不同的音频文件进行最优编码方法的调试。以确定每种参数的音频文件的最优编码方法。具体地,可以在步骤s201之前,依次将各种参数的音频文件作为同一音频文件,以依次确认各种参数的音频文件的最优编码方法。其中,音频的参数可以包括音频时长和音频音质,当然音频的参数不限于此。即可以依据上述实施方式中的音频编码方法的调试方法确定不同时长的音频对应的最优编码方法,或可以依据上述实施方式中的音频编码方法的调试方法确定不同音质的音频对应的最优编码方法,还可以依据上述实施方式中的音频编码方法的调试方法确定各种时长的各种音质的音频对应的最优编码方法。
按照上述方法调试之后,可以得到音频的参数与最优编码方法的对应表,可以将音频的参数与最优编码方法的对应表存储起来,以让终端采集到音频后,可基于采集到的音频的参数在对应表中查找确定采集到的音频的最优编码方法,然后按照最优编码方法对采集到的音频进行编码。
另外,编码方法包括编码格式和编码参数时,可以得到音频参数与每个编码格式的最优编码参数值、最优编码格式的对应表。另外,对应表中还可以存储编码格式的优劣顺序,让终端可以根据自身支持的编码格式选取到最优的编码方法。
上述音频编码方法的调试方法一般由音频编码方法的调试装置实现,因而本申请还提出一种音频编码方法的调试装置。请参阅图3,图3是本申请音频编码方法的调试装置一实施方式的结构示意图。本音频编码方法的调试装置10包括处理器12和存储器11;存储器11用于存储实现如上述音频编码方法的调试方法,处理器12用于执行存储器11存储的程序指令。
上述音频编码方法的调试方法的逻辑过程以计算机程序呈现,在计算机程序方面,若其作为独立的软件产品销售或使用时,其可存储在计算机存储介质中,因而本申请提出一种可读存储介质。请参阅图4,图4是本申请可读存储介质一实施方式的结构示意图,本实施方式可读存储介质20中存储有计算机程序21,计算机程序被处理器执行时实现上述音频编码方法的调试方法中的步骤。
该可读存储介质20具体可以为u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory,)、磁碟或者光盘等可以存储计算机程序的介质,或者也可以为存储有该计算机程序的服务器,该服务器可将存储的计算机程序发送给其他设备运行,或者也可以自运行该存储的计算机程序。该可读存储介质20从物理实体上来看,可以为多个实体的组合,例如多个服务器、服务器加存储器、或存储器加移动硬盘等多种组合方式。
以上仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除