1.本发明涉及语音处理技术领域,具体涉及一种语音流数据的处理方法、装置及系统。
背景技术:2.现有技术中,实时同传功能通常在网络稳定的环境下进行,基本不会出现因为网络问题导致的语音流丢包的情况。当网络出现波动时,以串行的形式将堆积的语音数据发送至服务器。
3.但在复杂网络条件下,例如,用户在使用同传时网络环境出现波动,这时会发生语音数据流丢包的情况,导致服务器无法正确对语音进行文本转写,出现转写失败、断句错误等情况。
技术实现要素:4.鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的语音流数据的处理方法、装置及系统。
5.根据本发明实施例的一个方面,提供了一种语音流数据的处理方法,应用于服务器,所述方法包括:
6.接收数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号;
7.若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;
8.暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
9.根据本发明实施例的另一方面,提供了一种语音流数据的处理方法,应用于客户端,所述方法包括:
10.向服务器发送数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号,以使所述服务器根据所述处理顺序和所述数据报文中的序号,对所述数据报文进行处理。
11.根据本发明实施例的又一方面,提供了一种语音流数据的处理装置,包括:
12.收发模块,用于接收数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号;
13.处理模块,用于若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到
封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
14.根据本发明实施例的又一方面,提供了一种语音流数据的处理装置,包括:
15.收发模块,用于向服务器发送数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号,以使所述服务器执行如下操作:
16.若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
17.根据本发明实施例的又一方面,提供了一种语音流数据的处理系统,包括客户端和服务器,所述客户端包括如上所述的客户端侧的语音流数据的处理装置,所述服务器包括如上所述的服务器侧的语音流数据的处理装置。
18.根据本发明实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
19.所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述的语音流数据的处理方法对应的操作。
20.根据本发明实施例的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述的语音流数据的处理方法对应的操作。
21.根据本发明上述实施例提供的方案,服务器侧的语音流数据的处理方法可以通过接收数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号;若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文;由此解决了复杂网络环境中使用同传时发生错误的问题,取得了使用户在复杂网络环境中使用同传时发生错误的情况减少,并且在出现网络波动的情况下,能够处理服务器未接收到的数据而不影响实时的语音流的处理的有益效果。
22.上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
23.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明
实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
24.图1示出了本发明实施例提供的语音流数据的处理方法流程图;
25.图2示出了本发明另一实施例提供的语音流数据的处理方法的流程图;
26.图3示出了本发明另一个实施例提供的语音流数据的处理方法的流程图;
27.图4示出了本发明实施例的语音流数据的处理方法中服务器对数据报文进行文本转换处理的流程示意图;
28.图5示出了本发明实施例的语音流数据的处理方法中服务器接收到的数据报文的情况示意图;
29.图6示出了本发明实施例的语音流数据的处理方法的具体实现实例示意图;
30.图7示出了本发明实施例提供的语音流数据的处理装置的模块示意图;
31.图8示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
32.下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
33.图1示出了本发明实施例提供的语音流数据的处理方法的流程图。如图1所示,该方法应用于客户端,包括以下步骤:
34.步骤11,向服务器发送数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号,以使所述服务器执行下述操作:
35.所述服务器若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
36.该实施例,语音流数据的处理方法应用于客户端,客户端向服务器发送封装着语音流数据的数据报文,由服务器按照数据报文中的序号和处理顺序对所述数据报文进行处理,然后还可以通过语义分析处理,即实时进行文本转写处理,得到语义分析结果,其中,语义分析结果包括语音流数据对应的数据报文的序号,该序号用于表示数据报文的发送顺序;最终将语义分析结果发送给客户端,使得客户端接收到语义分析结果,可根据该序号,实时更新同传的结果;数据报文优选的可以是websocket协议的数据报文,websocket协议是客户端与服务器之间进行全双工的通信协议;数据报文中包含的序列字段优选的可以是seq字段,该序列字段的预设字段优选的可以为32比特位长度,用于记录表示数据报文的发送顺序的序号;当然也可以是16比特位或者64比特位或者128比特位,可以根据实现数据报文的长度确定。
37.本发明一可选的实施例中,应用于客户端的语音流数据的处理方法,还可以包括:
38.步骤12,在没有接收到所述服务器反馈的所述数据报文接收成功的应答消息时,
将所述数据报文存入报文重传队列;
39.步骤13,将所述报文重传队列中的数据报文重新向所述服务器发送。
40.本实施例中,客户端向服务器发送了数据报文之后,等待服务器返回给客户端与数据报文对应的应答消息,以示服务器成功接收到了该数据报文;当客户端没有收到服务器反馈的数据报文接收成功的应答消息时,客户端会将该数据报文存入报文重传队列中;报文重传队列用于存放客户端发送给服务器失败的数据报文,客户端没有接收到发送给服务器的数据报文对应的应答消息时,表示因传输网络等问题而导致了丢包现象,客户端会将该数据报文存入报文重传队列中;
41.而当客户端的网络传输恢复正常时,客户端会将报文重传队列中的数据报文重新向服务器发送;
42.需要说明的是,应答消息优选的可以为ack报文(acknowledgement,确认字符),即一种传输类控制字符,用于表示发来的数据报文已确认接受无误。
43.本发明一可选的实施例中,应用于客户端的语音流数据的处理方法,还可以包括:
44.步骤14,接收所述服务器反馈的所述服务器对所述数据报文进行语义分析处理的语义分析结果。
45.本实施例中,当客户端成功将数据报文发送给服务器,客户端等待服务器对已成功发送给服务器的数据报文进行处理,当服务器对数据报文处理完成后,会将语义分析结果反馈给客户端,客户端可根据反馈的语义分析结果进行实时更新,其中,语义分析结果优选的包括用于表示数据报文的发送顺序的序号;需要说明的是,语义分析结果优选的可以是websocket协议的数据报文。
46.图2示出了本发明实施例提供的语音流数据的处理方法的一个具体的实施例的流程图。如图2所示,
47.一个具体的实施例中,客户端的用户语音流经拆分处理后,得到数据报文,该数据报文依据发送顺序,其序列字段分别为seq=1、seq=2、
……
、seq=n,这里的1、2、
……
、n,即为所述数据报文的发送顺序的序号;客户端将数据报文依次发送至服务器,当发送成功后,服务器会返回每个数据报文对应的应答消息ack报文至客户端,以示服务器已成功接收到该数据报文;当客户端超过一定时间未接收到序列字段为seq=5的ack报文和序列字段为seq=1的ack报文,客户端会将该数据报文存入fifo(先进先出)队列中,该fifo队列为报文重传队列,等待当客户端的网络传输恢复正常时,客户端会将fifo队列中的数据报文重新向服务器进行发送。
48.本发明的实施例,通过向服务器发送数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号,以使所述服务器执行下述操作:所述服务器若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文;解决了用户在复杂网络环境中使用同传时易发生丢包的问题,实现了在处理因网络原因发送失败的语音流数据报文时基本不存在延时,能够较大程度上使同传功能在复杂网络环境条件下能够正常进行。
49.图3示出了本发明另一个实施例提供的语音流数据的处理方法的流程图。如图3所示,该方法应用于服务器,包括以下步骤:
50.步骤31,接收数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号;
51.步骤32,若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;
52.步骤33,暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
53.该实施例中,语音流数据的处理方法应用于服务器,服务器接收客户端发送的数据报文,该数据报文为将客户端的语音流数据转换为二进制字节码并封装得到的数据报文,服务器将成功接收到的数据报文中的语音流数据按照表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号和数据报文中的序号将该数据报文与在该关联数据报文之前接收到的数据报文进行处理,得到处理结果;最终将处理结果发送给客户端,使得客户端可根据序号,实时更新同传的结果。其中,数据报文包括用于记录表示数据报文的发送顺序的序号的序列字段,序列字段为预设字段比特位的字段;
54.这里,数据报文优选的可以是websocket协议的数据报文,websocket协议是客户端与服务器之间进行全双工的通信协议;数据报文中包含的序列字段为预设字段比特位的字段,优选的可以是seq字段,该序列字段的预设字段优选的可以为32比特位长度,用于记录表示数据报文的发送顺序的序号;当然也可以是16比特位或者64比特位或者128比特位,可以根据实现数据报文的长度确定。
55.本发明一可选的实施例中,所述处理,包括:
56.基于语音流数据执行同声传译。
57.本实施例中,根据处理顺序和数据报文中的序号进行报文处理时,是基于语音流数据对数据报文执行同声传译。
58.本发明一可选的实施例中,步骤32在实现时,若所述数据报文中封装的序号与目标链表的第一支链尾节点的数据报文中封装的序号不连续,可以包括:
59.步骤321,若所述数据报文中封装的序号与目标链表的第一支链尾节点的数据报文中封装的序号不连续,则判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;所述第一支链,用于依照所述处理顺序,依次存储待进行处理的报文;
60.本发明一可选的实施例中,步骤32在实现时,若所述数据报文中封装的序号与目标链表的第一支链尾节点的数据报文中封装的序号连续,可以包括:
61.步骤322,将所述数据报文,存储在所述目标链表的第二支链中;所述第二支链,用于依照所述处理顺序,依次存储待合并至所述第一支链的报文。
62.本实施例中,服务器将客户端发送的数据报文加入至目标链表中,当该目标链表的第一支链尾节点的数据报文中封装的序号于待加入的数据报文的序号不连续的时候,则将该数据报文判定为按照处理顺序依次进行报文处理时排列在缺失的序号对应的关联数
据报文后处理的报文;当目标链表的第一支链尾节点的数据报文中封装的序号于待加入的数据报文的序号连续的时候,则将该待加入的数据报文存储至目标链表中的第二支链;
63.需要说明的是,上述的第一支链用于依照处理顺序,依次将待进行处理的数据报文存储;而第二支链用于依照处理顺序,依次存储待合并至所述第一支链的报文,即第二支链中存储的报文,后续会根据数据报文的序号合并至第一支链中。本发明一可选的实施例中,步骤33包括:
64.步骤331,直至接收到封装有所述缺失的序号的关联数据报文,作为第一支链尾节点存储至所述第一支链尾节点,且所述缺失的序号与所述数据报文封装的序号连续时,将所述数据报文合并至所述第一支链;
65.步骤332,按照所述处理顺序,依次处理所述第一支链中的所述缺失的序号对应的关联数据报文,以及所述数据报文。
66.本实施例,当第一支链未接收到封装有缺失的序号的关联数据报文,暂停对于数据报文的处理,直至接收到封装有缺失的序号的关联数据报文,然后将接收到的封装有缺失的序号的关联数据报文昨晚第一支链尾节点存储至第一支链中,按照处理顺序,依次对第一支链中的缺失的序号对应的关联数据报文和数据报文进行处理。
67.本发明一可选的实施例中,还包括:
68.步骤34,将所述缺失的序号对应的关联数据报文和已完成处理的数据报文进行语义分析,得到语义分析结果;
69.步骤35,将所述语义分析结果发送至客户端。
70.本实施例中,将步骤332中按照处理顺序,依次对第一支链中的缺失的序号对应的关联数据报文和数据报文进行处理的结果进行语义分析,该语义分析用于分析第一支链上的数据报文是否可以分析为一句语义明确的语句,若可以,则语义分析结果为可以发送至客户端,若不可以,则语义分析结果为不可以发送至客户端。
71.图4出示了本发明实施例提供的语音流数据的处理方法中,服务器对数据报文进行文本转换处理的流程示意图。如图4所示,
72.服务器根据接收到的数据报文的序列字段中的序号与处理顺序进行判断;
73.服务器维护一个目标链表,当服务器接收到数据报文时,若链表为空,则将该数据报文作为一个新的支链的头节点加入到链表中,并将其发送到服务器中进行语义分析和文本转换处理;
74.若链表为非空,则根据服务器接收到的数据报文的序号与处理顺序,确定数据报文是否作为一个新的节点加入链表的支链中,当该数据报文为实时语音流数据(当前被成功接收的数据报文)时,则将该数据报文作为一个新的节点加入到链表的第一支链中;当前数据报文的序号为非实时语音流数据(即重传队列中的数据报文)时,则将该数据报文作为一个新的节点加入到所述链表的第二支链中;然后判断该数据报文加入的链表中的任意支链是否可以与其他支链合并,若可以,进行合并支链并创建一个新的线程,将支链上的节点对应的数据报文对链表的任意支链上的所有节点进行语义分析和文本转换处理,得到语义分析结果;若不可以,则将该数据报文作为一个新的支链的头节点,加入到链表中,并对链表的任意支链上的所有节点进行文本转换处理,得到语义分析结果。
75.通过对服务器的链表中的所有节点进行语义分析后,会实时反馈语义分析结果,
其中,分析结果包括type标识字符,用于表示语义分析结果的内容是否为最终的语义分析结果;若type标识字符为0,则继续进行对接收到的数据报文进行如上述步骤32的过程;
76.若type标识字符为1,则表示语音流数据已转写完成,将语音流数据所在支链的头节点从链表中断开,并将服务器的语义分析结果得到的文本进行翻译,得到译文,将语义分析结果和译文作为处理结果反馈给客户端,其中,处理结果包括语音流数据对应的数据报文的序号,序号用于表示该数据报文的发送顺序。使客户端根据数据报文的序号,实时更新同传的结果。
77.图5出示了本发明实施例提供的语音流数据的处理方法中服务器接收数据报文的情况示意图;客户端发送一段话,服务器接收该一段话的数据报文,根据数据报文的序号,确定没有成功接收第3至第n
‑
2的数据报文。服务器在后续的时间内可以继续接收客户端重新发送的第3至第n
‑
2的数据报文,并基于这些数据报文的序号进行语义分析处理和文本转写处理。
78.图6出示了本发明实施例提供的语音流数据的处理方法的一具体实现实例的示意图。如图6所示,
79.一个具体的实施例中,客户端的用户将“今天天气很好,我们要去春游”两句话使用同传的方式进行翻译。假设每一个汉字的语音流需要一个数据报文来发送(实际处理时,一个汉字可以由多个数据报文来发送);此时,考虑如下的几种情况:
80.情况1:用户刚开始说“今”或“我”,此时服务器的链表为空,当服务器收到上述“今”或“我”文字的语音流数据对应的数据报文时,会将该数据报文作为一个新的支链的头节点放入链表中,并将该数据报文直接发送到服务器中的实时转写服务进行语义分析处理和文本转换处理。
81.情况2:用户说的语音流中“天气很”对应的数据报文因为网络原因未能成功发送到服务器,在用户说“好”的时候,网络恢复。此时服务器的链表中已经存在“今”和“天”的文字的语音流数据对应的数据报文,当网络恢复时,服务器几乎同时会收到“天”、“气”、“很”、“好”以及“我”等数据报文。此时,“好”数据报文会作为新的支链的头节点加入到链表中,其余的数据报文按照顺序依次在两条支链中添加,直到收到“很”数据报文时,这时服务器依据相邻链表尾节点和头节点序号相邻作为判断,将两个支链进行合并,于是将第二支链合并到第一支链中,并进行文本转换处理。此时转写到“好”时一段话已经结束,于是将“今天天气很好”支链从链表中删除。
82.本发明的实施例,通过接收数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号;若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文,实现了在复杂网络环境中使用同传时错误的减少,并且在出现网络波动的情况下能够处理服务器未接收到的数据,而不影响实时的语音流的处理;在处理因网络原因发送失败的语音流时基本不存在延时,能够较大程度上使同传功能在复杂网络环境条件下能够正常进行。
83.图7出示了本发明实施例提供的语音流数据的处理装置的结构示意图。
84.如图7所示,该装置70包括:
85.收发模块71,用于接收数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号;
86.处理模块72,用于若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
87.可选的,所述处理,包括:
88.基于语音流数据执行同声传译。
89.可选的,所述处理顺序包括依照连续的序号依次处理;
90.则,根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文,包括:
91.若所述数据报文中封装的序号与目标链表的第一支链尾节点的数据报文中封装的序号不连续,则判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;
92.所述第一支链,用于依照所述处理顺序,依次存储待进行处理的报文。
93.可选的,将所述数据报文进行存储,包括:
94.将所述数据报文,存储在所述目标链表的第二支链中;所述第二支链,用于依照所述处理顺序,依次存储待合并至所述第一支链的报文。
95.可选的,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文,包括:
96.直至接收到封装有所述缺失的序号的关联数据报文,作为第一支链尾节点存储至所述第一支链尾节点,且所述缺失的序号与所述数据报文封装的序号连续时,将所述数据报文合并至所述第一支链;
97.按照所述处理顺序,依次处理所述第一支链中的所述缺失的序号对应的关联数据报文,以及所述数据报文。
98.可选的,语音流数据的处理方法还包括:
99.将所述缺失的序号对应的关联数据报文和已完成处理的数据报文进行语义分析,得到语义分析结果;
100.将所述语义分析结果发送至客户端。
101.需要说明的是,该装置是与上述应用于服务器的语音流数据的处理方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
102.本发明实施例提供了一种语音流数据的处理装置,应用于客户端,该装置包括:
103.收发模块,用于向服务器发送数据报文,所述数据报文封装有语音流数据,以及,表征所述数据报文与所述数据报文的关联数据报文之间的处理顺序的序号,以使所述服务
器执行如下操作:
104.若根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;则,将所述数据报文进行存储;暂停对于所述数据报文的所述处理,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文。
105.可选的,所述处理,包括:
106.基于语音流数据执行同声传译。
107.可选的,所述处理顺序包括依照连续的序号依次处理;
108.则,根据所述处理顺序和所述数据报文中的序号,判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文,包括:
109.若所述数据报文中封装的序号与目标链表的第一支链尾节点的数据报文中封装的序号不连续,则判定:所述数据报文为按照所述处理顺序依次进行报文处理时,排列在缺失的序号对应的关联数据报文后处理的报文;
110.所述第一支链,用于依照所述处理顺序,依次存储待进行处理的报文。
111.可选的,将所述数据报文进行存储,包括:
112.将所述数据报文,存储在所述目标链表的第二支链中;所述第二支链,用于依照所述处理顺序,依次存储待合并至所述第一支链的报文。
113.可选的,直至接收到封装有所述缺失的序号的关联数据报文后,按照所述处理顺序,依次处理所述缺失的序号对应的关联数据报文,以及所述数据报文,包括:
114.直至接收到封装有所述缺失的序号的关联数据报文,作为第一支链尾节点存储至所述第一支链尾节点,且所述缺失的序号与所述数据报文封装的序号连续时,将所述数据报文合并至所述第一支链;
115.按照所述处理顺序,依次处理所述第一支链中的所述缺失的序号对应的关联数据报文,以及所述数据报文。
116.可选的,语音流数据的处理方法还包括:
117.将所述缺失的序号对应的关联数据报文和已完成处理的数据报文进行语义分析,得到语义分析结果;
118.将所述语义分析结果发送至客户端。
119.需要说明的是,该装置是与上述应用于服务器的语音流数据的处理方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
120.本发明实施例提供了一种语音流数据的处理系统,包括客户端和服务器,所述客户端包括如上述的语音流数据的处理装置,所述服务器包括如上述的语音流数据的处理装置。上述客户端侧的语音流数据的处理方法以及服务器端的语音流数据的处理方法的所有实现方式均适用于该系统的实施例中,也能达到相同的技术效果。
121.本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的语音流数据的处
理方法。
122.图8示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
123.如图8所示,该计算设备可以包括:处理器(processor)、通信接口(communications interface)、存储器(memory)、以及通信总线。
124.其中:处理器、通信接口、以及存储器通过通信总线完成相互间的通信。通信接口,用于与其它设备比如客户端或其它服务器等的网元通信。处理器,用于执行程序,具体可以执行上述用于计算设备的语音流数据的处理方法实施例中的相关步骤。
125.具体地,程序可以包括程序代码,该程序代码包括计算机操作指令。
126.处理器可能是中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
127.存储器,用于存放程序。存储器可能包含高速ram存储器,也可能还包括非易失性存储器(non
‑
volatile memory),例如至少一个磁盘存储器。
128.程序具体可以用于使得处理器执行上述任意方法实施例中的语音流数据的处理方法。程序中各步骤的具体实现可以参见上述语音流数据的处理实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
129.在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的最佳实施方式。
130.在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
131.类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
132.本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何
组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
133.此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
134.本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
135.应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。