1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 多声道音频数据的处理方法 装置 设备和存储介质与流程

多声道音频数据的处理方法 装置 设备和存储介质与流程

时间:2020-01-05 21:07:36

相关推荐

多声道音频数据的处理方法 装置 设备和存储介质与流程

本发明实施例涉及数据处理技术领域,尤其涉及多声道音频数据的处理方法、装置、设备和存储介质。

背景技术:

随着智能语音技术的发展,可以为用户提供智能交互服务的电子设备逐渐普及,电子设备在为用户提供智能交互服务的过程中,离不开对用户音频数据的采集与处理。

目前,可用于音频数据处理的专用中央处理器(centralprocessingunit,cpu)可选种类少,且价格高,所以许多厂商会选择一些低成本的cpu来降低电子设备的生产成本。但是低成本的cpu的音频接口往往只支持i2s接口传输音频数据,而i2s接口只支持左右声道(双声道)传输音频数据,所以,配置有低成本cpu的电子设备无法支持大于双声道的音频数据的传输。由于音频数据处理过程中,声道数越多,处理结果越准确,所以采用低成本cpu只对双声道音频数据进行处理,严重影响电子设备提供智能交互服务的准确性。

技术实现要素:

本发明实施例提供的一种多声道音频数据的处理方法、装置、设备和存储介质,能够实现采用i2s接口传输多声道的音频数据,从而使得配置低成本cpu的电子设备也可以实现对多声道音频数据进行处理,进而提高低成本电子设备提供智能交互服务的准确性。

在一个实施例中,本发明实施例提供了一种多声道音频数据的处理方法,该方法包括:

将采集的偶数个声道的音频数据平均划分至两个数据集中;

为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

在一个实施例中,本发明实施例还提供了一种多声道音频数据的处理装置,该装置包括:

数据划分模块,用于将采集的偶数个声道的音频数据平均划分至两个数据集中;

标识添加模块,用于为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

数据传输模块,用于根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

在一个实施例中,本发明实施例还提供了一种电子设备,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所述的多声道音频数据的处理方法。

在一个实施例中,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的多声道音频数据的处理方法。

本发明实施例提供的多声道音频数据的处理方法、装置、设备和存储介质,对于采集到的偶数个声道的音频数据,平均划分到两个数据集中,并针对每一个数据集都为其中包含的各个声道的音频数据添加不同的字节标识,进而根据i2s总线中的帧时钟信号,将两个数据集中包含的添加有字节标识的音频数据编码为串行数据进行传输。本发明实施例的方案解决了现有i2s接口无法传输大于二声道的音频数据的问题,从而使得配置低成本cpu的电子设备也可以接收并对大于二声道的音频数据进行处理,进而提高了低成本电子设备提供智能交互服务的准确性。

附图说明

图1a-1b是现有技术提供的基于i2s接口的数据传输方式示意图;

图2a是本发明实施例提供的一种多声道音频数据的处理方法的流程图;

图2b是本发明实施例提供的基于i2s接口的数据传输方式示意图;

图3是本发明实施例提供的另一种多声道音频数据的处理方法的流程图;

图4是本发明实施例提供的一种多声道音频数据的处理装置的结构示意图;

图5是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

