一种音频通信方法、设备及系统与流程

文档序号:21398680发布日期:2020-07-07 14:31阅读:213来源:国知局
一种音频通信方法、设备及系统与流程

本申请涉及通信技术领域,尤其涉及一种音频通信方法、设备及系统。



背景技术:

蓝牙技术的广泛发展使蓝牙产品成为人们生活的一部分,尤其是以智能手机为中心的蓝牙耳机和蓝牙音箱等音频应用带给人们极大的方便。蓝牙主要是一种点到点的通信技术,这样的网络拓扑限制了蓝牙满足人们更多更广泛的需求。为此,蓝牙标准增加了无连接从设备广播技术(csb:connectionlessslavebroadcast),实现点到多点的数据传输。

但是,csb并不是专门传输音频的通信协议。采用csb实现点到多点音频传输时,并没有专门的音量控制通道和方法。因此,通常的点到多点音频广播没有来自发送端的音量控制功能。为了更加方便用户从发送端调节音频广播接收端的音量,一种方法是在传输音频数据的同时传输音量控制信息,或者,把音量控制信息编码在音频数据中一起广播。但是,这种方法不仅占用数据通道的带宽,且音量控制信息传输不可靠。尤其在信号被遮挡而连续丢失数据时,音频数据可以通过plc(packetlossconcealment)实现丢包补偿,但是,音量控制数则无法恢复或补偿,从而无法同步调节音量而导致各广播接收设备播放的音量不同步。

因此,有必要提出一种新的方案来克服上述问题。



技术实现要素:

本申请实施例中提供了一种音频通信方法、设备及系统,用于在点到多点之间进行音频传输时实现音量控制。

根据本申请实施例的第一个方面,其提供了一种音频通信方法,包括:将待发送的音频数据按固定间隔编码;生成广播同步序列和广播音量控制序列;以预定的广播间隔为周期在第一时隙上广播发送编码的音频数据,其中,在一个广播间隔的第一时隙的广播锚点时隙发送编码的m帧音频数据,所述预定的广播间隔为所述固定间隔的m倍,所述m为正整数;以预定的广播音量控制间隔为周期广播发送所述广播音量控制序列,其中在每个音量控制间隔内,所述广播音量控制序列被广播发送一组或多组,每组包含一次或多次,所述广播音量控制间隔为所述广播间隔的正整数倍;以预定的广播同步序列间隔为周期广播发送所述广播同步序列,其中所述广播同步序列间隔是所述广播间隔的正整数倍。

根据本申请实施例的第二个方面,其提供了一种音频通信方法,包括:以预定的广播同步序列间隔搜索并解析广播同步序列;根据解析的广播同步序列以预定的广播音量控制间隔接收广播音量控制序列,根据获取的广播音量控制序列设置音频的播放音量值;根据解析的广播同步序列以预定的广播间隔在第一时隙上接收并解调音频数据;根据解析的广播同步序列对所述音频数据进行解码;基于设置的音频的播放音量值播放解码的音频数据。

根据本申请实施例的第三个方面,其提供了一种音频通信设备,包括:数据和协议处理器、射频发射机和音频处理器,所述数据和协议处理器、所述射频发射机和所述音频处理器协同工作以执行如下操作:对待发送的音频数据按固定间隔编码;生成广播同步序列和广播音量控制序列;以预定的广播间隔在第一时隙上广播发送,其中,在一个广播间隔的第一时隙的广播锚点时隙发送编码的m帧音频数据,所述预定的广播间隔为所述固定间隔的m倍,所述m为正整数;以预定的广播音量控制间隔广播发送,其中在每个音量控制间隔内,所述广播音量控制序列被广播发送一组或多组,每组包含一次或多次,其中所述广播音量控制间隔为所述广播间隔的正整数倍;以预定的广播同步序列间隔为周期广播发送广播同步序列,其中所述广播同步序列间隔是所述广播间隔的正整数倍。

根据本申请实施例的第四个方面,其提供了一种音频通信设备,包括:射频接收机、数据和协议处理器和音频处理器,所述射频接收机、所述数据和协议处理器和所述音频处理器协同工作以执行如下操作:以预定的广播同步序列间隔搜索并解析广播同步序列;根据解析的广播同步序列以预定的广播音量控制间隔接收广播音量控制序列,根据获取的广播音量控制序列设置音频的播放音量值;根据解析的广播同步序列以预定的广播间隔在第一时隙上接收并解调音频数据;根据解析的广播同步序列对所述音频数据进行解码;基于设置的音频的播放音量值播放解码的音频数据。

