数据处理方法、装置和存储介质制造方法及图纸

技术编号:21249259 阅读:45 留言:0更新日期:2019-06-01 08:29
本发明专利技术提供一种数据处理方法、装置和存储介质,该方法应用于电子设备,电子设备包括设置在每个音区的音频输入设备,该方法包括:获取至少两个音区的音频输入设备采集的语音数据;判断每个音区对应的数据缓存容器中是否存在可用空间;调用第一线程依次向每个存在可用空间的数据缓存容器写入对应的语音数据,并丢弃不存在可用空间的数据缓存容器对应的语音数据。本发明专利技术能够解决因车载终端的录音管道的写入阻塞,导致车载终端的语音引擎无法工作的技术问题。

Data processing methods, devices and storage media

The invention provides a data processing method, device and storage medium, which is applied to electronic devices, including audio input devices located in each sound area. The method includes: acquiring voice data collected by audio input devices in at least two sound areas; determining whether there is available space in the data buffer container corresponding to each sound area; and calling the first thread in turn. Write the corresponding voice data to each data buffer container with available space, and discard the voice data corresponding to the data buffer container without available space. The invention can solve the technical problem that the voice engine of the vehicle terminal can not work because of the writing blockage of the recording pipeline of the vehicle terminal.

【技术实现步骤摘要】
数据处理方法、装置和存储介质
本专利技术涉及智能设备
,尤其涉及一种数据处理方法、装置和存储介质。
技术介绍
车载终端可以通过语音与用户进行交互,为用户提供导航、播放音乐、拨打电话等服务。现有的车载终端的麦克风是对准主驾驶位来设计的,可以为车辆的驾驶者提供语音服务。这种设计方式使车载终端无法为车辆上的其他成员提供服务。目前,推出了一种可以满足车辆全员使用的车载四音区方案,该方案中,将车辆内部的空间分为前后左右四个音区,每个音区覆盖车辆上的一个位置,车载终端在每个音区设置有独立的麦克风阵列,可以与该音区对应位置的用户进行语音交互。由于车辆内部的空间较小,虽然通过麦克风阵列模组算法可以对四个位置制造一定的声音隔离度,但是任一位置的用户在语音唤醒车载终端时,还是会有一部分声音被其它音区的麦克风阵列采集,导致多个音区的麦克风阵列会采集到来自相同声源的语音数据。因此,为了识别出到底哪个音区被用户唤醒,车载终端会调用用于执行写入操作的线程,采用串行处理的方式,将四个音区的麦克风阵列所采集的语音数据写入该音区的录音管道中。然后,车载终端可以通过各音区对应的录音管道,将各音区的麦克风阵列所采集的语音数据同步传递给语音引擎中与每个音区对应的唤醒线程。这样,车载终端可以通过语音引擎中与每个音区对应的唤醒线程,同步识别该唤醒线程对应的音区是否被唤醒。上述每个音区对应的录音管道的缓存大小有限,当语音数据写入超过录音管道的缓存大小时,会触发该录音管道的写入阻塞。然而,由于车载终端调用用于执行写入操作的线程,将每个音区的麦克风阵列所采集的语音数据写入该音区的录音管道中时,采用的是串行处理的方式。因此,若其中某一录音管道出现写入阻塞,则会导致车载终端调用用于执行写入操作的线程执行写入操作时,无法跳过该出现写入阻塞的录音管道,向其他音区的录音管道写入数据,进而导致所有音区对应的唤醒线程无法从各自音区对应的录音管道中读取缓存的语音数据,致使车载终端的语音引擎无法工作。
技术实现思路
本专利技术提供一种数据处理方法、装置和存储介质,用于解决因车载终端的录音管道的写入阻塞,导致车载终端的语音引擎无法工作的技术问题。本专利技术的第一方面提供一种数据处理方法,所述方法应用于电子设备,所述电子设备包括设置在每个音区的音频输入设备,所述方法包括:获取至少两个音区的音频输入设备采集的语音数据;判断每个所述音区对应的数据缓存容器中是否存在可用空间;调用第一线程依次向每个存在可用空间的数据缓存容器写入对应的音区的语音数据,并丢弃不存在可用空间对应的语音数据。可选的,所述判断每个所述音区的对应的数据缓存容器中是否存在可用空间,包括:判断所述音区对应的数据缓存容器的剩余空间,是否大于或等于所述音区的音频输入设备采集的语音数据的大小;若是,则确定所述音区对应的数据缓存容器存在可用空间;若否,则确定所述音区对应的数据缓存容器不存在可用空间。可选的,所述获取至少两个音区的音频输入设备采集的语音数据,包括:调用音频输入设备的接口,获取语音数据包,所述语音数据包包括所述至少两个音区的音频输入设备采集的语音数据;从所述语音数据包中分离出每个所述音区的音频输入设备采集的语音数据。可选的,所述方法还包括:若调用第一数据缓存容器对应的第二线程,从所述第一数据缓存容器中未读取到缓存的语音数据,则将所述第一数据缓存容器对应的第二线程挂起,所述第一数据缓存容器为未缓存有语音数据的数据缓存容器。可选的,所述方法还包括:在将所述第一数据缓存容器对应的第二线程挂起的时长大于预设时长时,恢复所述第一数据缓存容器对应的第二线程。本专利技术的第二方面提供一种数据处理装置,所述装置应用于电子设备,所述电子设备包括设置在每个音区的音频输入设备,所述装置包括:获取模块,用于获取至少两个音区的音频输入设备采集的语音数据;第一处理模块,用于判断每个所述音区对应的数据缓存容器中是否存在可用空间;写模块,用于调用第一线程依次向每个存在可用空间的数据缓存容器写入对应的语音数据,并丢弃不存在可用空间的数据缓存容器对应的语音数据。可选的,所述第一处理模块,具体用于判断所述音区对应的数据缓存容器的剩余空间,是否大于或等于所述音区的音频输入设备采集的语音数据的大小;若是,则确定所述音区对应的数据缓存容器存在可用空间;若否,则确定所述音区对应的数据缓存容器不存在可用空间。可选的,所述获取模块,具体用于调用音频输入设备的接口,获取语音数据包,并从所述语音数据包中分离出每个所述音区的音频输入设备采集的语音数据;所述语音数据包包括所述至少两个音区的音频输入设备采集的语音数据。可选的,所述装置,还包括:读取模块,用于调用第一数据缓存容器对应的第二线程,从所述第一数据缓存容器中读取缓存的语音数据,所述第一数据缓存容器为未缓存有语音数据的数据缓存容器;第二处理模块,用于在所述读取模块调用第一数据缓存容器对应的第二线程,从所述第一数据缓存容器中未读取到缓存的语音数据时,将所述第一数据缓存容器对应的第二线程挂起。可选的,所述第二处理模块,还用于在将所述第一数据缓存容器对应的第二线程挂起的时长大于预设时长时,恢复所述第一数据缓存容器对应的第二线程。本专利技术的第三方面提供一种数据处理装置,包括:至少一个处理器和存储器;所述存储器存储计算机执行指令;所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述数据处理装置执行上述数据处理方法。本专利技术的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机执行指令,当所述计算机执行指令被处理器执行时,实现上述数据处理方法。本专利技术提供的数据处理方法、装置和存储介质,电子设备可以在调用第一线程依次向各音区对应的数据缓存容器执行数据写入操作之前,先判断各音区对应的数据缓存容器是否存在可用空间,进而仅向具有可用空间的数据缓存容器执行写入操作。通过这种方式,可以避免电子设备因调用第一线程向无可用空间的数据缓存容器执行写入操作,导致出现写入阻塞的情况,从而可以避免因无法跳过出现写入阻塞的数据缓存容器,向其他音区的数据缓存容器写入数据,而导致所有音区对应的唤醒线程无法从该音区对应的数据缓存容器读取到缓存的语音数据,致使车载终端的语音引擎无法工作的问题。这样,在某一数据缓存容器出现写入阻塞时,电子设备仍然可以调用第一线程向其他数据缓存容器写入语音数据,从而可以使语音引擎正常工作。附图说明图1为本专利技术提供的车载终端的应用场景示意图;图2示出了一种将各音区的麦克风阵列采集的语音数据传递给语音引擎的示意图;图3为本专利技术提供的一种数据处理方法的流程示意图;图4为本专利技术提供的一种数据处理装置的结构示意图;图5为本专利技术提供的另一种数据处理装置的结构示意图;图6为本专利技术提供的又一种数据处理装置的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术的实施例,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术提供的车载终端的应用场景示意图。如图1所示,为了满足车辆全员可以使用车载终端,目前推出了本文档来自技高网
...