在介绍本发明实施例之前,先对集成电路内置音频总线i2s接口进行简单介绍。i2s(inter线前,先对图中仅示出是针对数字音频设备之间的音频数据传输而制定的一种总线标准,其中主要包括3个信号,位时钟信号(bclk),又称串行时钟信号(sclk),其用于提供数字音频数据传输的时钟信号,即针对数字音频的每一位数据,都有一个对应的bclk脉冲,bclk的频率=2率采样频率×采样位数。帧时钟信号(lrck),用于提供分辨当前传输声道类型,例如,lrck为低电平时传输左声道,lrck为高电平时传输右声道。lrck的频率等于采样频率。串行数据(sdtat),用于提供传输的音频数据,该数据是由16位/24位或其它数据位数传输。有时为了使系统间能够更好地同步,还需要另外传输一个主时钟信号(mclk),又称系统时钟信号(sysclock),用于提供cpu芯片的时钟主信号,是采样频率的256或284倍。

如图1a所示,现有技术采用i2s接口传输数据时,基于i2s协议传输音频数据只通过lrck信号的高或低电平确定是传输右声道还是左声道,也就是说,i2s接口只能传输双声道数据。且通过图1a可知道,sdata信号由高字节(msb)在前,低字节(lsb)在后的方式传输nbit数据,其中,sdata信号中的高字节是随机设置的,低字节通常设置为0。这nbit的数据代表着音频的每一位数据。其中,n的值越大,音频质量就越高。例如,如图1b所示,假设一个sdata线上传输为32位的i2s协议数据,sdata可以在lrck传输左声道的时候,发送了1010交替电平共16个数据,在lrck传输右声道的时候,发送了1010交替电平共16个数据,一共为32位音频数据。

接下来,基于上述对i2s接口的简单介绍,对本发明实施例提供的多声道音频数据的处理方法、装置、设备和存储介质进行详细说明。

图2a为本发明实施例提供的一种多声道音频数据的处理方法的流程图,图2b为本发明实施例提供的基于i2s接口的数据传输方式示意图。本实施例可适用于对采集到的多声道的音频数据进行处理的情况,尤其适用于基于支持i2s接口的cpu对采集到的多声道的音频数据进行处理的情况。该方法可以由本发明实施例提供的多声道音频数据的处理装置或电子设备来执行,该装置可采用软件和/或硬件的方式实现。如图2a-2b所示,具体包括如下步骤:

s201,将采集的偶数个声道的音频数据平均划分至两个数据集中。

其中,本实施例中的多声道为偶数个声道,且偶数个声道的音频数据可以是通过配置在电子设备上不同方位的音频采集装置(如麦克风)采集到的不同方位的音频数据。例如,若电子设备的前、后、左、右四个方位设置有四个麦克风,则本实施例的电子设备采集到的是前声道(即声道1)、后声道(即声道2)、左声道(即声道3)和右声道(即声道4),这4个声道的音频数据。

可选的,在本步骤中,电子设备中的音频采集装置采集到多个声道(即偶数个声道)的音频数据后,需要先将采集到的偶数个声道的音频数据平均分配至两个数据集中,例如,若采集到的是4个声道(即声道1-声道4)的音频数据,则可以是将其中的声道1和声道2,两个声道的音频数据分配至第一数据集中,将声道3和声道4两个声道的音频数据分配至第二数据集中。需要说明的是,本实施例中,将偶数个声道的音频数据划分至两个数据集时,只要保证两个数据集中分配到的音频数据的个数相同即可,每一个数据集具体分配哪些声道的音频数据本实施例不进行限定。例如,可以是随机安排;还可以是按照预先设置的排序顺序对采集到的2n个声道的音频数据排序后,将前1-n个声道的音频数据划分至第一数据集,将后n+1到2n个声道的音频数据划分至第二个数据集。

可选的,由于基于i2s接口传输的音频数据是数字音频数据,而电子设备通过采集装置采集到的音频数据为模拟音频数据,所以本实施例可以是在执行本步骤将采集的偶数个声道的音频数据平均划分至两个数据集之前或之后,执行将模拟音频数据转换为数字音频数的操作。例如,可以是先执行将采集到的模拟音频数据转换为数字音频数据后,再执行将转换后的数字音频数据平均划分至两个数据集的操作;还可以是先执行将采集到的模拟音频数据平均划分至两个数据集之后,再执行对每个数据集中包含的模拟音频数据转换为数字音频数据。

可选的,由于现有的低成本cpu可以实现对i2s接口传输两个声道的音频数据进行处理,所以本实施例中的偶数个声道可以优选设置为大于二的偶数个声道,且划分后的每个数据集中包含的声道个数为至少两个。例如,若偶数个声道为4声道,则平均划分后的每个数据集中包含的声道个数为两个;若偶数个声道为6声道,则平均划分后的每个数据集中包含的声道个数为三个。

s202,为每个数据集中包含的各个声道的音频数据添加不同的字节标识。

其中,字节标识可以是用于表征每一个声道的音频数据的身份标识,每个音频数据又包括多位字节数据,本实施例可以是将字节标识设置在多位字节数据的音频数据的起始和/或结束位置;还可以是针对属于同一个音频数据的每一位字节数据都设置同样的字节标识,例如,若音频数据为16位字节数据,此时可以是在这16位字节数据之前的起始位置设置一个字节标识;也可以是在这16位字节数据之后的结束位置设置一个字节标识;也可以是为该音频数据的16为字节数据的每一位字节数据都设置相同的字节标识。对此本实施例不进行限定。由于音频数据是以数字信号的形式传输的,所以字节标识可以是于数字信号对应的数字,例如,若数字信号为二进制数据信号,则该字节标识可以是二进制数字。

可选的,本实施例可以是针对每一个数据集,为其中包含的各个声道的音频数据都设置并添加不一样的字符标识,而对于两个数据集来说,为两个数据中的音频数据可以设置一样的字符标识,也可以设置不一样的字符标识。例如,若第一数据集中包括声道1和声道2的音频数据,第二数据集中包括声道3和声道4的音频数据,则可以是为声道1和声道3的音频数据添加字符标识1,为声道2和声道4的音频数据添加字符标识0;还可以是为声道1的音频数据添加字符标识10,为声道2的音频数据添加字符标识11,为声道3的音频数据添加字符标识00,为声道4的音频数据添加字符标识01。对此本实施例不进行限定,只要可通过设定字符标识,区分一个数据集中的各声道的音频数据即可。

可选的,由于i2s接口是以数字信号的形式传输音频数据的,且待传输的数字信号(即sdata信号)的起始信号作为高字节数据,终止信号作为低字节数据,所以本实施例在为每个数据集中包含的各个声道的音频数据添加不同的字节标识时,可以是在每个声道的数字音频数据的高字节和/或低字节位置添加字节标识;还可以是针对属于同一个数字音频数据的每一位字节数据都设置同样的字节标识。示例性的,以在数字音频数据的高字节位置添加字节标识为例,若第一数据集中包括声道1的数字音频数据和声道2的数字音频数据,且两声道的数字音频数据都为0101交替的电平信号,则此时,可以是在声道1的0101交替电平信号的高字节处(即在0101交替电平信号前)添加字符标识1,得到1+0101的交替电平信号作为声道1添加了字节标识后的数字音频数据;在声道2的0101交替电平信号的高字节处添加字符标识0,得到0+0101的交替电平信号作为声道2添加了字节标识后的数字音频数据。需要说明的是,还可以是按照上述方法在数字音频数据的低字节处设置字节标识,也可以是在高字节和低字节处都设置字节标识,对此本实施例不进行限定。

s203,根据帧时钟信号,将两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

其中,串行数据(sdtat)可以是由添加了字节标识的音频数据编码而成的,具体的编码方法可以是基于时分复用算法,将两个数据集中包含的添加有字节标识的音频数据相互交织在不同的时间段内,形成一路信号传输,该信号即为串行数据。

可选的,在本实施例中,可以是通过以下三个子步骤实现将两个数据集中添加有字节标识的音频数据编码为串行数据进行传输:

s2031,在帧时钟信号为低电平时,将第一数据集中添加有字节标识的音频数据编码为串行数据。

可选的,可以是在帧时钟信号为低电平时,将第一数据集中添加有字节标识的各个声道的音频数据顺序排列后形成一路音频信号作为串行数据。例如,假设第一数据集中包括添加了字节标识的声道1的1+0101交替电平共16位的数字音频数据和声道2的0+0101交替电平共16位的数字音频数据,则此时可以是将声道2的数字音频数据排列在声道1的数字音频数据之后,得到1+0101交替电平共16位的数字音频数据加上0+0101电平共16位的数字音频数据作为帧时钟信号为低电平时的串行数据。

s2032,在帧时钟信号为高电平时,将第二数据集中添加有字节标识的音频数据编码为串行数据。

可选的,可以是在帧时钟信号为高电平时,将第二数据集中添加有字节标识的各个声道的音频数据顺序排列后形成一路音频信号作为串行数据。例如,假设第二数据集中包括添加了字节标识的声道3的1+0101交替电平共16位的数字音频数据和声道4的0+0101交替电平共16位的数字音频数据,则此时可以是将声道4的数字音频数据排列在声道3的数字音频数据之后,得到1+0101交替电平共16位的数字音频数据加上0+0101交替电平共16位的数字音频数据作为帧时钟信号为高电平时的串行数据。

s2033,通过集成电路内置音频总线i2s接口传输帧时钟信号和串行数据。

可选的,基于i2s接口传输音频数据时,需要根据帧时钟信号的电平高低来传输串行数据,具体的,可以是当帧时钟信号为低电平时,传输s2031编码得到的串行数据;当帧时钟信号为高电平时,传输s2032编码得到的串行数据。示例性的,如图2b所示,当i2s接口传输帧时钟信号(lrck)为低电平时,与该lrck低电平同时传输的是第一数据集中添加有字节标识的第1声道(1+0101…….0)和第2声道(0+0101……0)的数字信号。当i2s接口传输帧时钟信号(lrck)为高电平时,与该lrck高电平同时传输的是第二数据集添加有字节标识的第3声道(1+0101…….0)和第4声道(0+0101……0)的数字信号。

需要说明的是,本实施例中,通过集成电路内置音频总线i2s接口传输的信号除了帧时钟信号和串行数据之外,还包括:位时钟信号(bclk)和主时钟信号(mclk)。

可选的,本实施例的s201-s203的操作可以是由电子设备内配置的音频编解码芯片执行的,即由音频编解码芯片获取采集装置采集的多声道的音频数据,并为其进行划分数据集以及添加字节标识的操作,然后再根据帧时钟信号,通过i2s接口将帧时钟信号及其对应的串行数据传输至电子设备的cpu。

本实施例提供了一种多声道音频数据的处理方法,对于采集到的偶数个声道的音频数据,平均划分到两个数据集中,并针对每一个数据集都为其中包含的各个声道的音频数据添加不同的字节标识,进而根据i2s总线中的帧时钟信号,将两个数据集中包含的添加有字节标识的音频数据编码为串行数据进行传输。本发明实施例的方案解决了现有i2s接口无法传输大于二声道的音频数据的问题,从而使得配置低成本cpu的电子设备也可以接收并对大于二声道的音频数据进行处理,进而提高了低成本电子设备提供智能交互服务的准确性。

图3为本发明实施例提供的另一种多声道音频数据的处理方法的流程图,该方法在上述实施例的基础上进一步的优化,具体给出了在将两个数据集中添加有字节标识的音频数据编码为串行数据进行传输之后的其他处理操作的具体情况介绍。如图3所示,该方法包括:

s301,将采集的偶数个声道的音频数据平均划分至两个数据集中。

s302,为每个数据集中包含的各个声道的音频数据添加不同的字节标识。

s303,根据帧时钟信号,将两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

可选的,可以是在帧时钟信号为低电平时,将第一数据集中添加有字节标识的音频数据编码为串行数据;在帧时钟信号为高电平时,将第二数据集中添加有字节标识的音频数据编码为串行数据;通过集成电路内置音频总线i2s接口传输所述帧时钟信号和所述串行数据。

s304,根据帧时钟信号和串行数据中包含的字节标识,从串行数据中解码出各个声道的音频数据。

可选的,电子设备的cpu在接收到通过i2s接口传输过来的帧时钟信号和串行数据中包含的字节标识后,需要先对接收到的串行数据进行解码,得到该串行数据中包含的各个声道的音频数据。其中,对串行数据进行解码的方法可以与上述s303对音频数据进行编码的过程互为逆过程。具体可以包括以下两个步骤:

s3041,将帧时钟信号为低电平时传输的串行数据作为第一数据,并根据第一数据中包含的字节标识,从第一数据中解码出第一数据中包括的各个声道的音频数据。

可选的,由于s303对音频数据进行编码时,在帧时钟信号为低电平时,将第一数据集中添加有字节标识的至少一个音频数据编码为串行数据,所以本步骤在对串行数据解码时,可以是先找到帧时钟信号为低电平时接收到的串行数据,即第一数据。其中,该第一数据中可能包含有不止一个声道的音频数据,且由于s302已经为每个数据集中包含的各个声道的音频数据添加不同的字节标识,所以,此时可以通过在第一数据中查找s302为每个声道的音频数据添加的字节标识,来从第一数据中区分各个声道的音频数据。

例如,如图2b所示,帧时钟信号为低电平时传输到cpu的第一数据为添加有字节标识的第1声道(1+0101…….0)和第2声道(0+0101……0)的数字信号,由于高字节+音频信号+低字节作为一个声道的数字音频数据,所以本实施例可以对该第一数据进行分析,将高字节为1的信号,作为声道1的数字音频数据的开始,将该高字节对应的低字节作为声道1的数字音频数据的结束,进而从第一数据中提取出声道1的音频数据;同理,将高字节为0的信号,作为声道2的数字音频数据的开始,将该高字节对应的低字节作为声道2的数字音频数据的结束,进而从第一数据中提取出声道2的音频数据。

s3042,将帧时钟信号为高电平时传输的串行数据作为第二数据,并根据第二数据中包含的字节标识,从第二数据中解码出第二数据中包括的各个声道的音频数据。

可选的,由于s303对音频数据进行编码时,在帧时钟信号为高电平时,将第二数据集中添加有字节标识的至少一个音频数据编码为串行数据,所以本步骤在对串行数据解码时,可以是先找到帧时钟信号为高电平时接收到的串行数据,即第二数据。其中,该第二数据中同样也可能包含有不止一个声道的音频数据,此时本步骤可以通过在第二数据中查找s302为每个声道的音频数据添加的字节标识,来从第二数据中区分各个声道的音频数据。

例如,如图2b所示,帧时钟信号为高电平时传输到cpu的第二数据为添加有字节标识的第3声道(1+0101…….0)和第4声道(0+0101……0)的数字信号,本步骤可以对该第二数据进行分析,将高字节为1的信号,作为声道3的数字音频数据的开始,将该高字节对应的低字节作为声道3的数字音频数据的结束,进而从第一数据中提取出声道3的音频数据;同理,将高字节为0的信号,作为声道4的数字音频数据的开始,将该高字节对应的低字节作为声道4的数字音频数据的结束,进而从第一数据中提取出声道4的音频数据。

s305,确定各个声道的音频数据的音频参数。

其中,各个声道的音频数据的音频参数可以是采集的各个声道音频数据的属性参数,其可以包括但不限于:采样频率参数、声道标号参数和位宽参数。

可选的,本步骤确定各个声道的音频数据的采样频率参数时,可以是将电子设备的各个音频采集装置采集各个声道时的采样频率作为该声道音频数据的采样频率参数。确定各个声道的音频数据的声道标号参数时,可以将s304确定出的各个音频数据对应的声道号作为音频数据的声道标号参数,例如,第一数据中包含的1+0101交替电平共16位的数字音频数据对应的声道标号参数为声道1。确定各声道的音频数据的位宽参数时,可以将数字音频数据中交替电平的总位数作为位宽参数,例如,第一数据中包含的声道1的1+0101交替电平共16位的数字音频数据的位宽参数为16位。

可选的,本实施例在确定各个声道的音频参数时,增加确定声道标号参数的操作,这样设置的好处在于,电子设备可以通过音频数据对应的声道标号参数,按照预设的解析算法,确定出采集该音频数据的数据采集装置的位置,进而确定出该音频数据对应的声源位置,有助于电子设备对接收到的音频数据以及其声源位置进行其他相关处理操作。

s306,依据各个声道的音频数据的音频参数,对各个声道的音频数据进行处理。

其中,电子设备对各个声道的音频数据进行处理可以包括但不限于:存储处理和/或播放处理。

可选的,当电子设备对各个声道的音频数据进行存储处理时,可以是根据各个声道的音频数据以及其对应的音频参数,生成音频文件,并将生成的音频文件保存在电子设备中的预设存储空间内。当电子设备对各个声道的音频数据进行播放处理时,可以是按照各个音频数据的音频参数,同时播放各个声道的音频数据。可选的,由于此时的音频数据为数字音频数据,所以可以是先按照该音频数据的音频参数,将该数字音频数据转换为模拟音频数据,然后再控制电子设备上配置的播放装置(如喇叭),同时播放各个声道的模拟音频数据。

可选的,若后续电子设备需要播放历史存储的音频数据时,可以是从预设存储空间中获取需要播放的音频数据的音频文件,并基于该音频文件中记录的各个声道的音频数据以及音频参数,按照上述介绍的方法,同时播放各个声道的音频数据。

本实施例提供了一种多声道音频数据的处理方法,电子设备内的音频编解码芯片对于采集到的多声道的音频数据,将其平均划分到两个数据集,并为其添加字节标识后,根据帧时钟信号,将两个数据集中包含的添加有字节标识的音频数据编码为串行数据传输给cpu,cpu在接收到串行数据后,先根据帧时钟信号和串行数据中包含的字节标识,解码出各个声道的音频数据,并确定出其音频参数,进而根据各个声道的音频数据及其音频参数,进行多声道音频数据的处理操作。本发明实施例的方案可实现基于i2s接口传输大于二声道的音频数据,从而使得配置低成本cpu的电子设备也可以接收并对大于二声道的音频数据进行处理,进而提高电子设备提供智能交互服务的准确性。此外,由于i2s接口的成本与常用的多声道音频数据传输接口tdm相比,成本较低,所以电子设备无论是从数据传输接口还是cpu的设置上都极大的降低了生产成本。

图4是本发明实施例提供的一种多声道音频数据的处理装置的结构示意图,该装置可执行本发明任意实施例所提供的多声道音频数据的处理方法,具备执行方法相应的功能模块和有益效果。如图4所示,该装置包括:

数据划分模块401,用于将采集的偶数个声道的音频数据平均划分至两个数据集中;

标识添加模块402,用于为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

数据传输模块403,用于根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

本实施例提供了一种多声道音频数据的处理装置,对于采集到的偶数个声道的音频数据,平均划分到两个数据集中,并针对每一个数据集都为其中包含的各个声道的音频数据添加不同的字节标识,进而根据i2s总线中的帧时钟信号,将两个数据集中包含的添加有字节标识的音频数据编码为串行数据进行传输。本发明实施例的方案解决了现有i2s接口无法传输大于二声道的音频数据的问题,从而使得配置低成本cpu的电子设备也可以接收并对大于二声道的音频数据进行处理,进而提高了低成本电子设备提供智能交互服务的准确性。

进一步的,所述数据传输模块403具体用于:

在帧时钟信号为低电平时,将第一数据集中添加有字节标识的音频数据编码为串行数据;

在帧时钟信号为高电平时,将第二数据集中添加有字节标识的音频数据编码为串行数据;

通过集成电路内置音频总线i2s接口传输所述帧时钟信号和所述串行数据。

进一步的,所述偶数个声道为大于二的偶数个声道,且划分后的每个数据集中包含的声道个数为至少两个。

进一步的,所述装置还包括:

音频数据解析模块,用于根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据;

音频参数确定模块,用于确定所述各个声道的音频数据的音频参数;

音频数据处理模块,用于依据所述各个声道的音频数据的音频参数,对所述各个声道的音频数据进行处理。

进一步的,所述音频数据解析模块具体用于:

将帧时钟信号为低电平时传输的串行数据作为第一数据,并根据所述第一数据中包含的字节标识,从所述第一数据中解码出所述第一数据中包括的各个声道的音频数据;

将帧时钟信号为高电平时传输的串行数据作为第二数据,并根据所述第二数据中包含的字节标识,从所述第二数据中解码出所述第二数据中包括的各个声道的音频数据。

进一步的,所述音频数据处理模块具有用于:

对所述各个声道的音频数据进行存储处理和/或播放处理。

进一步的,所述各个声道的音频数据的音频参数包括:采样频率参数、声道标号参数和位宽参数。

本公开实施例提供的多声道音频数据的处理装置,与上述各实施例提供的多声道音频数据的处理方法属于同一发明构思,未在本公开实施例中详尽描述的技术细节可参见上述各实施例,并且本公开实施例与上述各实施例具有相同的有益效果。

值得注意的是,上述多声道音频数据的处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

图5为本发明实施例提供的一种电子设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性电子设备50的框图。图5显示的电子设备50仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图5所示,该电子设备50以通用计算设备的形式表现。该电子设备50的组件可以包括但不限于:一个或者多个处理器501,存储装置502,连接不同系统组件(包括存储装置502和处理器501)的总线503。

总线503表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

电子设备50典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备50访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储装置502可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)504和/或高速缓存存储器505。电子设备50可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统506可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线503相连。存储装置502可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块507的程序/实用工具508,可以存储在例如存储装置502中,这样的程序模块507包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块507通常执行本发明所描述的实施例中的功能和/或方法。