根据本申请实施例的第五个方面,其提供了一种音频通信系统,包括:发送设备,所述发送设备是上文所述的音频通信设备;一个或多个接收设备,所述接收设备是上文所述的音频通信设备。

与现有技术相比,采用本申请实施例中提供的音频通信方法、设备及系统,在广播发送端,以预定的广播音量控制间隔为周期广播发送所述广播音量控制序列,其中在每个音量控制间隔内,所述广播音量控制序列被广播发送一组或多组,每组包含一次或多次。在广播接收端,以预定的广播音量控制间隔接收广播音量控制序列,根据获取的广播音量控制序列设置音频的播放音量值,基于设置的音频的播放音量值播放解码的音频数据。从而实在点到多点之间进行音频传输时实现音量控制。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了本申请中的无线广播系统在一个实施例中的结构框图;

图2示出了本申请中的无线广播发送设备在一个实施例中的结构框图;

图3示出了本申请中的无线广播接收设备在一个实施例中的结构框图;

图4示出了图2中的无线广播发送设备执行的无线音频通讯方法在一个实施例中的流程图;

图5为本申请中的广播间隔的时序示意图;

图6为本申请中的广播同步序列间隔的时序示意图;

图7为本申请中的广播音量控制间隔的时序示意图;

图8为示出了图3中的无线广播接收设备执行的无线音频通讯方法在一个实施例中的流程图;

图9为示出了在一个广播音频控制序列间隔内接收广播音频控制序列的方法的流程示意图;和

图10为示出了在一个广播间隔内接收音频数据的方法的流程示意图。

具体实施方式

为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

本发明提供一种具有音量控制功能的点到多点无线广播方案。所述音量控制采用同数据广播通道独立的更加可靠的广播音量控制信道用于广播音量控制。另外,广播音量控制信道的数据采用低速率编码,抗干扰性能更好的短包传输,比广播数据更多次的重复传输。

图1示出了本申请中的无线广播系统在一个实施例中的结构框图。如图1所示的,所述无线广播系统10包括无线广播发送设备100和一个或多个无线广播接收设备200。所述无线广播系统10可以实现音频信号从一点到多点的无线广播传输,因此所述无线广播系统10可以被称之为音频通信系统,无线广播发送设备100和无线广播接收设备200都可以被称为音频通信设备。无线广播发送设备100通过无线、有线或本地存储单元获取音频数据,并编码为等间隔的音频数据帧,通过无线方式在预定的时隙内广播给无线广播接收设备200。同时,无线广播发送设备100也把音量控制信息在固定的时隙内广播给无线广播接收设备200用于控制播放音量。

图2示出了本申请中的无线广播发送设备100在一个实施例中的结构框图。如图2所示的,所述无线广播发送设备100包括射频发射机110、数据和协议处理器120、音频处理器130和天线140。在一些实施例中,所述无线广播发送设备100还包括用户接口150。

所述无线广播发送设备100可以通过音源接口(未图示)获取音频数据,音源接口可以是usb接口、sd卡、无线连接接口等。用户接口150可以是按键、无线控制接口等。音频数据经过音频处理器130编码为适合无线广播的数据帧结构和码率,再送给数据和协议处理器120。数据和协议数据器120把音频数据帧封装为适合无线广播的数据格式,再通过射频发射机110调制为射频信号,然后,通过天线140广播给无线广播接收设备200。无线广播发送设备100通过音源接口或用户接口150获取音量控制信息,数据和协议数据器150把音量控制信息封装在广播音量控制序列里,再通过射频发射机110调制为射频信号,然后,通过天线140广播给无线广播接收设备200。

在一个实施例中,所述音源接口为蓝牙模块,用于通过蓝牙连接从智能手机等蓝牙设备获取音频数据。在本实施例中,天线140、射频发射机110、数据和协议处理器120,音频处理器130和用户接口150都同蓝牙模块共享。也就是,在本实施例中,天线140、射频发射机110、数据和协议处理器120,音频处理器130和用户接口150,对应于蓝牙模块的蓝牙天线、蓝牙射频发射机、蓝牙数据和协议处理器、音频处理器和用户接口。其中,音频处理器130实现音频编码、音频解码、丢包补偿等功能。这些模块在无线广播功能和蓝牙连接之间通过分时复用的方式共享。

图3示出了本申请中的无线广播接收设备200在一个实施例中的结构框图。如图3所示的,所述无线广播接收设备200包括射频接收机210、数据和协议处理器220、音频处理器230和天线240。

