第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 一种音频处理方法 装置 服务器 存储介质及系统与流程

一种音频处理方法 装置 服务器 存储介质及系统与流程

时间:2023-06-26 00:06:51

相关推荐

一种音频处理方法 装置 服务器 存储介质及系统与流程

本申请涉及计算机技术领域,尤其涉及一种音频处理方法、装置、服务器、存储介质及系统。

背景技术:

随着语音识别技术的不断成熟,涉及到信号处理、自然语音处理、人工智能、数据挖掘和机器学习等多个学科的智能语音技术也得到了越来越广泛的应用。例如,智能语音已经应用在移动设备、汽车、家居、客服、教育、医疗等行业。在应用中,如何提高语音处理的准确性、稳定性是智能语音产品的关键。在一些实现中,智能语音产品会基于固定的处理平台实现语音的处理,例如:使用固定的语音处理平台,或通过固定的第三方平台等,来实现语音处理功能。但这种情况,会导致对单一语音处理平台或第三方平台依赖过强,如:所使用的语音处理平台或第三方平台并不适合特定情境下的语音处理(即对特定场合的语音处理效果并不理想);或者,当语音处理平台或第三方平台的负载过大时,容易造成处理不稳定、效率降低,若依赖的语音处理平台或第三方平台异常,会导致无法使用、影响服务的正常提供等。

技术实现要素:

本申请一个或多个实施例提供了一种音频处理方法、装置、服务器、存储介质及系统,以减少对处理平台的依赖,提高了处理的稳定性和/或效率。

本发明的至少一个实施方式提供了一种音频处理方法,包括:接收待处理数据,根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块,由所述至少一个目标音频处理模块对所述待处理数据进行处理,得到处理结果。

本发明的实施方式还提供了一种音频处理装置,包括:接收模块,用于接收待处理数据;选择模块,用于根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块;处理模块,用于由至少一个目标音频处理模块对待处理数据进行处理,得到处理结果。

本发明的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的音频处理方法。

本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述的音频处理方法。

本发明的实施方式还提供了一种语音评测系统,包括:终端、以及上述的服务器。

在本发明至少一个实施方式中,根据预设的适配规则在多个语音处理模块中选择一个目标语音处理模块,通过所选的目标语音处理模块实现语音评测功能,降低了对单个语音处理模块的依赖性,可以均衡各语音处理模块的负载,提高服务的稳定性和效率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1A是本发明实施方式提供的一种语音评测系统的结构示意图;

图1B是本发明实施方式提供的一种音频处理方法的流程示意图;

图2是本发明实施方式提供的一种音频处理方法的流程示意图;

图3是本发明实施方式提供的一种音频处理方法的流程示意图;

图4是本发明实施方式提供的一种音频处理方法的流程示意图;

图5是本发明实施方式提供的一种音频处理方法的流程示意图;

图6是本发明实施方式提供的一种音频处理方法的流程示意图;

图7是本发明实施方式提供的一种音频处理方法的流程示意图;

图8是本发明实施方式提供的一种音频处理方法的流程示意图;

图9是本发明实施方式提供的一种音频处理装置的结构示意图;

图10是本发明实施方式提供的一种服务器的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。

下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

下面结合具体的实施例对本申请进行说明。

在一个或多个实施例中,应用场景如图1A所示。系统包括至少一台终端100、至少一台音频处理服务器300。

在一个或多个实施例中,至少一台终端100通过网络200与至少一台音频处理服务器300连接。在一个或多个实施例中,网络200包含至少一台平台服务器,所述平台服务器提供包含但不限于社交、外卖、教育、汽车、家居、客服、教育、医疗等行业的服务。在一个或多个实施例中,所述至少一台平台服务器与所述至少一台音频处理服务器300连接,并向所述至少一台终端100提供音频处理结果。

在一个或多个实施例中,终端100安装有具有音频功能的应用,例如聊天工具、社交软件、智能语音助手、在线教育软件等等。在一个或多个实施例中,终端100为是具有音频功能的电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、移动互联网设备(MID)、智能手表、智能手环等智能可穿戴设备、智能音响、智能眼镜、蓝牙耳机等等,在此不做具体限定。

在一个或多个实施例中,终端100安装有音频采集设备,如麦克风、传感器等等。在一个或多个实施例中,用户可以利用终端100上的音频采集设备,来采集录音音频。

在一个或多个实施例中,音频处理服务器300中包括至少一个音频处理模块。在一个或多个实施例中,至少一个音频处理模块和/或一台音频处理服务器300是自主研发的。在一个或多个实施例中,至少一个音频处理模块和/或一台音频处理服务器300由第三方服务机构提供。在一个或多个实施例中,第三方服务机构包括驰声科技、腾讯、科大讯飞、百度、猎豹等音频服务机构。

在一个或多个实施例中,至少一台平台服务器和/或音频评测服务器300组成分布式服务器集群。

可以理解的是,图1中的终端100、平台服务器、音频处理服务器300的数目仅仅是示意性的,本申请并不限制具体的数量。根据实现需要,可以具有任意数目的终端100、平台服务器、音频处理服务器300。