电子设备50也可以与一个或多个外部设备506(例如键盘、指向设备、显示器510等)通信,还可与一个或者多个使得用户能与该设备交互的设备通信,和/或与使得该电子设备50能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口511进行。并且,电子设备50还可以通过网络适配器512与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图5所示,网络适配器512通过总线503与电子设备50的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备50使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理器501通过运行存储在存储装置502中的程序,从而执行各种功能应用以及数据处理。

在一个实施例中,该处理器501执行计算机程序时实现以下步骤:

将采集的偶数个声道的音频数据平均划分至两个数据集中;

为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

在一个实施例中,处理器501执行计算机程序根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输时具体用于实现以下步骤:

在帧时钟信号为低电平时,将第一数据集中添加有字节标识的音频数据编码为串行数据;

在帧时钟信号为高电平时,将第二数据集中添加有字节标识的音频数据编码为串行数据;

通过集成电路内置音频总线i2s接口传输所述帧时钟信号和所述串行数据。

可选的,所述偶数个声道为大于二的偶数个声道,且划分后的每个数据集中包含的声道个数为至少两个。

在一个实施例中,处理器501执行计算机程序根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输之后,还实现以下步骤:

根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据;

确定所述各个声道的音频数据的音频参数;

依据所述各个声道的音频数据的音频参数,对所述各个声道的音频数据进行处理。