无线广播接收设备200通过天线240接收无线广播发送设备100发送的广播同步序列、广播音量控制序列和音频数据的射频信号,经过射频接收机210解调为对应的基带数据,然后经过数据和协议处理器220恢复出同步信息、音量控制信息和音频数据,并把音频数据送给音频处理器230做进一步的处理和播放,音频进一步处理包括丢包补偿。无线广播接收设备200也可以通过用户接口250调整本地音频的播放音量值。

图4示出了图2中的无线广播发送设备100执行的无线音频通讯方法400在一个实施例中的流程图。所述无线广播发送设备100的数据和协议处理器120、射频发射机110和音频处理器130协同工作以执行所述无线音频通讯方法400。所述无线音频通讯方法400包括如下操作。

s401,将待发送的音频数据按固定间隔编码。

在一个实施例中,可以通过音源接口获取待发送的音频数据,具体的,所述音源接口为蓝牙模块,其可以通过蓝牙连接从智能手机等蓝牙设备获取音频数据。所述无线广播发送设备100还包括射频接收机,所述射频接收机用于在第二时隙接收来自音源设备的音频数据,并解调;所述数据和协议处理器130用于对解调后的音频数据进行解码,并对解码后的所述音频数据按固定间隔重新编码。

在一个实施例中,获取音频数据后,可以通过音频处理器130采用opus编码方法(一种标准音频编码方式)重新编码。

s402,生成广播同步序列(st:synctrain)和广播音量控制序列。

在一个实施例中,通过音源接口或用户接口150获取音量控制信息,数据和协议数据器150把音量控制信息封装在广播音量控制序列里。具体的,所述广播音量控制序列包含音量控制使能比特和音量值比特,所述音量控制使能比特指示所述音量控制是否使能,所述音量值比特指示音量值。比如,音量控制使能比特为1比特,1代表调整音量,0代表不调整音量,音量值比特为4比特,这样可以实现32级音量值。

在一个实施例中,所述广播同步序列包括:设备地址、设备时钟、广播间隔、在一个广播间隔内的广播重传次数、广播起始时间点、广播音量控制序列间隔、广播音量控制序列的起始点、广播音量控制序列在一个音量控制间隔内的组数和每组的次数、广播音量控制序列的起始时间点和音频编码类型中的一个或几个。所述广播间隔用于指示连续的两个广播锚点之间的间隔时长;所述广播重传次数用于指示一个第一时隙中的广播重传时隙的个数;所述设备时钟用于指示发送设备的设备时钟;所述设备地址用于指示发送设备的地址;所述编码类型用于指示所述固定间隔编码的编码类型。

s403,以预定的广播间隔为周期在第一时隙上广播发送编码的音频数据,其中,在一个广播间隔的第一时隙的广播锚点时隙发送编码的m帧音频数据,所述预定的广播间隔为所述固定间隔的m倍,所述m为正整数,比如m可以为3、4、6、8等。

图5为本申请中的广播间隔的时序示意图。如图5所示的,一个广播间隔包括第一时隙和第二时隙。所述第一时隙用于广播发送编码的音频数据,所述第一时隙包括连续的一个广播锚点时隙(anchorpoint)和n个广播重传时隙,所述广播锚点时隙请见图5中的tx实线框,所述广播锚点时隙用于发送编码的m帧音频数据,所述广播重传时隙请见图5中的tx虚线框,所述广播重传时隙用于重传所述m帧音频数据,其中,所述n为非负整数,比如n可以为2、3、4等。本发明中,将广播锚点时隙的起始时间点称作锚点(anchorpoint)或广播锚点。所述第二时隙可以用于从音源设备接收数据和发送数据和/或广播发送广播同步序列和广播音量控制序列。所述音源设备可以是与所述无线广播发送设备通讯的智能手机。

在一个具体实施时,待发送的音频数据的重新编码可以采用等间隔方式,固定间隔可以为编码帧长,而在一个广播间隔内发送的编码帧的数量和广播间隔为固定间隔的倍数相等,从而使得在一个广播间隔内传输的音频数据正好对应这个间隔长度的音频,或者,在一个广播间隔内传输的音频编码数据解码后的播放时间正好是一个广播间隔的时间长度。例如,一个编码帧长为10ms,即该固定间隔为10ms,令m=2,即在一个广播间隔内发送2帧音频数据;因此将两个编码帧组成一个数据包的负载数据;而广播间隔为20ms。此时,在20ms的广播间隔内传输的音频数据解码后的播放时间也就是20ms。