在一个或多个实施例中,用户使用终端100采集音频,经由网络200和/或平台服务器200将音频流发送到从音频处理服务器300中的目标音频处理模块,从而降低对单个音频处理服务器和/或音频处理模块的依赖性、均衡负载,提高服务的稳定性和效率。

请参考图1B,图1B示出了在一个或多个实施例中的音频处理方法的流程示意图,但图1B的示例并不能理解为对实施例的具体限制。

S101:接收待处理数据。

在一个或多个实施例中,所述待处理数据包含来自终端100的音频数据。在一个或多个实施例中,所述待处理数据来自终端100上的SDK(Software DevelopmentKit,软件开发工具包)和/或接入产品(如应用程序App等)。

在一个或多个实施例中,所述待处理数据为需要评测的数据(待评测数据),包含语音数据以及对应的文本数据,所述文本数据用于对所述语音数据进行评测的比对依据。在一个或多个实施例中,基于所述文本数据与音频数据的的匹配程度,对所述音频数据进行评测。

在一个或多个实施例中,待处理数据包括待处理内容的属性,例如:音频来源(背景音、语音、混合音等)、语种(英语、汉语、日语等)、音频的内容类型(故事、歌曲、诗词等)。。

在一个或多个实施例中,所述待处理数据包括其他内容,例如:数据类型(如单词、短语、句子、段落等)、音素信息等等。

在一个或多个实施例中,所述待处理数据包括待评测数据,所述待评测数据包括评分规则,例如评分分数范围、评分等级等。

S102:根据适配规则在多个音频处理模块中选择目标音频处理模块。

在一个或多个实施例中,音频处理服务器300中包括至少一个音频处理模块。在一个或多个实施例中,至少一个音频处理模块和/或一台音频处理服务器300是自主研发的。在一个或多个实施例中,至少一个音频处理模块和/或一台音频处理服务器300由第三方服务机构提供。

在一个或多个实施例中,根据适配规则,从至少一台音频处理服务器300中选择一台目标服务器,并从该目标服务器的至少一个音频处理模块中选择目标音频处理模块。在一个或多个实施例中,根据适配规则,从至少一台音频处理服务器300中选择一台目标服务器,选择该目标服务器所包括的音频处理模块作为目标音频处理模块。在一个或多个实施例中,根据适配规则,从音频处理服务器300所包括的至少一个音频处理模块中选择目标音频处理模块。

在一个或多个实施例中,所述适配规则预先设置。在一个或多个实施例中,所述适配规则可根据服务的需求设计,包括但不仅限于以下之一或其任意组合:内容适配、音频适配、数据适配、流量适配、随机适配、占比适配。在一个或多个实施例中,所述适配规则根据终端的SDK类型或应用的不同来设置,其中,SDK类型可包括有网页(javascript h5)、微信(javascript微信平台)、安卓、ios,应用可以是Chatterbox、数字图书馆、蜂校、情景对话、互动录播课等具体应用程序。在一个或多个实施例中,适配规则建立起SDK类型、应用类型与特定的音频处理服务器300和/或特定的音频处理模块的关联,例如,为网页(H5-SDK)类设定特定的音频处理服务器和/或音频处理模块,等等。在一个或多个实施例中,通过预设的适配规则根据业务类型不同自动选择不同的音频处理服务器和/或音频处理模块,可以充分发挥各音频处理服务器和/或音频处理模块的特长。

在一个或多个实施例中,所述适配规则存储在平台服务器,由平台服务器根据适配规则从至少一台音频处理服务器300中选择目标服务器,将待处理数据发送给目标服务器。在一个或多个实施例中,平台服务器接收到待处理数据之后,根据其所存储的适配规则从至少一台音频处理服务器300中选择目标服务器,将待处理数据发送到目标服务器,由目标服务器中的音频处理模块进行数据处理。

在一个或多个实施例中,所述适配规则由终端中运行的应用程序调用,基于适配规则从至少一台音频处理服务器300中选择目标服务器和/或目标音频处理模块。在一个或多个实施例中,应用程序基于适配规则选择目标服务器和/或目标音频处理模块,并将待处理数据发送到目标服务器和/或目标音频处理模块。

在一个或多个实施例中,所述适配规则存储在音频处理服务器300,音频处理服务器300根据适配规则选择目标音频处理模块。在一个或多个实施例中,音频处理服务器300接收到待处理数据之后,根据适配规则选择目标音频处理模块,并将待处理数据发送给目标音频处理模块进行数据处理。在一个或多个实施例中,音频处理服务器300为第三方服务平台,由例如:驰声科技、腾讯语音、科大讯飞、百度等服务机构提供,各音频处理服务器的连接地址提前注册到平台服务器的配置管理中心,从而可以将待处理数据发送到各音频处理服务器300。