在一个实施例中,处理器501执行计算机程序根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据时具体用于实现以下步骤:

将帧时钟信号为低电平时传输的串行数据作为第一数据,并根据所述第一数据中包含的字节标识,从所述第一数据中解码出所述第一数据中包括的各个声道的音频数据;

将帧时钟信号为高电平时传输的串行数据作为第二数据,并根据所述第二数据中包含的字节标识,从所述第二数据中解码出所述第二数据中包括的各个声道的音频数据。

在一个实施例中,处理器501执行计算机程序对所述各个声道的音频数据进行处理时具体用于实现以下步骤:

对所述各个声道的音频数据进行存储处理和/或播放处理。

可选的,所述各个声道的音频数据的音频参数包括:采样频率参数、声道标号参数和位宽参数。

本发明实施例提供的电子设备,对于采集到的偶数个声道的音频数据,平均划分到两个数据集中,并针对每一个数据集都为其中包含的各个声道的音频数据添加不同的字节标识,进而根据i2s总线中的帧时钟信号,将两个数据集中包含的添加有字节标识的音频数据编码为串行数据进行传输。本发明实施例的方案解决了现有i2s接口无法传输大于二声道的音频数据的问题,从而使得配置低成本cpu的电子设备也可以接收并对大于二声道的音频数据进行处理,进而提高了低成本电子设备提供智能交互服务的准确性。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可实现以下步骤:

将采集的偶数个声道的音频数据平均划分至两个数据集中;

为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

在一个实施例中,计算机程序根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输被处理器执行时具体用于实现以下步骤:

在帧时钟信号为低电平时,将第一数据集中添加有字节标识的音频数据编码为串行数据;

在帧时钟信号为高电平时,将第二数据集中添加有字节标识的音频数据编码为串行数据;

通过集成电路内置音频总线i2s接口传输所述帧时钟信号和所述串行数据。

可选的,所述偶数个声道为大于二的偶数个声道,且划分后的每个数据集中包含的声道个数为至少两个。

在一个实施例中,计算机程序根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输被处理器执行之后还实现以下步骤:

根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据;

确定所述各个声道的音频数据的音频参数;

依据所述各个声道的音频数据的音频参数,对所述各个声道的音频数据进行处理。

在一个实施例中,计算机程序根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据被处理器执行时具体用于实现以下步骤:

将帧时钟信号为低电平时传输的串行数据作为第一数据,并根据所述第一数据中包含的字节标识,从所述第一数据中解码出所述第一数据中包括的各个声道的音频数据;

将帧时钟信号为高电平时传输的串行数据作为第二数据,并根据所述第二数据中包含的字节标识,从所述第二数据中解码出所述第二数据中包括的各个声道的音频数据。