s404,以预定的广播音量控制间隔为周期广播发送所述广播音量控制序列,其中在每个音量控制间隔内,所述广播音量控制序列被广播发送一组或多组,每组包含一次或多次,所述广播音量控制间隔为所述广播间隔的正整数倍。

图7为本申请中的广播音量控制间隔的时序示意图。如图7所示的,在一个广播音量控制间隔内,所述广播音量控制序列被广播发送了三组,每组包含两次,即所述广播音量控制序列共被传输了六次,以保证广播音量控制序列的可靠性。优选的,每组广播音量控制序列的间隔可以跟广播间隔相同。

所述广播音量控制序列用1/3编码后通过蓝牙dm1包按蓝牙跳频信道发送。

s405,以预定的广播同步序列间隔为周期广播发送所述广播同步序列,其中所述广播同步序列间隔是所述广播间隔的正整数倍。

广播同步序列的时序如图6所示,广播同步序列按固定间隔发送。在一个广播同步序列间隔内,等间隔地发送三次相同信息的广播同步序列。一个广播同步序列间隔内的三个广播同步序列之间的间隔为广播间隔的整数倍。

下面介绍所述无线音频通讯方法400的一个应用示例,在这个应用示例中,天线140、射频发射机110、数据和协议处理器120,音频处理器130和用户接口150都同蓝牙模块共享,也就是,在应用示例中,天线140、射频发射机110、数据和协议处理器120,音频处理器130和用户接口150,对应于蓝牙模块的蓝牙天线、蓝牙射频发射机、蓝牙数据和协议处理器、音频处理器和用户接口。

如图5所示的,广播间隔可以为30ms,按蓝牙时隙定义方法,每个广播间隔被分为625us长度的48个时隙(slots),其中,12slots或7.5ms为无线广播时段(即第一时隙),另外36slots或22.5ms作为第二时隙,用于蓝牙模块作为音源接口同智能手机获取音频数据,或发送广播同步序列和广播音量控制序列,或其它功能。所述音频处理器130采用opus编码方法重新编码,编码速率100kbps,编码帧长为10ms,每帧125bytes,每三个编码帧组成一个数据包,共375bytes。采用扩展长度的经典蓝牙2dh3包类型广播,每个2dh3包占用4slots(其中3个slots发送数据,1个空闲slot),负载数据长度为375bytes。如图5所示,在每个广播间隔内,所述2dh3包重复发送3次,共占用12slots。

无线广播发送设备100通过蓝牙数据和协议处理器把编码后的音频数据帧封装为2dh3包的数字信号送给蓝牙射频发射机,并根据蓝牙跳频方式设置射频发射机110的信道。射频发射机110把上述数字信号调制为预设信道上的射频信号,并通过天线发射给无线广播接收设备200。

再参看图6所示,一个广播同步序列间隔内的三个广播同步序列分别在0,24和78信道上采用2dh1发送。同步序列间隔180ms,即288slots,是广播间隔的6倍。三个信道上的广播同步序列之间的间隔为60ms,即96slots,是广播间隔的2倍。无线广播发送设备100通过蓝牙数据和协议处理器130把封装为2dh1的广播同步序列的数字信号送给蓝牙射频发射机110,并设置射频发射机110相应的信道。射频发射机把上述数字信号调制为预设信道上的射频信号,并通过天线发射给无线广播接收设备200。

如图7所示的,广播音量控制间隔可以为90ms。在每个音量控制间隔内,等间隔地发送3组广播音量控制序列,即每组广播音量控制序列的间隔为30ms,跟广播间隔相同。每组广播音量控制序列发送2次广播音量控制序列。即每个音量控制间隔内,发送6次广播音量控制序列,以保证广播音量控制序列的可靠性。广播音量控制序列的音量控制信息用1/3编码后通过蓝牙dm1包按蓝牙跳频信道发送。无线广播发送设备100通过蓝牙数据和协议处理器把封装为dm1的广播音量控制序列的数字信号送给蓝牙射频发射机,并根据蓝牙跳频方式设置射频发射机的信道。射频发射机把上述数字信号调制为预设信道上的射频信号,并通过天线发射给无线广播接收设备200。

图8为示出了图3中的无线广播接收设备200执行的无线音频通讯方法800在一个实施例中的流程图。所述无线广播接收设备200的数据和协议处理器220、射频接收机210和音频处理器230协同工作以执行所述无线音频通讯方法800。所述无线音频通讯方法800包括如下操作。

s801,以预定的广播同步序列间隔搜索并解析广播同步序列。