在一个或多个实施例中,各个音频处理服务器300中的至少一个音频处理模块有各自的特点、适合不同的应用场合和/或不同的使用成本,例如:音频处理服务器A中的至少一个音频处理模块适合语音处理,音频处理服务器B中的至少一个音频处理模块适合背景音处理,音频处理服务器C中的至少一个音频处理模块适合综合处理等;或者音频处理服务器A中的至少一个音频处理模块适合汉语语音处理,音频处理服务器B中的至少一个音频处理模块适合日语语音处理,音频处理服务器C中的至少一个音频处理模块适合英语语音处理等;或者音频处理服务器A中的至少一个音频处理模块适合包括诗词内容的语音处理,音频处理服务器B中的至少一个音频处理模块适合歌曲内容的语音处理等;或者音频处理服务器A中的至少一个音频处理模块支持汉语音素有声调语音处理功能,但其仅能对时长在10秒以内的音频流进行语音处理,而音频处理模块B中的至少一个音频处理模块支持汉语音素无声调语音处理功能,但其能对时长在30秒以内的音频流进行语音处理等,如此等等。

在一个或多个实施例中,音频处理服务器300中的至少一个音频处理模块有各自的特点、适合不同的应用场合和/或不同的使用成本,例如:在音频处理服务器A中,至少一个音频处理模块(x1、x2…)适合语音处理,至少一个音频处理模块(y1、y2…)适合背景音处理,至少一个音频处理模块(z1、z2…)适合综合处理等;或者在音频处理服务器A中,至少一个音频处理模块(x1、x2…)适合汉语语音处理,至少一个音频处理模块(y1、y2…)适合日语语音处理,至少一个音频处理模块(z1、z2…)适合英语语音处理等;或者在音频处理服务器A中,至少一个音频处理模块(x1、x2…)适合包括诗词内容的语音处理,至少一个音频处理模块(y1、y2…)适合歌曲内容的语音处理等;或者在音频处理服务器A中,至少一个音频处理模块(x1、x2…)支持汉语音素有声调语音处理功能,但其仅能对时长在10秒以内的音频流进行语音处理,而至少一个音频处理模块(y1、y2…)支持汉语音素无声调语音处理功能,但其能对时长在30秒以内的音频流进行语音处理等,如此等等。

在本步骤中,从多个音频处理模块中选择出的目标目标音频处理模块用于实现音频处理。在一个或多个实施例中,待处理数据为需要评测的语音数据,选择目标音频处理模块实现语音评测。

S103:由至少一个目标音频处理模块对待处理数据进行处理,得到处理结果。

在一个或多个实施例中,所述待处理数据包括音频数据。在一个或多个实施例中,所述音频数据为音频流,所述音频流来自终端100麦克风的录音。

在一个或多个实施例中,平台服务器通过与终端100之间的连接接收待处理数据,并通过与目标服务器之间的连接将所述待处理数据发送至目标服务器,由目标服务器中的音频处理模块进行数据处理。

在一个或多个实施例中,音频处理服务器300通过与终端100之间的连接接收待处理数据,并将待处理数据交由目标音频处理模块进行数据处理。

在一个或多个实施例中,至少一个音频处理服务器300由第三方机构提供,通过第三方机构提供的音频服务接口,建立与音频处理服务器300的连接。

在一个或多个实施例中,根据音频处理服务器300或目标服务器的地址、所支持的通信协议类型,与音频处理服务器300或目标服务器建立通信连接,发送待处理数据。在一个或多个实施例中,所述协议类型包括http(HyperText TransferProtocol,超文本传输)协议、websocket协议、socket协议。

在一个或多个实施例中,终端100在录音的同时,将音频流发送到目标音频处理模块进行处理。

在一个或多个实施例中,所述待处理数据为待评测的语音数据,终端100在录音的同时,将待评测的语音数据发送至目标音频处理模块进行处理,以对录音进行实时评测,待最后一段音频流发送完毕后,即可快速返回评测结果。

在一个或多个实施例中,终端将录音以流的形式发送至后端服务器,其发送音频流的频率、每相邻两段音频流的间隔时长等可以由SDK、平台服务器、和/或音频处理服务器设定或调整,以形成可供目标音频处理模块处理的格式。。

在一个或多个实施例中,所述待处理数据包含待评测数据,包含语音数据以及对应的文本数据,目标音频处理模块对语音数据进行解析处理,基于解析结果以及与文本数据的比对结果,形成评测结果。在一个或多个实施例中,评测结果还基于评分规则来确定。

在一个或多个实施例中,若所述待评测数据存在问题,例如,文本数据不符合文本信息格式时,目标处理模块会生成错误信息,音频处理服务器300和/或目标处理模块记录错误信息,和/或将错误信息反馈至终端和/或平台服务器。

在一个或多个实施例中,还包括步骤:根据错误信息调整适配规则。在一个或多个实施例中,由音频处理服务器300根据错误信息调整其存储的适配规则。在一个或多个实施例中,由平台服务器根据错误信息调整其存储的适配规则。在一个或多个实施例中,由终端100根据错误信息调整其存储的适配规则。

在一个或多个实施例中,还包括步骤:接收来自所述评测结果。

在一个或多个实施例中,评测结果包括但不仅限于以下之一或其任意组合:总分、流利度、完整度等。在一个或多个实施例中,评测结果还包括音频下载地址、录音用户名等。

在一个或多个实施例中,终端100接收所述评测结果,进行显示。在一个或多个实施例中,平台服务器接收所述评测结果,进行存储。