在一个实施例中,计算机程序对所述各个声道的音频数据进行处理被处理器执行时具体用于实现以下步骤:

对所述各个声道的音频数据进行存储处理和/或播放处理。

可选的,所述各个声道的音频数据的音频参数包括:采样频率参数、声道标号参数和位宽参数。

本发明实施例提供的计算机可读存储介质,对于采集到的偶数个声道的音频数据,平均划分到两个数据集中,并针对每一个数据集都为其中包含的各个声道的音频数据添加不同的字节标识,进而根据i2s总线中的帧时钟信号,将两个数据集中包含的添加有字节标识的音频数据编码为串行数据进行传输。本发明实施例的方案解决了现有i2s接口无法传输大于二声道的音频数据的问题,从而使得配置低成本cpu的电子设备也可以接收并对大于二声道的音频数据进行处理,进而提高了低成本电子设备提供智能交互服务的准确性。

本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

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

本领域普通技术人员应该明白,上述的本发明实施例的各模块或各操作可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或操作制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间的相同或相似的部分互相参见即可。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:

1.一种多声道音频数据的处理方法,其特征在于,包括:

将采集的偶数个声道的音频数据平均划分至两个数据集中;

为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

2.根据权利要求1所述的方法,其特征在于,所述根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输的步骤,包括:

在帧时钟信号为低电平时,将第一数据集中添加有字节标识的音频数据编码为串行数据;

在帧时钟信号为高电平时,将第二数据集中添加有字节标识的音频数据编码为串行数据;

通过集成电路内置音频总线i2s接口传输所述帧时钟信号和所述串行数据。

3.根据权利要求1或2所述的方法,其特征在于,所述偶数个声道为大于二的偶数个声道,且划分后的每个数据集中包含的声道个数为至少两个。

4.根据权利要求1所述的方法,其特征在于,在根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输的步骤之后,还包括:

根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据;

确定所述各个声道的音频数据的音频参数;

依据所述各个声道的音频数据的音频参数,对所述各个声道的音频数据进行处理。

5.根据权利要求4所述的方法,其特征在于,所述根据帧时钟信号和所述串行数据中包含的字节标识,从所述串行数据中解码出各个声道的音频数据的步骤,包括:

将帧时钟信号为低电平时传输的串行数据作为第一数据,并根据所述第一数据中包含的字节标识,从所述第一数据中解码出所述第一数据中包括的各个声道的音频数据;

将帧时钟信号为高电平时传输的串行数据作为第二数据,并根据所述第二数据中包含的字节标识,从所述第二数据中解码出所述第二数据中包括的各个声道的音频数据。