【技术保护点】
1.一种数据处理方法,其特征在于,所述方法应用于电子设备,所述电子设备包括设置在每个音区的音频输入设备,所述方法包括:获取至少两个音区的音频输入设备采集的语音数据;判断每个所述音区对应的数据缓存容器中是否存在可用空间;调用第一线程依次向每个存在可用空间的数据缓存容器写入对应的语音数据,并丢弃不存在可用空间的数据缓存容器对应的语音数据。

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于电子设备,所述电子设备包括设置在每个音区的音频输入设备,所述方法包括:获取至少两个音区的音频输入设备采集的语音数据;判断每个所述音区对应的数据缓存容器中是否存在可用空间;调用第一线程依次向每个存在可用空间的数据缓存容器写入对应的语音数据,并丢弃不存在可用空间的数据缓存容器对应的语音数据。2.根据权利要求1所述的方法,其特征在于,所述判断每个所述音区的对应的数据缓存容器中是否存在可用空间,包括:判断所述音区对应的数据缓存容器的剩余空间,是否大于或等于所述音区的音频输入设备采集的语音数据的大小;若是,则确定所述音区对应的数据缓存容器存在可用空间;若否,则确定所述音区对应的数据缓存容器不存在可用空间。3.根据权利要求1所述的方法,其特征在于,所述获取至少两个音区的音频输入设备采集的语音数据,包括:调用音频输入设备的接口,获取语音数据包,所述语音数据包包括所述至少两个音区的音频输入设备采集的语音数据;从所述语音数据包中分离出每个所述音区的音频输入设备采集的语音数据。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:若调用第一数据缓存容器对应的第二线程,从所述第一数据缓存容器中未读取到缓存的语音数据,则将所述第一数据缓存容器对应的第二线程挂起,所述第一数据缓存容器为未缓存有语音数据的数据缓存容器。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在将所述第一数据缓存容器对应的第二线程挂起的时长大于预设时长时,恢复所述第一数据缓存容器对应的第二线程。6.一种数据处理装置,其特征在...

【专利技术属性】
技术研发人员:彭汉迎
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1