在一个或多个实施例中,平台服务器在接收来自所述评测结果之后,将所述评测结果发送至所述终端100,终端在接收的所述评测结果后,由SDK或APP应用对评测结果进行解析将所述评测结果转换为用户可读的内容信息。例如,平台服务器与终端的通信为二进制流形式,SDK或APP应用对传回的二进制流进行解析,解析后的内容信息以短信形式发送至用户,或通过接入产品在App相关页面显示。

在一个或多个实施例中,根据预设的适配规则在多个音频处理模块中选择一个目标音频处理模块,通过所选的音频处理模块实现音频处理,降低了对单个音频处理模块或音频处理服务器的依赖,提高服务的稳定性和效率。在一个或多个实施例中,由于不同的音频处理服务器和/或音频处理模块各有优缺点,根据应用需求不同可预设不同的适配规则,选择合适的音频处理服务器和/或音频处理模块,可以充分发挥各音频处理服务器和/或音频处理模块的特长。

请参考图2,图2是一个或多个实施例中提出的音频处理方法的流程示意图。

S201:接收来自终端的语音评测请求。

S202:接收待评测数据。

在一个或多个实施例中,所述待评测数据包括待评测的语音数据以及对应的文本数据。在一个或多个实施例中,待评测数据还包括评分规则、语音数据的属性信息。在一个或多个实施例中,所述属性信息包括音素信息。在一个或多个实施例中,所述音素信息包含文本数据对应的音素,其中音素是根据语音的自然属性划分出来的最小语音单位,可分为元音和辅音两大类,依据音节里的发音动作来分析,一个动作构成一个音素;例如,汉语音节“a”只有一个音素,“ai”有两个音素,“dai”有三个音素等。

S203:根据音素适配规则在多个音频处理服务器中选择一个支持音素信息的目标服务器。

在一个或多个实施例中,待评测数据中含有音素信息,音频处理服务器结合所述音素信息对录音音频进行语音评测。在一个或多个实施例中,有些音频处理服务器300支持依照特定的音素进行语音评测,当待评测数据中含有特定音素时,需选择支持该种音素进行评测的音频处理模块为目标服务器,相应地,各音频处理服务器300所支持的音素信息预先注册在平台服务器中。

举例来说,待评测数据中包括音素信息,其音素按照国际音标标注,则在可结合音素进行评测的音频处理服务器300中,选择所支持的音素信息包括国际音标的那个,以作为本次评测的目标服务器。评测时,待评测数据可能标注有特定音素,例如在针对英语进行语音评测时,其音素信息可能按照美式发音的音标进行标注、或者按照英式发音的音标进行标注,也可能按照国际音标进行标注,目标服务器需结合音素信息进行语音评测,因而对应的,部分音频处理模块内部设有特定的音素集。对英语,一种常用的音素集是卡内基梅隆大学的一套由39个音素构成的音素集;汉语一般直接用全部声母和韵母作为音素集,另外,针对汉语的语音评测还分有调和无调,在此不做详述。

S204:与目标服务器建立连接。

S205:将待评测数据发送至目标服务器。

在一个或多个实施例中,所述待评测数据中的待评测的语音数据以音频流的方式发送。在一个或多个实施例中,由目标服务器中的音频处理模块执行评测处理。

S206:接收来自目标服务器的评测结果。

S207:将评测结果发送至终端。

步骤S201、S202、S204至S206可参见前述步骤中的描述,为避免重复,在此不再赘述。

本发明实施方式根据内容适配规则在多个音频处理服务器中选择一个目标服务器进行连接,使得所选的目标服务器能够基于待评测数据中的音素信息对用户的录音音频进行语音评测,保证系统可满足用户的不同发音需求(如用户需学习英式发音),提升用户体验。

请参考图3,图3是一个或多个实施例中的音频处理方法的流程示意图。

S301:接收来自终端的语音评测请求。

S302:接收待评测数据。

其中,所述待评测数据至少包括待评测内容的文本数据、评分分制数据、待评测内容的评测类型;所述评测类型包括单词、短语、句子、段落。

S303:根据类型适配规则在多个音频处理服务器中选择一个支持评测类型的目标服务器。

由于不同的音频处理服务器各有优缺点,例如有的音频处理服务器能提供单词纠音,有的音频处理服务器对段落的评分更精准等,根据待评测内容的评测类型不同,选择支持本次评测内容的评测类型的音频处理服务器为目标服务器,可以充分发挥各音频处理服务器的特长。举例来说,待评测内容的文本数据为“side、beach、central、crop”,评测类型为单词,即可选择能提供单词纠音功能的音频处理服务器A为目标服务器;待评测内容的文本数据为“Quite a number of things have been done to help solve traffic problems in Singapore.For example,motorists must buy a special pass ifthey want to drive into the downtown business district”,评测类型为段落,则可选择能对段落进行评测的音频处理服务器B为目标服务器。

S304:与目标服务器建立连接。

S305:将音频流和待评测数据发送至目标服务器。

S306:接收来自目标服务器的评测结果。

S307:将评测结果发送至终端。

本实施方式中步骤S301、S302、S304至S306可参见前述步骤中的描述,为避免重复,在此不再赘述。

