发明内容
本申请提供一种数据传输方法、装置、电子设备和存储介质,用于提升传输效率、且有利于进一步减少系统中数据传输接口的数量。
第一方面,本申请实施例提供了一种数据传输方法,该数据传输方法应用于发送设备,该发送设备与多个数据采集接口和多个数据传输通道连接,每个数据采集接口用于与对应的音频采集设备连接。其中,该发送设备可以是DSP芯片。该方法具体包括以下步骤:
发送设备通过多个数据采集接口获取对应的音频采集设备采集到的音频数据;发送设备将获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合;至少一个数据组合中的每个数据组合包括至少两个音频采集设备采集到的音频数据,每个数据组合的长度小于或等于第一阈值,所述至少一个数据组合的数量小于或等于多个数据传输通道的数量;发送设备将每个数据组合通过多个数据传输通道中的一个数据传输通道发出。
采用上述方案,在音频采集设备采集的音频数据的长度小于数据传输通道的带宽(第一阈值)时,可以将两个或两个以上的音频采集设备采集的音频数据进行叠加为一个数据组合,并将该数据组合通过一个数据传输通道传输,即实现了一个数据传输通道对应多个音频采集设备,有利于提升传输资源的利用率,提升了数据的传输效率、且由于减少了数据传输通道的数量,有利于进一步减少接收设备用于接收音频数据的接口数量。
在一种可能的设计中,发送设备将获取到的音频数据中音频数据的长度等于第一阈值的音频数据,通过多个数据传输通道中用于传输至少一个数据组合外的数据传输通道发出。
在一种可能的设计中,若发送设备叠加得到的至少一个数据组合的数量大于1,用于发出所述至少一个数据组合中的任意两个数据组合的数据传输通道并不相同。
采用上述方案,发送设备将每个数据组合分别通过一个数据传输通道发出,可以实现提升数据传输效率以及减少传输时延。
在一种可能的设计中,发送设备将每个数据组合通过至少一个数据传输通道中的一个数据传输通道发出时,发送设备还可以根据数据组合序号与数据传输通道序号的对应关系,确定每个数据组合对应的数据传输通道的序号。并将每个数据组合通过对应序号的数据传输通道发出。
采用上述方案,可以将数据组合按照通过特定的数据传输通道发出,后端连接的接收设备可以根据数据传输通道的序号,确定是否接收到完整的数据,以及确定数据传输通道中接收的数据组合中所包含的音频数据。
在一种可能的设计中,发送设备将获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合,包括:基于预先设置的叠加规则,发送设备将获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合。其中,叠加规则是根据每一个音频采集设备的采集深度设置的、且音频采集设备的采样深度与音频采集设备输出的音频数据的长度一对一。
采用上述方案,可以按照基于音频采集设备的采集深度设置的叠加规则,将获取到的音频数据中音频数据的长度小于第一阈值的音频数据叠加为至少一个数据组合,从而保证每一个数据组合的长度均不超过数据传输通道的带宽,从而可以将每个数据组合通过一个数据传输通道发出,实现一个数据传输通道对应多个音频采集设备。
在一种可能的设计中,发送设备通过多个数据采集接口获取对应的音频采集设备采集到的音频数据之前,还包括:
发送设备通过多个数据传输通道中的至少一个数据传输通道接收来自接收设备的第一控制指令,第一控制指令中包含用于调整对应的音频采集设备的采集深度的第一目标参数;发送设备通过多个数据采集接口将第一控制指令发送给对应的音频采集设备;发送设备基于第一目标参数设置叠加规则,并将叠加规则通过多个数据传输通道中的至少一个数据传输发送给接收设备。
采用上述方案,可以根据在数据传输之前接收设备发送的第一控制指令,确定每一个音频采集设备的采集深度,并根据音频采集设备的采集深度预先计算该音频采集设备采集的音频数据的长度,并根据预先计算的每一个音频采集设备采集的音频数据的长度设置叠加规则,在后期进行数据传输时,可以直接使用上述设置的叠加规则对获取到的所有音频数据进行叠加,叠加后的每个数据组合的长度均不大于数据传输通道的带宽,从而可以实现一个数据传输通道对应多个音频采集设备,进一步提升数据传输效率。
在一种可能的设计中,在发送设备通过多个数据采集接口获取对应的音频采集设备采集到的音频数据之前,还包括:
发送设备通过多个数据传输通道中的至少一个数据传输通道接收来自接收设备的第二控制指令和叠加规则;第二控制指令中包含用于调整对应的音频采集设备的采集深度的第二目标参数;发送设备通过多个数据采集接口将第二控制指令发送给对应的音频采集设备。
采用上述方案,可以根据在数据传输之前接收设备发送的第二控制指令,控制连接的音频采集设备的采集深度,并利用接收设备发送的叠加规则,对更改采集深度的音频采集设备采集的音频数据直接进行叠加,并通过一个数据传输通道传输,从而实现一个数据传输通道对应多个音频采集设备,进一步提升数据传输效率,且有利于了减少发送设备的工作量。
在一种可能的设计中,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
第二方面,本申请实施例提供了一种数据传输方法,该数据传输方法应用于接收设备,该接收设备通过多个数据传输通道与发送设备连接,其中,该发送设备可以是SOC芯片。该方法具体包括以下步骤:
接收设备接收多个数据传输通道传输的至少一个数据组合;至少一个数据组合中的每个数据组合通过多个数据传输通道中的一个数据传输通道传输,每个数据组合中包括至少两个音频采集设备采集的音频数据;音频采集设备通过对应的数据采集接口与发送设备连接;接收设备对接收的至少一个数据组合进行拆分,得到多个音频采集设备采集的音频数据;接收设备对拆分后的多个音频采集设备采集的音频数据进行处理。
采用上述方法,可以通过一个数据传输通道获取到两个或两个以上的音频采集设备采集的音频数据,实现了一个数据传输通道对应多个音频采集设备,即实现了数据传输通道复用,相比于传输一个音频采集设备采集的音频数据,叠加后的数据组合的长度更接近与数据传输通道的带宽,实现了提升数据传输效率、且有利于减少了数据传输通道的数量。
在一种可能的设计中,接收设备对接收的数据组合进行拆分,包括:
接收设备根据预先设置的叠加规则,对接收的至少一个数据组合进行拆分。其中,叠加规则是根据每一个音频采集设备的采集深度设置的、且音频采集设备的采样深度与音频采集设备采集的音频数据的长度一对一。
在一种可能的设计中,接收设备根据预先设置的叠加规则,对接收的数据组合进行拆分,包括:利用数据传输通道的序号以及数据组合序号与数据传输通道序号的对应关系,确定每个数据组合的序号;根据每个数据组合的序号以及叠加规则,对至少一个数据组合进行拆分。
采用上述方案,可以利用数据组合序号与数据传输通道序号的对应关系,确定该数据传输通道接收的数据组合的序号,并利用数据组合的序号从叠加规则中确定该数据组合中音频数据的叠加顺序,并基于音频数据的叠加顺序对其进行拆分,得到完整的音频数据。
在一种可能的设计中,接收设备接收多个数据传输通道传输的至少一个数据组合之前,还包括:
通过多个数据传输通道中的至少一个数据传输通道向发送设备发送第一控制指令;第一控制指令中包含用于调整与发送设备连接的数据采集设备的采集深度的第一目标参数;通过多个数据传输通道中的至少一个数据传输通道接收发送设备发送的基于第一控制指令设置的叠加规则。
在一种可能的设计中,接收设备接收多个数据传输通道传输的至少一个数据组合之前,还包括:通过多个数据传输通道中的至少一个数据传输通道向发送设备发送第二控制指令和叠加规则;第二控制指令中包含用于调整与发送设备连接的数据采集设备的采集深度的第二目标参数。
在一种可能的设计中,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
第三方面,本申请实施例提供了一种数据传输装置,该数据传输装置与多个数据采集接口和多个数据传输通道连接,每个数据采集接口与对应的音频采集设备连接,数据专传输装置包括:
获取单元,用于通过多个数据传输接口获取对应的音频采集设备采集到的音频数据;处理单元,用于将获取单元获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合;至少一个数据组合中的每个数据组合包括至少两个音频采集设备采集的音频数据,每个数据组合的长度小于或等于第一阈值,至少一个数据组合的数量小于或等于多个数据传输通道的数量;传输单元,用于将每个数据组合通过至少一个数据传输通道中的一个数据传输通道发出。
在一种可能的设计中,传输单元还用于:将获取单元获取到的音频数据中音频数据的长度等于第一阈值的音频数据,通过多个数据传输通道中用于传输至少一个数据组合外的数据传输通道发出。
在一种可能的设计中,至少一个数据组合的数量大于1,用于发出至少一个数据组合中的任意两个数据组合的数据传输通道不同。
在一种可能的设计中,传输单元具体用于:根据数据组合序号与数据传输通道序号的对应关系,将每个数据组合通过对应序号的数据传输通道发出。
在一种可能的设计中,处理单元具体用于:基于预先设置的叠加规则,将获取单元获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合。其中,叠加规则是根据每一个音频采集设备的采集深度设置的、且音频采集设备的采集深度与音频采集设备采集的音频数据的长度一对一。
在一种可能的设计中,在所述获取单元通过多个数据采集接口获取对应的音频采集设备采集到的音频数据之前,处理单元还用于:通过传输单元接收来自接收设备的第一控制指令,第一控制指令中包含用于调整对应的音频采集设备的采集深度的第一目标参数;控制获取单元将第一控制指令发送给对应的音频采集设备;以及基于第一目标参数设置叠加规则,并将叠加规则通过传输单元发送给接收设备。
在一种可能的设计中,在所述获取单元通过多个数据采集接口获取对应的音频采集设备采集到的音频数据之前,处理单元还用于:
通过传输单元接收来自接收设备的第二控制指令和叠加规则;第二控制指令中包含用于调整对应的音频采集设备的采集深度的第二目标参数;控制获取单元将第二控制指令发送给多个音频采集设备。
在一种可能的设计中,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
第四方面,本申请实施例提供了一种数据传输装置,该数据传输装置通过多个数据传输通道与发送设备连接,数据传输装置包括:
收发单元,用于接收多个数据传输通道传输的至少一个数据组合;至少一个数据组合中的每个数据组合通过多个数据传输通道中的一个数据传输通道传输,每个数据组合中包括至少两个音频采集设备采集的音频数据;音频采集设备通过对应的数据采集接口与发送设备连接;拆分单元,用于对收发单元接收的至少一个数据组合进行拆分,得到多个音频采集设备采集的音频数据;处理单元,用于对拆分后的多个音频采集设备采集的音频数据进行处理。
在一种可能的设计中,拆分单元具体用于:
接收设备根据预先设置的叠加规则,对收发单元接收的至少一个数据组合进行拆分。其中,叠加规则是根据每一个音频采集设备的采集深度设置的、且音频采集设备的采样深度与音频采集设备采集的音频数据的长度一对一。
在一种可能的设计中,拆分单元具体用于:利用数据组合序号与数据传输通道序号的对应关系,确定每个数据组合的序号;根据每个数据组合的序号以及叠加规则,对至少一个数据组合进行拆分。
在一种可能的设计中,在收发单元接收多个数据传输通道传输的至少一个数据组合之前,处理单元还用于:通过收发单元向发送设备发送第一控制指令;第一控制指令中包含用于调整与发送设备连接的音频采集设备的采集深度的第一目标参数;收发单元还用于:接收发送设备发送的基于第一目标参数设置的叠加规则。
在一种可能的设计中,在收发单元接收多个数据传输通道传输的至少一个数据组合之前,处理单元还用于:通过收发单元向发送设备发送第二控制指令和叠加规则;第二控制指令中包含用于调整与发送设备连接的音频采集设备的采集深度的第二目标参数。
在一种可能的设计中,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
第五方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,存储器中存储有指令,处理器执行指令时,使得装置执行实施例第一方面以及任一可能的设计中提供的方法,或者实施例第二方面以及任一可能的设计中提供的方法。
第六方面,本申请实施例提供了一种计算器可读存储介质,该计算器可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被计算机执行时,使计算机执行实施例第一方面以及任一可能的设计中提供的方法,或者实施例第二方面以及任一可能的设计中提供的方法。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本申请的描述中“至少一个”是指一个或多个,其中,多个是指两个或两个以上。鉴于此,本发明实施例中也可以将“多个”理解为“至少两个”。另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
需要指出的是,本申请实施例中“连接”指的是电连接,两个电学元件连接可以是两个电学元件之间的直接或间接连接。例如,A与B连接,既可以是A与B直接连接,也可以是A与B之间通过一个或多个其它电学元件间接连接,例如A与B连接,也可以是A与C直接连接,C与B直接连接,A与B之间通过C实现了连接。
本申请实施例提供的数据传输方法以及数据接收方法可以应用于汽车的智能座舱系统中,参见图1,为本申请实施例提供的一种汽车的智能座舱系统的架构示意图。如图1所示,该智能座舱系统主要包括:多个音频采集设备(图1中以8个为例)和用于对音频采集设备采集的音频数据进行处理的SOC芯片。其中,SOC芯片连接的音频设备可以包括4个用于获取用户的语音数据的第一类型音频采集设备,4个用于获取音频播放设备播放的音频的第二类型音频采集设备。其中,SOC芯片获取第二类型音频采集设备采集的音频数据,并基于获取的音频数据对音频播放设备播放的音频进行回音处理。
应理解,本申请实施例提供的智能座舱系统中还包括可以其它类型的音频采集设备,用于实现其它功能。
其中,多个音频采集设备以及SOC芯片通过多个数据传输接口连接。其中,每个音频采集设备通过对应的数据传输接口与SOC芯片连接。
采用图1所示的数据传输接口将采集的音频数据传输给SOC芯片时,每一个音频采集设备均需要配置一个不同的数据传输接口,SOC芯片也需要配置与音频采集设备相同数量的管脚,该管脚与数据传输接口连接以获取智能座舱系统中所有音频采集设备采集的音频数据。采用上述音频数据传输方式,在SOC芯片的管脚数量固定的情况下,若想获取到所有音频采集设备采集的音频数据,则需要减少SOC芯片其它管脚的数量,可能会导致智能座舱系统其它功能的实现。
基于上述情况,提供了数据传输接口复用的方案,如图2所示,每一个数据传输接口中包括三个接口,分别是传输时钟接口,同步时钟接口以及数据接口。每一个数据接口中可以包括至少两个数据传输通道,为了实现数据传输接口复用,在SOC芯片与音频采集设置之间设置一个DSP芯片。如图3所示,该DSP芯片上设置有多个数据采集接口和多个数据传输接口,多个数据采集接口与多个音频采集设备一对一对应连接,DSP芯片通过多个数据传输接口与SOC芯片连接,DSP芯片可以采用上述多个数据采集接口获取多个音频采集设备采集的音频数据,并将采集的每一个音频数据通过数据传输接口的一个数据传输通道传输给SOC芯片。需要说明的是,上述数据采集接口和数据传输接口可以是相同类型的接口,也可以是不同类型的接口。例如,
实际使用时,每一个数据采集装置采集的音频数据的长度可能不同,而数据传输接口中包含的每一个数据传输通道的带宽相同,当该数据传输通道中传输的音频数据的长度小于数据传输通道的带宽时,则会造成该数据传输通道的传输资源浪费,以及降低了数据传输效率。
上述介绍了智能座舱系统中设置的数据传输接口存在传输资源浪费,数据传输效率低的问题。为解决上述问题,本申请实施例提供一种数据传输方法,该方法可以实现将多个音频采集设备采集的音频数据通过一个数据传输通道进行传输,实现一个对多的形式进行数据传输,从而提升了数据传输效率,并有利于减少智能座舱系统中数据传输接口的数量。
参见图4,为本申请实施例提供的一种数据传输方法的示意图,该方法的执行主体可以是发送设备,该发送设备可以是上述智能座舱系统中的DSP芯片,该DSP芯片可以包括多个数据采集接口和至少一个数据传输接口,至少一个数据传输接口中的每个数据传输通道构成至少两个数据传输通道,多个音频采集接口用于与对应的音频采集设备连接。
具体实现时,该数据传输方法可以包括以下步骤:
步骤401:发送设备通过多个数据采集接口获取对应的音频采集设备采集到的音频数据。
步骤402:发送设备将获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合。需要说明的是,本申请实施例提供的音频数据的长度是指存储该音频数据所占用的字节数。
其中,至少一个数据组合中的每个数据组合中包括至少两个音频采集设备采集到的音频数据、且每个数据组合的长度小于或等于第一阈值。其中,每个数据组合的长度为该数据组合叠加的音频数据的长度的总和。
其中,该第一阈值为数据传输通道的带宽。其中,发送设备叠加得到的至少一个数据组合的数量需要小于或等于多个数据传输通道的数量。基于上述方案,发送设备可以为数据组合以及数据传输通道分配序号,数据组合的序号和数据传输通道的序号一对一,则可以将数据组合通过对应序号的数据传输通道进行传输,如此,数据组合按照固定的数据传输通道传输,保证发送设备可以传输全部的数据组合,以及后续设备在接收该数据组合时,可以准确的识别该数据组合中包含的音频数据。
作为一种可能实现的方式,在上述步骤402中,DSP芯片可以设置数据组合序号与传输通道序号之间的对应关系,在传输数据组合时,首先获取每个数据组合的序号,并根据每个数据组合的序号从上述对应关系中找到该数据组合对应的数据传输通道的序号,并将该数据组合通过对应的数据传输通道进行传输。
在叠加数据组合以及确定数据组合序号和数据传输通道序号的对应关系之后,发送设备可以对上述至少一个数据组合进行传输,具体可以参见步骤403。
步骤403:发送设备将每个数据组合通过多个数据传输通道中的一个数据传输通道发出。
作为一种可能实现的方式,若至少一个数据组合的数量大于1,为了进一步的提升系统的传输效率以及减少传输时间,用于发出至少一个数据组合中的任意两个数据组合的数据传输通道不相同。
作为一种可能实现的方式,在部分数据传输通道损坏的情况下或者为了进一步提升数据传输通道复用程度,可以将部分或全部数据组合依次通过一个数据传输进行传输,即在确定当前数据组合传输完毕后,将下一个数据组合继续通过该数据传输通道进行传输,直至传输完所有的数据组合。
需要说明的是,发送设备可以将获取到的音频数据中音频数据的长度等于第一阈值的音频数据,发送设备可以通过多个数据传输通道中用于传输至少一个数据组合外的数据传输通道发出。
通过上述步骤401~步骤403提供的方案,可以将数据长度小于数据传输通道带宽的音频数据进行叠加,得到至少一个数据组合,并将至少一个数据组合中的每个数据组合通过一个数据传输通道进行传输,实现了一个数据传输通道对应多个音频采集设备,即实现数据传输通道复用,进一步减少了数据传输通道的数量,有利于进一步减少发送设备与接收设备之间的数据传输接口的数量。
应理解,由于每个数据组合中叠加有至少两个音频采集设备采集的音频数据,因此,单个数据组合的长度要大于单个音频数据的长度,采用上述传输方式传输数据组合时,有利于更有效的占用传输资源,从而实现提升数据传输效率。
需要说明的是,发送设备能够将至少一个数据组合中的每个数据组合通过一个数据传输通道进行发出的前提是音频数据叠加完毕。实际使用时,发送设备是基于预先设置的叠加规则,将获取到的音频数据中音频数据的长度小于第一阈值的音频数据进行叠加,得到至少一个数据组合。其中,叠加规则是根据每一个音频采集设备的采集深度设置的。其中,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
作为一种可能实现方式,发送设备在进行数据传输之前会接收连接的接收设备发送的第一控制指令,该第一控制指令中包含用于调整发送设备连接的多个音频采集设备的采集深度的第一目标参数,发送设备接收到该第一控制指令后,并将该第一控制指令分别通过多个数据采集接口输出给各个音频采集设备,同时发送设备基于第一目标参数预先计算各个音频采集设备在控制指令控制下输出的音频数据的长度,发送设备根据预先计算的音频数据的长度设置叠加规则。
在一示例中,发送设备接收到叠加规则后,设置数据组合序号和数据传输通道序号之间的对应关系,并将上述对应关系以及叠加规则发送给接收设备。其中,发送设备和接收设备可以通过发送设备上的多个数据传输通道实现连接。其中,该叠加规则中包含音频数据的叠加顺序以及被叠加的音频数据的长度。
具体地,发送设备通过数据采集接口采集到对应的音频数据采集的音频数据之后,利用叠加规则,将音频数据按照叠加规则中的叠加顺序将音频数据依次叠加,得到至少一个数据组合。
应理解,采用上述方案可以将叠加规则以及上述对应关系发送给接收设备,接收设备在后期接收到发送设备发送的数据组合时,可以确定是否接收到完整的数据,以及准确的对获取的数据组合进行识别,提升传输准确度。
在一示例中,第一控制指令中包含多个子控制指令,多个子控制指令与多个音频采集设备一对一,每一个子控制指令用于调整对应的音频采集设备的采集深度,发送设备在接收到接收设备发送的第一控制指令后,将每个子控制指令通过数据音频采集接口发送给对应的音频采集设备中。
作为另一种可能实现的方式中,发送设备在进行数据传输之前,接收来自接收设备的第二控制指令以及叠加规则,该第二控制指令中包含用于调整发送设备连接的多个音频采集设备的采集深度的第二目标参数,发送设备接收到该第二控制指令后,并将该第二控制指令分别通过多个数据采集接口输出给对应的各个音频采集设备。
在一示例中,发送设备接收连接的接收发送的第二控制指令、叠加规则以及数据组合序号和数据传输通道序号之间的对应关系。
下面,结合以下实施例对音频数据叠加为数据组合的过程进行说明。
场景1:参见图5所示,智能座舱系统中包含8个音频采集设备,每一个音频采集设备的采集深度为2,即音频采集设备采集的音频数据的长度均为16比特(binary digit,bit),SOC芯片与DSP芯片之间存在两个数据传输接口,每一个数据传输接口中包含两个数据传输通道,而每一个数据传输通道的带宽为32bit。
如图6所示,发送设备在接收到音频采集设备1至8的采集的音频数据之后,发送设备将音频采集设备1至2采集的音频数据直接叠加为数据组合1,将音频采集设备3至4采集的音频数据直接叠加为数据组合2,将音频采集设备5至6采集的音频数据直接叠加为数据组合3,将音频采集设备7至8采集的音频数据直接叠加为数据组合4,通过序号为1的数据传输通道传输数据组合1,通过序号为2的数据传输通道传输数据组合2,通过序号为3的数据传输通道传输数据组合3,通过序号为4的数据传输通道传输数据组合4。其中,序号为1和2的数据传输通道构成数据传输接口1,序号为3和4的数据传输通道构成数据传输接口2。
采用上述方案,每一个数据组合的长度为数据传输通道的带宽,可以采用一个数据传输通道进行传输,实现了单个数据传输通道传输两个音频采集设备采集的音频数据,因此,可以在满足传输需求的同时,提升传输效率,且由于采用了数据传输通道复用,可以减少一半的数据传输通道的数量,在音频采集设备数量较多时,有利于进一步减少连接在发送设备和接收设备之间的数据传输接口的数量。
场景二:参见图7所示,智能座舱系统中包含8个音频采集设备,音频采集设备1至4的采集深度为1,音频采集设备5至8的采集深度为3,即音频采集设备1至4采集的音频数据长度均为8bit,音频采集设备1至4采集的音频数据长度均为24bit,SOC芯片与DSP芯片之间存在两个数据传输接口,每一个数据传输接口中包含两个数据传输通道,而每一个数据传输通道的带宽为32bit。
如图8所示,发送设备在接收到音频采集设备1至8的采集的音频数据之后,发送设备将音频采集设备1和音频采集设备5采集的音频数据直接叠加为数据组合1,将音频采集设备2和音频采集设备6采集的音频数据直接叠加为数据组合2,将音频采集设备3和音频采集设备7采集的音频数据直接叠加为数据组合3,将音频采集设备4和音频采集设备8采集的音频数据直接叠加为数据组合4,通过序号为1的数据传输通道传输数据组合1,通过序号为2的数据传输通道传输数据组合2,通过序号为3的数据传输通道传输数据组合3,通过序号为4的数据传输通道传输数据组合4。其中,序号为1和2的数据传输通道构成数据传输接口1,序号为3和4的数据传输通道构成数据传输接口2。
采用上述方案,每一个数据组合的长度正好为数据传输通道的带宽,可以采用一个数据传输通道进行传输,实现了单个数据传输通道传输两个音频采集设备采集的音频数据,因此,可以在满足传输需求的同时,提升传输效率,且由于采用了数据传输通道复用,可以减少一半的数据传输通道的数量,在音频采集设备数量较多时,有利于进一步减少连接在发送设备和接收设备之间的数据传输接口的数量。
场景三:参见图9所示,智能座舱系统中包含8个音频采集设备,音频采集设备1至8的采集深度均为1,即音频采集设备1至8采集的音频数据长度均为8bit,SOC芯片与DSP芯片之间存在两个数据传输接口,每一个数据传输接口中包含两个数据传输通道,而数据传输通道的带宽为32bit。
如图10所示,发送设备在接收到音频采集设备1至8的采集的音频数据之后,发送设备将音频采集设备1至4采集的音频数据直接叠加为一个数据组合1,将音频采集设备5至8采集的音频数据直接叠加为一个数据组合2,通过序号为1的数据传输通道传输数据组合1,通过序号为2的数据传输通道传输数据组合2。其中,序号为1和2的数据传输通道构成数据传输接口1,序号为3和4的数据传输通道构成数据传输接口2。
采用上述方案,每一个数据组合的长度正好为数据传输通道的带宽,可以实现单个数据传输通道传输四个音频采集设备采集的音频数据,因此,可以在满足传输需求的同时,提升传输效率,且由于采用了数据传输通道复用,可以减少四分之三的数据传输通道的数量,在音频采集设备数量较多的时,有利于进一步减少连接在发送设备和接收设备之间的数据传输接口的数量。
场景四:参见图11所示,智能座舱系统中包含8个音频采集设备,音频采集设备1至2的采集深度为1,音频采集设备3至7的采集深度为2,音频采集设备8的采集深度为4,即音频采集设备1至2采集的音频数据长度为8bit,音频采集设备3至7采集的音频数据长度均为16bit,音频采集设备8采集的音频数据长度为32bit,SOC芯片与DSP芯片之间存在两个数据传输接口,每一个数据传输接口中包含两个数据传输通道,而数据传输通道的带宽为32bit。
如图12所示,发送设备在接收到音频采集设备1至8的采集的音频数据之后,发送设备将音频采集设备1至3采集的音频数据直接叠加为数据组合1,将音频采集设备4至5采集的音频数据直接叠加为数据组合2,音频采集设备6至7采集的音频数据直接叠加为数据组合3。在叠加数据组合之后,通过序号为1的数据传输通道传输数据组合1,通过序号为2的数据传输通道传输数据组合2,通过序号为3的数据传输通道传输数据组合3,通过序号为4的数据传输通道直接传输音频采集设备8采集的音频数据。其中,序号为1和2的数据传输通道构成数据传输接口1,序号为3和4的数据传输通道构成数据传输接口2。
采用上述方案,每一个数据组合的长度正好为数据传输通道的带宽,可以实现单个数据传输通道传输两个及以上音频采集设备采集的音频数据,因此,可以在满足传输需求的同时,提升传输效率,且由于采用了数据传输通道复用,在音频采集设备数量较多时,有利于进一步减少连接在发送设备和接收设备之间的数据传输接口的数量。
应理解,上述数据传输方案,也可以根据音频采集的采集深度的不同灵活的设置叠加规则,本申请这里不再做详细介绍。
参见图13,为本申请实施例提供的另一种数据传输方法的示意图,该方法的执行主体可以是接收设备,该接收设备可以上述智能座舱系统中的SOC芯片,该接收设备通过多个数据传输通道与发送设备连接,该方法包括以下步骤:
步骤1301:接收设备接收多个数据传输通道传输的至少一个数据组合。其中至少一个数据组合中的每个数据组合通过多个数据传输通道中的一个数据传输通道传输,每个数据组合中包括至少两个音频采集设备采集的音频数据。其中,音频采集设备通过对应的数据采集接口与发送设备连接。
步骤1302:接收设备对接收的至少一个数据组合进行拆分,得到多个音频采集设备采集的音频数据。
作为一种可能实现方式,接收设备在接收至少一个数据组合之前,先通过多个数据传输通道向发送设备发送第一控制指令,该第一控制指令中包含用于调整与发送设备连接的多个音频采集设备的采集深度的第一目标参数,并通过多个数据传输通道接收发送设备发送的叠加规则以及数据组合序号与数据传输通道序号之间的对应关系。其中,叠加规则是发送设备基于第一目标参数设置的。
作为另一种可能实现的方式,接收设备在接收至少一个数据组合之前,通过多个数据传输通道向发送设备发送第二控制指令以及叠加规则,其中,该第二控制指令用于调整与发送设备连接的多个音频采集设备的采集深度的第二目标参数,发送设备可以基于叠加规则对接收的音频数据进行叠加,构成至少一个数据组合。其中,叠加规则是接收设备基于第二目标参数设置的。
在一示例中,接收设备设置数据组合序号和数据传输通道序号之间的对应关系,并将上述对应关系通过多个数据传输通道向发送设备。
在另一示例中,接收设备通过多个数据传输通道接收发送设备发送的数据组合序号和数据传输通道序号之间的对应关系。
实际使用时,接收设备接收到至少一个数据组合后,先基于数据组合序号与数据传输通道序号的对应关系,确定每个数据组合的序号,从叠加规则中确定该数据组合中叠加的音频数据的顺序以及被叠加的每个音频数据的长度,并基于上述确定叠加的音频数据的顺序以及被叠加的音频数据的长度,对该数据组合进行拆分,得到多个音频数据。应理解,采用上述拆分方式可以对至少一个数据组合中的其它数据组合进行拆分,直至对至少一个数据组合拆分完毕。
下面,结合图2,对本申请实施例中的数据组合的拆分过程进行说明。
例如,如图2所示的数据传输通道Slot1接收到的数据组合,该数据组合的长度为32bit,利用数据组合序号与数据传输通道序号之间的对应关系,确定数据传输通道Slot1接收的数据组合的序号为1,利用上述叠加规则确定序号为1的数据组合中先叠加音频采集设备1采集的数据,再叠加音频采集设备2采集的音频数据,且两个被音频采集设备采集的音频数据的长度均为16bit,则对序号1的数据组合进行拆分时,序号为1的数据组合中前16bit数据为音频采集设备1采集的音频数据,后16bit数据为音频采集设备2采集的音频数据。
在拆分数据组合得到所有音频采集设备采集的音频数据之后,接收设备可以对上述音频数据进行处理,具体可以参见步骤1303。
步骤1303:接收设备对拆分后的多个音频采集设备采集的音频数据进行处理。
在一示例中,接收设备还与多个音频播放设备连接,接收设备可以将第一类型音频采集设备采集的音频数据转换为语音,并发给该语音发送给多个音频播放设备后期播放,接收设备可以将第二类型的音频采集设备采集的音频数据进行预设处理,得到多个音频采集设备的调整参数,并将该调整参数输出给对应的音频播放设备。
通过上述步骤1301~步骤1303可以通过一个数据传输通道接收两个及两个以上音频采集设备采集的音频数据,接收设备连接的一个数据传输通道对应多个音频采集设备,实现了数据传输通道的复用,有利于减少SOC芯片管脚的数量、且由于数据组合的长度要大于单个音频数据的长度,提升了数据传输通道的利用率,从而实现了提升数据传输效率。
应理解,图1所示的智能座舱系统中,DSP芯片还可以与音频播放设备连接,用于播放SOC芯片发送的音频数据,在SOC芯片的管脚数量有限时,SOC芯片作为发送设备也可以采用图4所示的数据传输方法将待传输的音频传输叠加为至少一个数据传输组合,并通过数据传输通道传输给DSP芯片,此时DSP芯片作为接收设备可以采用图13所示的数据传输方法,接收SOC芯片发送的至少一个数据组合,对接收的数据组合进行拆分,得到多个音频数据,并通过数据接口输出给对应的音频播放设备。
图4至图12详细描述了本申请所提供的数据传输的方法,下面将结合图14描述本申请所提供的数据传输装置。
图14为本申请提供的一种数据传输装置的结构示意图,如图所示,数据传输装置1400可以与多个数据采集接口和多个数据传输通道连接,每个数据采集设备与对应的音频采集设备连接,该数据传输装置1400具体包括获取单元1401、处理单元1402和传输单元1403,具体的:
获取单元1401,用于通过上述音频采集接口获取对应的音频采集设备采集到的音频数据;处理单元1402,用于将获取单元获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合,至少一个数据中的每个数据组合包括至少两个音频采集设备采集的音频数据,每个数据组合的长度小于或等于第一阈值,至少一个数据组合的数量小于或等于多个数据传输通道的数量;传输单元1403,用于将每个数据组合通过多个数据传输通道中的一个数据传输通道发出。
可选地,处理单元1402还用于:将获取单元1401获取到的音频数据中音频数据的长度等于第一阈值的音频数据,通过多个数据传输通道中用于传输至少一个数据组合外的数据传输通道发出。
应理解,若至少一个数据组合的数量大于1,用于发出至少一个数据组合中的任意两个数据组合的数据传输通道不相同。
可选地,传输单元1403具体用于:利用数据组合序号与数据传输通道序号的对应关系中,将每个数据组合通过对应序号的数据传输通道传输。
可选地,处理单元1402具体用于:基于预先设置的叠加规则,将获取单元1401获取到的音频数据中音频数据的长度小于第一阈值的音频数据,进行叠加得到至少一个数据组合。其中,叠加规则是根据每一个音频采集设备的采集深度设置的、且音频采集设备的采集深度与音频采集设备采集的音频数据的长度一对一。
可选地,在所述获取单元1401通过多个数据采集接口获取对应的音频采集设备采集到的音频数据之前,处理单元1402还用于:通过传输单元1403接收来自接收设备的第一控制指令;第一控制指令中包含用于调整对应的音频采集设备的采集深度的第一目标参数;控制获取单元1401将第一控制指令发送给对应的音频采集设备;以及基于第一目标参数设置叠加规则,并将叠加规则通过传输单元1403发送给接收设备。
可选地,在所述获取单元1401通过多个数据采集接口获取对应的音频采集设备采集到的音频数据之前,处理单元1402还用于:通过传输单元1403接收来自接收设备的第二控制指令和叠加规则;第二控制指令中包含用于调整对应的音频采集设备的采集深度的第二目标参数;控制获取单元1401将第二控制指令发送给对应的音频采集设备。
可选地,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
图13详细描述了本申请所提供的数据传输的方法,下面将结合图15描述本申请所提供的数据传输装置。
图15为本申请提供的一种数据传输装置的结构示意图,如图所示,数据传输装置1500可以通过多个数据传输通道与发送设备连接,该数据传输装置1500具体包括收发单元1501、拆分单元1502和处理单元1503,具体的:
收发单元1501,用于接收多个数据传输通道传输的至少一个数据组合,至少一个数据组合中的每个数据组合通过多个数据传输通道中的一个数据传输通道传输,每个数据组合中包括至少两个音频采集设备采集的音频数据,音频采集设备通过对应的数据采集接口与发送设备连接;拆分单元1502,用于对收发单元1501接收的至少一个数据组合进行拆分,得到多个音频采集设备采集的音频数据;处理单元1503,用于对拆分后的多个音频采集设备采集的音频数据进行处理。
可选地,拆分单元1502具体用于:接收设备根据预先设置的叠加规则,对收发单元接收的至少一个数据组合进行拆分。其中,叠加规则是根据每一个音频采集设备的采集深度设置的、且音频采集设备的采样深度与音频采集设备采集的音频数据的长度一对一。
可选地,拆分单元1502具体用于:利用数据组合序号与数据传输通道序号的对应关系,确定每个数据组合的序号;根据每个数据组合的序号以及叠加规则,对至少一个数据组合进行拆分。
可选地,在收发单元1501接收多个数据传输通道传输的至少一个数据组合之前,处理单元1503还用于:通过收发单元1501向发送设备发送第一控制指令;第一控制指令中包含用于调整与发送设备连接的数据采集设备的采集深度的第一目标参数;收发单元1501还用于:接收发送设备发送的基于第一目标参数设置的叠加规则。
可选地,在收发单元1501接收多个数据传输通道传输的至少一个数据组合之前,处理单元1503还用于:通过收发单元1501向发送设备发送第二控制指令和叠加规则;第二控制指令中包含用于调整与发送设备连接的数据采集设备的采集深度的第二目标参数。
可选地,叠加规则中包括音频数据的叠加顺序以及被叠加的音频数据的长度。
应理解的是,本申请实施例的数据传输装置1400和1500可以通过专用集成电路(application-specific integrated circuit,ASIC)实现,或可编程逻辑器件(programmable logic device,PLD)实现,上述PLD可以是复杂程序逻辑器件(complexprogrammable logical device,CPLD),现场可编程门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。也可以通过软件实现图4或图13所示数据传输方法时,数据传输装置1400和1500及其各个模块也可以为软件模块。
根据本申请实施例的数据传输装置1400和1500可对应于执行本申请实施例中描述的方法,并且数据传输装置1400和数据传输装置1500中的各个单元的上述和其它操作和/或功能分别为了实现图4或图13中的各个方法的相应流程,为了简洁,在此不再赘述。
图16为本申请实施例提供的一种电子设备的结构示意图,电子设备应用于如图1所示的智能座舱系统中,用于实现如图4或图13所示的数据传输方法。参阅图16所示,电子设备1600可以包括:处理器1601、存储器1602和总线1603。其中,处理器1601和存储器1602通过总线1603进行通信,也可以通过无线传输等其他手段实现通信。该存储器1602用于存储指令,该处理器1601用于执行该存储器1602存储的指令。该存储器1602存储程序代码,且处理器1601可以调用存储器1602中存储的程序代码执行图4所示的数据传输方法;或者执行图9所示的数据传输方法。
可选地,图16所示的电子设备1600还包括内存1604和通信接口1605,其中,内存1604可以与处理器1601物理集成在一起,或在处理器1601内或以独立单元形式存在。计算机程序可以存储至内存1604或存储器1602。可选地,存储至存储器1602的计算机程序代码(例如,要调试的程序等)被复制到内存1604,进而由处理器1601执行。
应理解,在本申请实施例中,该处理器1601可以是中央处理器(centralprocessing unit,CPU),该处理器1601还可以是其他通用处理器、数字信号处理器(digital signal processing,DSPDSP)、专用集成电路(application-specificintegrated circuit,ASIC)、可编程逻辑器件(programmable logic device,PLD);上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic arraylogic,GAL)或其任意组合;或者该处理器1601可以是其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
该存储器1602可以包括只读存储器和随机存取存储器,并向处理器1601提供指令、程序和数据等。例如,程序可以包括程序代码,该程序代码包括计算机操作指令。存储器1602还可以包括非易失性随机存取存储器。例如,存储器1602还可以存储设备类型的信息。
该存储器1602可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
该总线1603除包括数据总线之外,还可以包括地址总线、电源总线、控制总线和状态信号总线等。该总线1603可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended Industry standardarchitecture,EISA)总线等,也可以是控制区域网络(controller area network,CAN),还可以是车载以太(Ethernet),或者其他内部总线实现图16所示的各个器件/设备的连接。但是为了清楚说明起见,在图16中将各种总线都标为总线1603。为便于表示,图16中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,根据本申请实施例的电子设备1600可对应于本申请实施例中的数据传输装置1400或本申请实施例中的数据传输装置1500,并可以对应于执行图4或图13所示方法中的控制器作为主体的操作步骤,并且电子设备1600中的各个模块的上述和其它操作和/或功能分别为了实现图4或图13中的各个方法的相应流程,为了简洁,在此不再赘述。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘(solid statedrive,SSD)。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请的技术方案的目的。
以上,仅为本申请的具体实施方式。熟悉本技术领域的技术人员根据本申请提供的具体实施方式,可想到变化或替换,都应涵盖在本申请的保护范围之内。