所述广播同步序列包括:设备地址、设备时钟、广播间隔、在一个广播间隔内的广播重传次数、广播起始时间点、广播音量控制序列间隔、广播音量控制序列的起始点、广播音量控制序列在一个广播音量控制间隔内的组数和每组的次数、广播音量控制序列的起始时间点和音频编码类型中的一个或几个。所述广播间隔用于指示连续的两个广播锚点之间的间隔时长;所述广播重传次数用于指示一个第一时隙中的广播重传时隙的个数;所述设备时钟用于指示发送设备的设备时钟;所述设备地址用于指示发送设备的地址;所述编码类型用于指示所述固定间隔编码的编码类型。

s802,根据解析的广播同步序列以预定的广播音量控制间隔接收广播音量控制序列,根据获取的广播音量控制序列设置音频的播放音量值。

图9为示出了在一个广播音频控制序列间隔内接收广播音频控制序列的方法的流程示意图。如图9所示的,在一个广播音频控制序列间隔内接收广播音频控制序列的方法包括如下操作。

步骤910,初始设置接收次数为0。步骤920,从一个广播音量控制间隔的第一个时段开始接收广播音量控制序列。如图7所示的,在一个广播音量控制间隔内有六个时段用来传输广播音量控制序列。

步骤930,对接收到的广播音量控制序列进行循环冗余校验(crc校验),当接收到的广播音量控制序列的循环冗余校验结果正确时,在这个广播音量控制间隔内结束对所述广播音量控制序列的接收。当接收到的广播音量控制序列的循环冗余校验结果不正确时,在步骤940处累加所述广播音量控制序列的接收次数,并在步骤950中判断所述接收次数是否等于在一个广播音量控制间隔内的广播音量控制序列的传输次数门限x,其中在一个广播音量控制间隔内的广播音量控制序列的传输次数门限等于广播音量控制序列在一个广播音量控制间隔内的组数和每组的次数的乘积。如图7所示的,x=3*2=6。当所述接收次数不等于在一个广播音量控制间隔内的广播音量控制序列的传输次数门限x时,返回步骤920,在所述广播音量控制间隔内继续接收所述音频数据。当所述接收次数等于在一个广播音量控制间隔内的广播音量控制序列的传输次数门限x时,在所述广播音量控制间隔内结束对所述广播音量控制序列的接收。

在一个实施例中,所述广播音量控制序列包含音量控制使能比特和音量值比特,所述音量控制使能比特指示所述音量控制是否使能,所述音量值比特指示音量值。如果收到的广播音量控制序列里的音量控制使能比特为有效,则在广播音量控制间隔的结束时间点基于收到的广播音量控制序列里的音量值比特指示的音量值设置音频的播放音量值,如果收到的广播音量控制序列里的音量控制使能比特为无效,则在当前广播音量控制间隔内不设置新的音频的播放音量值。

如果在一个音量控制间隔内收不到正确的音量控制序列,则暂停音频的播放。在重新获得音量控制序列及同步后再播放,从而避免音量控制混乱,及音乐播放卡顿。

s803,根据解析的广播同步序列以预定的广播间隔在第一时隙上接收并解调音频数据。

图10为示出了在一个广播间隔内接收音频数据的方法的流程示意图。如图10所示的,在一个广播间隔内接收音频数据的方法包括如下操作。

步骤710,初始设置接收次数为0。步骤720,从一个广播间隔的广播锚点时隙开始接收并解调音频数据。步骤730,对解调后的音频数据进行循环冗余校验。当所述音频数据的循环冗余校验结果正确时,在所述广播间隔内结束对所述音频数据的接收。当所述音频数据的循环冗余校验结果不正确时,在步骤740累加所述音频数据的接收次数,并在步骤750判断所述接收次数是否等于传输次数门限n+1,其中所述传输次数门限为所述广播重传次数n加1。当所述接收次数不等于传输次数门限时,返回步骤720在所述广播间隔内继续接收所述音频数据。当所述接收次数等于传输次数门限时,在所述广播间隔内结束对所述音频数据的接收。

s804,根据解析的广播同步序列对所述音频数据进行解码。

具体的,根据所述广播同步序列中的音频编码类型对对所述音频数据进行解码。

s805,基于设置的音频的播放音量值播放解码的音频数据。

在一个实施例中,将从收到的广播音量控制序列中获取的音量值作为绝对值;将通过用户接口设置的音量值作为相对值;结合所述相对值和所述绝对值获得本地音频播放的最终音量值,基于本地音频播放的最终音量值播放解码的音频数据。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1