本发明实施方式根据类型适配规则在多个音频处理服务器中选择一个目标服务器进行连接,使得所选的系统能够针对待评测内容的评测类型的不同选用不同音频处理服务器进行语音评测,从而确保各音频处理服务器对于各评测类型的待评测内容发挥各自的优势,为用户提供更准确的评测服务。

请参考图4,图4是本发明实施方式提出的一种音频处理方法的流程示意图,具体可以包括以下步骤:

S401:接收来自终端的语音评测请求。

S402:接收待评测数据。

其中,待评测数据包括语音数据以及语音数据对应的文本数据,语言数据的音频文件格式专指存放音频数据的文件的格式,具体分为无损格式,例如WAV、FLAC、APE、ALAC、WavPack(WV),以及有损格式,例如MP3、AAC、Ogg Vorbis、Opus。

S403:根据格式适配规则在多个所述音频处理服务器中选择一个支持音频文件格式的目标服务器。

具体的,由于各个音频处理服务器支持的音频文件格式不完全相同,根据不同的终端采集的录音音频的不同文件格式,选取对应兼容的目标服务器,相应地,各音频处理服务器所支持的音频文件格式需提前注册。

例如,终端采集音频格式的是pcm,则选择音频处理服务器A;具体的,比如iPad只能录取WAV格式的音频,即终端采集的音频格式是WAV,则选择选择支持WAV音频的音频处理服务器B为目标服务器。

S404:与目标服务器建立连接。

S405:将待评测数据发送至目标服务器。

S406:接收来自目标服务器的评测结果。

S407:将评测结果发送至终端。

本实施方式中步骤S401、S404至S406可参见前述步骤中的描述,为避免重复,在此不再赘述。

本发明实施方式根据格式适配规则在多个音频处理服务器中选择一个目标服务器进行连接,避免因音频处理服务器不支持终端录音音频文件的格式导致的语音评测服务无法进行,也可避免因评测前需要先对录音音频的音频文件格式进行转换导致服务器负载重、评测效率低。

请参考图5,图5是本发明实施方式提出的一种音频处理方法的流程示意图,具体可以包括以下步骤:

S501:接收来自终端的语音评测请求。

S502:接收待评测数据。

S503:根据吞吐量适配规则在多个音频处理服务器中选择一个负载状态未超出预设范围的目标服务器。

具体的,所有音频处理服务器都有一个渠道URL(Uniform Resource Locator,统一资源定位符)和限制的每秒请求量,系统是用流量检测算法(令牌桶)通过对请求量统计,判断其负载状态。

其中,后端服务器记录每个音频处理服务器的QPS(Query Per Second,每秒查询率),根据音频处理服务器在规定时间内所处理数据流量多少来衡量其负载状态,如果超过该音频处理服务器对应的预设范围,则跳过该音频处理服务器,选择其它音频处理服务器为目标服务器。

举例来说:音频处理服务器A流量过大,后端服务器判断其负载状态超出预设范围,则选择其他音频处理服务器。具体的,后端服务器内可生成音频处理服务器的连接地址列表(如列表中包含音频处理服务器A、B、C的连接地址a、b、c),在接收到语音评测请求后,查询各音频处理服务器每秒的响应请求数,将QPS超出预设范围的音频处理服务器(如音频处理服务器A)对应的连接地址(a)从所述列表中剔除,在所属列表中剩下的连接地址(即b和c)里选择一个进行连接;若各音频处理服务器的QPS均超出预设范围,则可选择负载状态最轻的音频处理服务器为目目标服务器。可以理解的是,后端服务器的选择不仅限于此种方式,例如,后端服务器按照列表中(a、b、c)的顺序进行查询,即先查询如音频处理服务器A的负载状态,若其负载状态未超出预设范围,则选择音频处理服务器A为目标服务器,基于连接地址a与其建立连接;否则查询列表中下一个音频处理服务器(即音频处理服务器B)的负载状态;以此类推。

S504:与目标服务器建立连接。

S505:将待评测数据发送至目标服务器。

S506:接收来自目标服务器的评测结果。

S507:将所述评测结果发送至所述终端。

本实施方式中步骤S501、S502、S505至S507,可参见前述步骤中的描述,为避免重复,在此不再赘述。

本发明实施方式根据吞吐量适配规则在多个音频处理服务器中选择一个目标服务器进行连接,使得所选的目标服务器的负载状态较轻,从而保证评测服务的稳定性和评测效率。

请参考图6,图6是本发明实施方式提出的一种音频处理方法的流程示意图,具体可以包括以下步骤:

S601:接收来自终端的语音评测请求,与所述终端建立连接。

S602:接收待评测数据。

S603:根据任务占比适配规则按照设定的任务执行比例和当前完成情况在多个音频处理服务器中选择一个目标服务器。

其中,获取各音频处理服务器的设定的任务执行比例,所述设定的任务执行比例可以为预先设置的各个音频处理服务器的连接进行的百分比配置,可权衡评测服务需求进行配置