6.根据权利要求4所述的方法,其特征在于,所述对所述各个声道的音频数据进行处理的步骤,包括:

对所述各个声道的音频数据进行存储处理和/或播放处理。

7.根据权利要求4-6中任一项所述的方法,其特征在于,所述各个声道的音频数据的音频参数包括:采样频率参数、声道标号参数和位宽参数。

8.一种多声道音频数据的处理装置,其特征在于,包括:

数据划分模块,用于将采集的偶数个声道的音频数据平均划分至两个数据集中;

标识添加模块,用于为每个数据集中包含的各个声道的音频数据添加不同的字节标识;

数据传输模块,用于根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。

9.一种电子设备,其特征在于,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的多声道音频数据的处理方法。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的多声道音频数据的处理方法。

技术总结

本发明实施例公开了一种多声道音频数据的处理方法、装置、终端和存储介质,该方法包括:将采集的偶数个声道的音频数据平均划分至两个数据集中;为每个数据集中包含的各个声道的音频数据添加不同的字节标识;根据帧时钟信号,将所述两个数据集中添加有字节标识的音频数据编码为串行数据进行传输。本发明实施例的技术方案实现了采用I2S接口传输多声道的音频数据,从而使得配置低成本CPU的电子设备也可以实现对多声道音频数据进行处理,进而提高低成本电子设备提供智能交互服务的准确性。

技术研发人员:唐峰

受保护的技术使用者:闻泰科技(无锡)有限公司

技术研发日:.11.15

技术公布日:.02.25

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