通过根据设定的任务执行比例选择目标服务器,可以按照需求对某些音频处理服务器进行连接限制。举例说明,设定的任务执行比例为:音频处理服务器A占10%、音频处理服务器B占20%、音频处理服务器C占70%;后端服务器可在接收到语音评测请求后,对各音频处理服务器的请求量进行统计(音频处理服务器A的请求量为x、音频处理服务器B的请求量为y、音频处理服务器的请求量为z),计算各音频处理服务器的请求量占比(音频处理服务器A的占比值Ia=x/(x+y+z)、音频处理服务器B的占比值Ib=y/(x+y+z)、音频处理服务器C的占比值Ic=z/(x+y+z));若Ia的值大于10%、Ib的值大于20%,则选择音频处理服务器C为目标服务器。

S606:将待评测数据发送至目标服务器。

S607:接收来自目标服务器的评测结果。

S608:将评测结果发送至终端。

本实施方式中步骤S601、S602、S605至S607,可参见前述步骤中的描述,为避免重复,在此不再赘述。

本发明实施方式根据任务占比适配规则在多个音频处理服务器中选择一个目标服务器进行连接,使得各音频处理服务器的请求量符合根据评测服务需求预设的配置占比,从而保证评测服务的稳定性和评测效率。

请参考图7,图7是本发明实施方式提出的一种音频处理方法的流程示意图,具体可以包括以下步骤:

S701:接收来自终端的语音评测请求。

S702:接收待评测数据。

S703:根据随机适配规则随机在多个音频处理服务器中选择一个目标服务器。

具体的,可以将所有音频处理服务器的连接地址放在一个数组中,利用随机算法对连接地址的总数产生一个随机值,通过得到的随机值选择数组中对应位置的连接地址,最终选择的连接地址即对应目标服务器。通过随机适配可以对各个音频处理服务器公平连接,均衡各音频处理服务器的负载状态。

举例来说:后端服务器内可将音频处理服务器A、B、C对应的连接地址a、b、c放在一个数组中,0对应连接地址a、1对应连接地址b、2对应连接地址c,然后利用随机算法在0~2中产生一个随机值,若得出的随机值为0,则选择音频处理服务器A为目标服务器,基于连接地址a与其建立连接。

S704:与目标服务器建立连接。

S705:将待评测数据发送至目标服务器。

S706:接收来自目标服务器的评测结果。

S707:将评测结果发送至所终端。

本实施方式中步骤S701、S702、S704至S706,可参见前述步骤中的描述,为避免重复,在此不再赘述。

本发明实施方式根据吞吐量适配规则在多个音频处理服务器中选择一个目标服务器进行连接,降低了对单个音频处理服务器的依赖性,可以均衡各音频处理服务器的负载,从而提高评测服务的稳定性和评测效率。

需要说明的是,预设的适配规则还可以是上述各方法的任意组合,即采用一种方法进行选择音频处理模块后,再采用其他方法对所选结果进行进一步筛选,直至筛选结果仅剩一个。可选地,可以预先对不同的选择方法制定优先级别,例如,选择目标音频处理模块时优先采用内容适配,即检测待评测数据中是否包含特定音素,若包括则选择支持该种音素的音频处理模块,若不包括则采用其他方法;对于根据内容适配选择的音频处理模块进行进一步筛选,优先采用音频适配,若经过音频适配的进一步筛选后,剩余的音频处理模块数量不止一个,还可以采用随机适配或流量适配等进行进一步筛选,最后剩余的音频处理模块即为目标音频处理模块。

由于不同的音频处理模块各有优缺点,特定的第三方服务仅能支持部分评测功能(如仅能对某一语种进行评测、可评测的录音最长时长有限制等),现有技术中的音频处理方法能实现的评测服务有局限性。而本发明实施方式提出的音频处理方法可以自动选择不同的语音服务,充分发挥各音频处理模块的特长,适用范围更广。

显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图8,图8是本发明实施方式提出的一种音频处理方法的流程示意图。本实施方式所描述的音频处理方法主要是从终端、后端服务器、音频处理服务器三方进行描述的,如图所示,本实施方式中的方法具体包括以下步骤:

S801:终端初始化,向后端服务器发送语音评测请求。

需要说明的是,终端可以包括前端调用SDK以及接入产品;其中,SDK可分为有H5-SDK、微信、安卓、ios;接入产品可以是Chatterbox、数字图书馆、蜂校、情景对话、互动录播课等等。由于后端服务器支持多种产品接入及多种SDK调用,拓展了客户来源,可以提高用户规模。

具体的,终端初始化SDK时需提供AppID、UserID等权限以及日志验证数据。初始化过程以H5-SDK初始化为例,包括录音模块初始化、核心模块初始化以及浏览器环境监察;其中,录音模块主要是通过H5-API来调用用户设备进行录音,核心模块主要负责与后端建立websocket长连接进行数据通信,以及SDK运行时内部状态维护;对浏览器环境的监察可以包括检测判断当前环境是否支持H5录音API、检测判断当前环境是否支持Web-Socket长连接功能。需要注意的是,在本实施方式中,除了H5-SDK之外的其他SDK依附于微信;由于微信本身已经提供了相应的环境,所以不需要环境监察,只有H5-SDK在初始化时需要进行环境监察。

具体的,语音评测请求中包括的数据有AppID、UserID、线上环境值、回调函数等。

S802:后端服务器与所述终端建立连接。

其中,后端服务器分为测试服务器、线上服务器,其中测试服务器仅在测试时使用,常规线上产品运营时连接的是线上服务器。具体的,SDK根据用户传入的线上环境值判断选择连接的后端服务器。

S803:终端向后端服务器发送待评测数据。

S804:后端服务器根据预设的适配规则在多个音频处理服务器中选择一个目标服务器,并与目标服务器建立连接。

具体的,后端服务器基于目标服务器所支持的协议类型,与所述目标服务器建立连接。

可选地,若后端服务器在选择目标服务器时出现异常,将向终端发送错误码,便于及时检查、恢复错误。

S805:终端开启录音,并将音频流发送至后端服务器。

可以理解的是,音频流的发送频率参考目标服务器于SDK内部进行设定。

S806:后端服务器将音频流和待评测数据发送至目标服务器。

可选地,若所述待评测数据不符合目标服务器的文本信息格式,则后端服务器向终端发送错误码,终端停止录音。

S807:终端结束录音,并向后端服务器发送结束格式流。

S808:后端服务器将结束格式流发送至目标服务器。

S809:目标服务器将评测结果发送至后端服务器。

可选地,若在一定时间内目标服务器未返回评测结果,后端服务器向终端发出错误码。

S810:后端服务器将评测结果发送至终端。

S811:终端对评测结果进行解析。

具体的,SDK对二进制流形式的评测结果进行解析。

可选地,接入产品(App等)端通过SDK初始化时注入的回调函数接收解析后的评测结果。

可选地,终端可以根据用户多次语音评测的评测结果生成发音准确率进步曲线,或者根据用户发音分析生成学习报告。

可选地,终端对评测结果解析完毕后,语音评测系统将录音音频上传至存储系统,以保证在目标服务器返回的音频地址有效期限过后,仍可在存储系统中找到历史录音音频。具体的,若终端的当前使用域符合SDK内部的域名检测规范,则通过SDK直接将录音音频上传至存储系统;否则,通过后端服务器将录音音频上传至存储系统。需要说明的是,上传的过程与评测的过程异步进行,在本次的评测结果返回至终端后,即可开始下一次的语音评测。

可以理解的是,后端服务器可以同时与多个终端建立连接,多个语音评测服务可同时进行,同时进行的多个语音评测服务所选用的目标服务器可以不同,即后端服务器也可以同时与多个不同的音频处理服务器建立连接。

值得一提的是,每一次评测开始时SDK都会根据用户传入的UserId生成一个变量、并提供接入产品(App等)端获取该变量的方法,到下一次评测开始之前,该变量保持不变;并且,SDK与后端服务器进行每一次数据交互时都会带有该变量,以便后端服务器在进行异常查询的时快速定位评测日志。

本申请实施例中,用户可以使用终端采集录音,并经由后端服务器将录音的音频流代理转发至用于实现本次语音评测服务的目标服务器,该目标服务器由后端服务器在多个音频处理服务器中选择并连接,从而降低系统对单个音频处理服务器的依赖性、均衡各音频处理服务器的负载,进而提高评测服务的稳定性和评测效率。此外,若多个音频处理服务器之一的服务接口调用过程出现异常,其他音频处理服务器可供选择为目标服务器,以此保证语音评测功能的正常使用。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

请参考图9,图9是本发明实施方式提出的一种音频处理装置9的结构示意图,以下简称装置9,该装置9可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。如图所示,该装置9包括:接收模块901、选择模块902和处理模块903。

终端连接模块11,用于接收来自终端的语音评测请求,与所述终端建立连接;

接收模块901,用于接收待处理数据。

选择模块902,用于根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块。

处理模块903,用于由所述至少一个目标音频处理模块对所述待处理数据进行处理,得到处理结果。

在一个或多个实施例中,选择模块902根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块,包括如下至少之一:

(1)根据适配规则,从至少一台音频处理服务器中选择一台目标服务器,从所述目标服务器的至少一个音频处理模块中选择目标音频处理模块;

(2)根据适配规则,从至少一台音频处理服务器中选择一台目标服务器,将所述目标服务器所包括的音频处理模块作为目标音频处理模块;

(3)根据适配规则,从音频处理服务器所包括的至少一个音频处理模块中选择目标音频处理模块。

在一个或多个实施例中,所述适配规则基于如下至少之一确定:音频来源、语种信息、音频的内容类型。

在一个或多个实施例中,所述待处理数据包含待评测数据,所述待评测数据包含语音数据以及与所述语音数据对应的文本数据。

在一个或多个实施例中,所述适配规则基于如下至少之一确定:

音素适配规则:所述目标音频处理模块支持所述待评测数据的音素信息的;

类型适配规则:所述目标音频处理模块支持所述待评测数据的类型,所述类型包括单词、短语、句子、段落;

格式适配规则:所述目标音频处理模块支持所述语音数据和/或所述文本数据的格式;

吞吐量适配规则:基于负载状态选择所述目标音频处理模块;

任务任务占比适配规则:基于对音频处理模块设定的任务执行比例和当前完成情况,选择所述目标音频处理模块;

随机适配规则:随机选择所述目标音频处理模块。

在一个或多个实施例中,处理单元903由所述至少一个目标音频处理模块对所述待处理数据进行处理,得到处理结果,包括:

解析所述语音数据,得到内容数据;

将所述内容数据与所述文本数据的进行比对,得到比对结果;以及

至少基于所述比对结果得到所述处理结果。

在一个或多个实施例中,所述处理结果包含评测结果,所述评测结果包括以下之一或其任意组合:总分、流利度、完整度。

在一个或多个实施例中,装置9还包括:返回所述处理结果。

需要说明的是,上述实施例提供的音频处理装置在执行音频处理方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的音频处理装置与音频处理方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

在本申请实施例中,后端服务器根据预设的适配规则在多个音频处理服务器中选择一个目标服务器进行连接,通过所选的目标服务器实现语音评测功能,降低了对单个音频处理服务器的依赖性,可以均衡各音频处理服务器的负载,从而提高评测服务的稳定性和评测效率;若某一音频处理服务器的服务接口调用过程出现异常,可以在其他音频处理服务器中选择目标服务器,保证评测功能的正常使用。此外,由于不同的音频处理服务器各有优缺点,根据评测需求不同可预设不同的适配规则,选择合适的音频处理服务器为目标服务器,可以充分发挥各音频处理服务器的特长。

请参考图10,图10是本发明实施方式提出的一种服务器100,如图所示,服务器100包括:至少一个处理器101;以及,与所述至少一个处理器101通信连接的存储器102;其中,所述存储器102存储有可被所述至少一个处理器101执行的指令,所述指令被所述至少一个处理器101执行,以使所述至少一个处理器101能够执行上述实施方式中的音频处理方法。

其中,存储器102和处理器101采用总线方式连接,总线103可以包括任意数量的互联的总线和桥,总线103将一个或多个处理器101和存储器102的各种电路连接在一起。总线103还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线103和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器101处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器101。

处理器101负责管理总线103和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器102可以被用于存储处理器101在执行操作时所使用的数据。

本发明实施方式还提出一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

技术特征:

1.一种音频处理方法,其特征在于,包括:

接收待处理数据;

根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块;

由所述至少一个目标音频处理模块对所述待处理数据进行处理,得到处理结果。

2.根据权利要求1所述的音频处理方法,其特征在于,所述根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块,包括如下至少之一:

(1)根据适配规则,从至少一台音频处理服务器中选择一台目标服务器,从所述目标服务器的至少一个音频处理模块中选择目标音频处理模块;

(2)根据适配规则,从至少一台音频处理服务器中选择一台目标服务器,将所述目标服务器所包括的音频处理模块作为目标音频处理模块;

(3)根据适配规则,从音频处理服务器所包括的至少一个音频处理模块中选择目标音频处理模块。

3.根据权利要求1所述的音频处理方法,所述适配规则基于如下至少之一确定:音频来源、语种信息、音频的内容类型。

4.根据权利要求1所述的音频处理方法,其特征在于,所述待处理数据包含待评测数据,所述待评测数据包含语音数据以及与所述语音数据对应的文本数据。

5.根据权利要求4所述的音频处理方法,所述适配规则基于如下至少之一确定:

音素适配规则:所述目标音频处理模块支持所述待评测数据的音素信息的;

类型适配规则:所述目标音频处理模块支持所述待评测数据的类型,所述类型包括单词、短语、句子、段落;

格式适配规则:所述目标音频处理模块支持所述语音数据和/或所述文本数据的格式;

吞吐量适配规则:基于负载状态选择所述目标音频处理模块;

任务任务占比适配规则:基于对音频处理模块设定的任务执行比例和当前完成情况,选择所述目标音频处理模块;

随机适配规则:随机选择所述目标音频处理模块。

6.根据权利要求4所述的音频处理方法,其特征在于,所述由所述至少一个目标音频处理模块对所述待处理数据进行处理,得到处理结果,包括:

解析所述语音数据,得到内容数据;

将所述内容数据与所述文本数据的进行比对,得到比对结果;以及

至少基于所述比对结果得到所述处理结果。

7.根据权利要求4所述的音频处理方法,其特征在于,所述处理结果包含评测结果,所述评测结果包括以下之一或其任意组合:总分、流利度、完整度。

8.根据权利要求1所述的音频处理方法,其特征在于,还包括:返回所述处理结果。

9.一种音频处理装置,其特征在于,包括:

接收模块,用于接收待处理数据;

选择模块,用于根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块;

处理模块,用于由所述至少一个目标音频处理模块对所述待处理数据进行处理,得到处理结果。

10.一种服务器,其特征在于,包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至8中任一所述的音频处理方法。

11.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的音频处理方法。

12.一种语音评测系统,其特征在于,包括:至少一个终端以及如权利要求10所述的服务器。

技术总结

本发明实施例涉及语音评测技术领域,公开了一种音频处理方法、装置、服务器、存储介质及系统,所述方法包括:接收待处理数据;根据适配规则在多个音频处理模块中选择至少一个目标音频处理模块;由至少一个目标音频处理模块对待处理数据进行处理,得到处理结果。本发明实施例提高了评测服务稳定性和评测效率,保证评测功能的正常使用。

技术研发人员:胡凯;贾子灵;刘军立;吴瑕

受保护的技术使用者:北京大米科技有限公司

技术研发日:.05.27

技术公布日:.09.27

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。