接收音频数据的方法、装置以及音频播放设备与流程

文档序号:31947434发布日期:2022-10-26 05:10阅读:212来源:国知局
接收音频数据的方法、装置以及音频播放设备与流程

1.本技术实施例涉及音频技术领域,并且更为具体地,涉及一种接收音频数据的方法、装置以及音频播放设备。


背景技术:

2.近年来随着无线通信技术的发展,手机、无线耳机等电子设备迅速普及,人们越来越多的应用蓝牙等无线方式来传播和分享音频。在无线传输时,由于种种干扰因素,如果音频播放设备收到的数据有错误时,需要进行重传。重传会严重占用带宽,甚至造成音频播放过程中出现卡顿现象。


技术实现要素:

3.本技术实施例提供了一种接收音频数据的方法、装置以及音频播放设备,下面对本技术实施例的各个方面进行介绍。
4.第一方面,提供一种接收音频数据的方法,包括:响应于确定接收到第一编码包且未接收到第二编码包,生成所述第二编码包的补偿数据,其中,所述第一编码包包括初始pcm音频数据的第一批多个二进制位,所述第二编码包包括所述初始pcm音频数据的第二批一个或多个二进制位;根据所述第一批多个二进制位的数据和所述第二批一个或多个二进制位的补偿数据,生成目标pcm音频数据。
5.第二方面,提供一种接收音频数据的装置,包括:接收器,配置成通过无线信道接收初始pcm音频数据对应的第一编码包和第二编码包;处理器,配置成响应于确定接收到所述第一编码包且未接收到所述第二编码包,根据第一批多个二进制位的数据和第二批一个或多个二进制位的补偿数据,生成目标pcm音频数据;其中,所述第一编码包包括所述初始pcm音频数据的所述第一批多个二进制位,所述第二编码包包括所述初始pcm音频数据的所述第二批一个或多个二进制位。
6.第三方面,提供一种音频播放设备,包括如第二方面所述的接收音频数据的装置。
7.第四方面,提供一种芯片,包括处理器,所述处理器配置成执行如第一方面中任一项所述的方法。
8.第五方面,提供一种无线耳机,包括如第四方面所述的芯片。
9.在丢包的情况下,本技术实施例对pcm音频数据中的部分二进制位进行数据补偿,一方面可以避免重传带来的带宽占用,另一方面也有助于降低对pcm音频数据进行整体补偿对音质的损伤。
附图说明
10.图1是蓝牙音频数据处理的基本流程的示意图。
11.图2是相关技术提供的整体丢包补偿方式的thd+n性能变化的示意图。
12.图3是本技术实施例提供的接收音频数据的方法的流程示意图。
13.图4是本技术实施例提供的丢包补偿方式的thd+n性能变化的示意图。
14.图5是本技术实施例提供的接收音频数据的装置的结构示意图。
15.图6是本技术实施例提供的音频播放设备的结构示意图。
16.图7是本技术实施例提供的芯片的结构示意图。
具体实施方式
17.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。
18.需要说明的是,本技术实施例提及的音频播放设备可以指能够播放无线音频信号的任意类型的音频播放设备。该音频播放设备例如可以是无线耳机。下面主要以无线耳机为例进行举例说明。
19.无线耳机是中间的线被电波代替,发射端的音频信号通过电波发送到接收端的耳机中。无线耳机和有线耳机相比,使用比较方便,不受有线的束缚和限制,因此得到了广泛的应用。随着无线耳机,尤其是真无线立体声(true wireless stereo,tws)耳机的爆发式增长,消费者在生活和工作中使用无线耳机已非常常见,比如听音乐,打电话。
20.同时,消费者对音频的播放质量的要求越来越高。例如,很多消费者希望通过无线音频播放设备收听高质量音乐,或无损(lossless)音乐。
21.由于tws耳机延时性能的提高,在游戏中也逐步取代了有线耳机。伴随着tws耳机降噪功能的发展,在地铁、公交车或机场等这些嘈杂场景中,使用tws降噪耳机比普通有线耳机有更好的听觉体验。因此,人们越来越多的应用蓝牙等无线方式来传播和分享音频。
22.图1是蓝牙音频数据处理流程的示意图。如图1所示,手机可以包括音频数字信号处理(audio digital signal processing,adsp)模块110和蓝牙(blue tooth,bt)发射模块120。
23.adsp模块110可以对音频的源数据进行编码或译码。编译码技术能有效减少数字存储占用的空间,提高系统的运行效率。adsp模块110侧还设有缓冲器,以便对需要传输的数据进行缓存。
24.bt发射模块120可以包括bt收发器122,bt收发器122用于将音频数字信号转换成模拟信号,并通过无线信道将模拟信号发射出去。此外,bt侧也可以设有缓冲器121,以便对需要接收的数据进行缓存。
25.音频信号的数据流向过程大致分为以下步骤:
26.步骤一:音频处理模块110对音频的源数据进行编码,音频的源数据格式通常采用脉冲编码调制(pulse code modulation,pcm)。音频信号的源数据多为16位、24位或32位数据。编码后的数据暂存到音频处理模块110侧的缓冲器中。
27.步骤二:通过数据总线将音频处理模块110侧缓冲区的数据传输到bt侧的缓冲区121中,bt收发器122将音频数字信号转换成模拟信号,并无线传输给tws耳机130。数据总线的方式可以有多种,比如集成电路内置音频总线(inter-ic sound,i2s)、低功耗芯片间串行媒体总线(serial low-power inter-chip media bus,slimbus)或sound wire等。
28.步骤三:tws耳机130接收模拟音频信号,经过相应的模数转换处理,从听筒播放出声音。
29.蓝牙是一种低成本大容量的短距离无线通信规范。蓝牙技术是全球开放的,在全球范围内具有很好的兼容性,通常使用2.4~2.485ghz的无线电波。
30.在上述无线传输时,由于种种因素,比如其它频段(如wi-fi 2.4ghz)、其它蓝牙设备的干扰,以及设备本身的射频性能的限制,如果蓝牙耳机侧收到的数据丢失或出错,那么现有处理方案通常需要重传。无线传输中每个数据包的长度可以有5ms或者7.5ms时长,如果重传会造成严重占用带宽的结果。如果干扰严重,重传次数过多时,蓝牙的无线带宽满足不了此种场景,或者不能实现即时通讯。
31.一种可能的方式是采用丢包补偿(packet loss compensation,plc)技术。丢包补偿技术的可能性是基于短时语音相似性,它可以处理较小的丢包率(《15%)和较小的语音包(4-40ms)。丢包补偿技术按照整个数据包或者数据帧为单位,根据之前的数据包或者数据帧估计出丢失的数据包,进行补偿音频信号。
32.总谐波失真加噪声(total harmonic distortion+noise,thd+n)是音频信号的一个主要性能指标,可以检查补偿后对音频信号的影响程度。图2是对音频信号进行1000kbps码率编码/解码之后,整体plc补偿前后的thd+n性能变化的示意图。如图2所示,没有发生plc处理前,音频信号的thd+n为0.000037%,发生音频数据的整体plc处理后,音频信号的thd+n增大到2.95%。可见,整体plc处理后严重影响了音频信号的thd+n的性能,用户可以明显察觉到音质的变化。
33.需要说明的是,上文提及的蓝牙音频数据传输失败后整体丢包补偿影响音频质量仅是一个示例,本技术实施例可应用于具有无线数据传输失败后进行整体丢包补偿处理的任意类型的场景。
34.因此,如何开发一种对音质影响小的丢包补偿处理方案是需要解决的问题。
35.针对上述问题,本技术实施例提出一种接收音频数据的方法,下面对本技术实施例进行详细描述。图3是本技术实施例提供的一种接收音频数据的方法的示意性流程图。图3的方法包括步骤s310至步骤s320,下面对这些步骤进行详细描述。
36.在步骤s310中,通过无线信道接收初始pcm音频数据的第一编码包和第二编码。确定接收到第一编码包且未接收到第二编码包,生成第二编码包的补偿数据。
37.初始pcm音频数据为pcm解码后的音频数据。pcm解码后可以得到若干帧的pcm音频数据。初始pcm音频数据可以是一帧数据中若干pcm音频数据中的一个。一帧例如是10毫秒。
38.初始pcm音频数据的位数可以表示采样深度。例如n位初始pcm音频数据可以表示其采样深度为n。n可以有多种取值,例如32、24、16等。n越大,代表对声音强度的记录就越精细。
39.初始pcm音频数据的位数用n表示时,该初始pcm音频数据可以包括从低位到高位的n个数据。例如,n为24时,初始pcm音频数据可以是24个从最低位到最高位排列的二进制数据。
40.初始pcm音频数据可以基于内存对齐的原则,对n位数据进行转换。初始pcm音频数据可以基于位数转换为多个二进制数据组。该多个二进制数据组可以包括第一二进制数据组和第二二进制数据组。第一编码包可以通过对第一二进制数据组进行音频编码生成,也就是说,第一编码包中的音频数据可以是第一二进制数据组中的数据。第二编码包可以通过对第二二进制数据组进行音频编码生成,也就是说,第二编码包中的音频数据可以是第
二二进制数据组中的数据。
41.对初始pcm音频数据进行转换可以是基于位数进行拆分,也可以是基于位数进行提取。在一些实施例中,将初始pcm音频数据拆分为多个二进制数据组。例如,初始pcm音频数据形成为n位二进制数据,可对其进行拆分,以n位数据中的高m位数据形成第一二进制数据组。又如,还可以以n位数据中的低l位数据形成第二二进制数据组。在另一些实施例中,可分别提取初始pcm音频数据中的特定位或其组合,以形成多个二进制数据组。例如,分别提取初始pcm音频数据(n位二进制数据)中的奇数位或偶数位,以分别形成第一二进制数据组或第二二进制数据组。
42.第一二进制数据组可以对应于初始pcm音频数据的第一批多个二进制位。第二二进制数据组可以对应于初始pcm音频数据的第二批一个或多个二进制位。
43.在一些实施例中,第一二进制数据组可以包括初始pcm音频数据中的连续分布的多个二进制位。在另一些实施例中,第一二进制数据组可以包括初始pcm音频数据中的离散分布的多个二进制位。例如,第一二进制数据组可以包括初始pcm音频数据中的奇数位或偶数位。
44.在一些实施例中,第二二进制数据组可以包括初始pcm音频数据中的一个二进制位,或连续分布的多个二进制位。在另一些实施例中,第二二进制数据组可以包括初始pcm音频数据中的离散分布的多个二进制位。例如,第二二进制数据组可以包括初始pcm音频数据中的偶数位或奇数位。
45.在一些实施例中,第一二进制数据组和第二二进制数据组对应的位数可以不同。
46.在一些实施例中,第一二进制数据组的位数可以大于第二二进制数据组的位数。例如,针对32位初始pcm音频数据,第一二进制数据组可以对应初始pcm音频数据的高24位,第二二进制数据组可以对应初始pcm音频数据的低8位。
47.在一些实施例中,第一二进制数据组对应的位数可以小于第二二进制数据组对应的位数。例如,针对64位初始pcm音频数据,第一二进制数据组可以对应初始pcm音频数据的高24位,第二二进制数据组可以对应初始pcm音频数据的低48位。
48.在一些实施例中,第一二进制数据组和第二二进制数据组对应的位数可以相同。例如,针对32位初始pcm音频数据,第一二进制数据组可以对应初始pcm音频数据的高16位,第二二进制数据组可以对应初始pcm音频数据的低16位。又如,针对32位初始pcm音频数据,第一二进制数据组可以对应初始pcm音频数据的高8位,第二二进制数据组可以对应初始pcm音频数据的中8位或低8位。
49.下面分别以32位和24位的初始pcm音频数据为例,给出初始pcm音频数据的几个具体的拆分示例。在下面的示例中,第一二进制数据组可以是从初始pcm音频数据中拆分出的高位数据;第二二进制数据组可以是初始pcm音频数据中拆分出的中位数据或低位数据。第二二进制数据组可以包括中位组或低位组,中位组由初始pcm音频数据中拆分出的中位数据组成,低位组由初始pcm音频数据中拆分出的低位数据组成。
50.对于32位的初始pcm音频数据,可以有以下几种拆分类型:24位+8位、24位+4位+4位、16位+16位、16位+8位+8位、16位+8位+4位+4位、16位+4位+4位+4位、8位+8位+8位等。
51.对于24位的初始pcm音频数据,可以有以下几种拆分类型:16位+8位、16位+4位+4位,8位+8位+8位等。
52.接收端通常包括数模转换器(digital to analog converter,dac)。在很多数字系统中(例如计算机),音频信号以数字方式存储和传输,而dac可以将数字信号转换为模拟信号,从而使得它们能够被外界识别。
53.dac对pcm音频数据进行数模转换时,信噪比(signal to noise ratio,snr)与pcm音频数据的采样深度有关。采样深度,也可以表示为pcm音频数据的位数,采样深度越大,snr越高。理论上,24位采样深度的snr可以达到144db,16位采样深度的snr可以达到96db,低8位采样深度的snr是48db,低4位采样深度的snr是24db。
54.但是,较好的dac的snr指标一般只能达到110db,而从数字域角度看,20位采样深度的数字信号理论snr为120db。因此,在一些实施例中,对于24位以上的初始pcm音频数据,高20位的pcm音频数据的理论snr比dac能达到的实际snr要高,可以达到dac的snr指标,低4位或以上数据经过dac以后基本上都隐藏在噪声之中了。
55.因此,在一些实施例中,可以将第一二进制数据组的位数设置为接近、等于或大于20位,从而减少后文提到的丢包补偿对音质产生的影响。
56.除了音频数据之外,第一编码包和第二编码包还可以包含附加信息。该附加信息例如可以包括例如标识信息和/或校验信息。
57.标识信息可用于标识编码包在码流中的位置。也就是说,标识信息可以对编码包在码流中的时间先后进行标记。音频播放设备根据该标识信息进行组包后,可以保证码流的顺序正确。前文提到的第一编码包和第二编码包可以包含相同的标识信息,音频播放设备可以根据标识信息找到初始pcm音频数据对应的编码包,并进行组包。
58.在一些实施例中,标识信息可以是时间序列码。时间序列码可以对第一编码包和第二编码包进行时间标记,以便音频播放设备按时间序列进行组包。在一些实施例中,时间序列码可以是一个0到2
63-1的长整形的变量。当时间序列码的变量增加到2
63-1时,下一个值可以为0。发送端可以按每个编码包对应的时间序列值进行标识。例如将时间序列值100编入该时刻对应编码包的时间序列位,下一个编码包对应的时间序列值就是101。
59.校验信息可以对编码包内的音频数据进行校验,以便接收端确定编码包的完整性。在一些实施例中,检验信息可以是校验码。例如,可以从编码包第1位比特值开始对下一个值进行异或计算,得到的计算结果即可作为校验码。
60.对第一编码包和第二编码包进行音频解码,得到pcm音频数据的第一二进制数据组和第二二进制数据组。其中,第一二进制数据组对应于初始pcm音频数据的第一批多个二进制位,第二二进制数据组对应于初始pcm音频数据的第二批一个或多个二进制位。
61.这里提到的音频解码可以是无损音频编码(free lossless audio codec,flac)解码,也可以是有损的高级音频编码(advanced audio coding,aac)解码。
62.在步骤s320中,根据第一批多个二进制位的数据和第二批一个或多个二进制位的补偿数据,生成目标pcm音频数据。也可以根据第一二进制数据组和第二二进制组的补偿数据,生成目标pcm音频数据。
63.将初始pcm音频数据分成多个二进制数据组,可以以更小的粒度进行重传,从而可以降低重传数据量和传输时延。此外,在丢包的情况下,本技术实施例对pcm音频数据中的部分二进制位进行数据补偿,一方面可以避免重传带来的带宽占用,另一方面也有助于降低对pcm音频数据进行整体补偿对音质的损伤。
64.在一些实施例中,第二二进制组的补偿数据可以为全0数据或全1数据。也就是说,可以将目标pcm音频数据中的与第二二进制组对应的数据位全部补0或全部补1。基于全0数据或全1数据进行补偿,实现简单。
65.在一些实施例中,第二二进制组的补偿数据可以为经过音频解码之后得到的错误数据。
66.在一些实施例中,第二二进制组的补偿数据可以为第一二进制数据组中的至少部分数据的副本数据。例如,该补偿数据可以是第一二进制数据组中的低位数据。以第一二进制组对应初始pcm音频数据中的高16位数据,第二二进制组对应初始pcm音频数据中的低8位数据为例,可以将第一二进制组的低8位数据作为第二二进制组的补偿数据。
67.在一些实施例中,如果第二二进制数据组对应的初始pcm音频数据的中位数据出错或丢失,对中位数据对应的第二编码包可以重传。在一些实施例中,如果第二二进制数据组对应的初始pcm音频数据的中位数据出错或丢失,对中位数据对应的第二编码包可以不重传,第二二进制组的中位组的补偿数据可以采用上述任一补偿方式。如果第二二进制数据组对应的初始pcm音频数据的低位数据出错或丢失,第二二进制组的低位组的补偿数据可以采用上述任一补偿方式。
68.例如,接收的24位初始pcm音频数据分为16位+4位+4位发送,第一编码包对应的第一二进制组为高16位的二进制数据。第二编码包对应的第二二进制组为可以包括由中间4位二进制数据组成的中间组和由低4位二进制数据组成的低位组。如果第二二进制组的中间4位二进制数据传输失败,可以重传中间组对应的第二编码包。在一些实施例中,如果第二二进制组的中间4位二进制数据传输失败,采用丢包补偿,对第二二进制组的中间组的补偿数据可以采用上述任一补偿方式。
69.图4是本技术实施例提供的丢包补偿方式的thd+n性能变化的示意图,图4的多种分组编码方式中数据补偿全部为0。如图4所示,对解码以后的音频信号进行编组,沿纵轴从上至下,每两行依次是原始音源,plc音频数据全部低8位(16+8方式)补0,plc音频数据全部中间4位(16+4+4方式)补0,plc音频数据全部低4位(16+4+4方式)补0后的音频信号的thd+n指标比较结果。
70.可以看出,即使把所有补偿的低8位、中间4位、低4位全部补0,对thd+n的影响也没有如图2的整体plc损失那么大,对音质的损害较小,用户基本不会感知到音质的变化。
71.在一些实施例中,如果第一编码包传输失败,则生成第一编码包的重传请求。以初始pcm音频数据为24位数据为例,假设第一二进制组对应初始pcm音频数据中的高16位数据,第二二进制组对应初始pcm音频数据中的低8位数据,则第一编码包包括初始pcm音频数据中的高16位数据,第二编码包包括初始pcm音频数据中的低8位数据。如果第一编码包传输失败,则可以重传该第一编码包,即重传初始pcm音频数据中的高16位数据。
72.上文结合图1-图4,详细描述了本技术的方法实施例,下面结合图5,详细描述本技术的装置实施例。应理解,装置实施例的描述与方法实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
73.图5是本技术实施例提供的一种接收音频数据的装置的结构示意图,该接收音频数据的装置500可以包括接收器510和处理器520。
74.接收器510可以配置成通过无线信道接收初始pcm音频数据对应的第一编码包和
第二编码包。
75.处理器520可以配置成对第一编码包和第二编码包进行音频解码,以得到第一二进制数据组和第二二进制数据组;响应于确定接收到第一编码包且未接收到第二编码包,根据第一二进制数据组和第二二进制组的补偿数据,生成目标pcm音频数据;其中,第一二进制数据组对应于初始pcm音频数据的第一批多个二进制位,第二二进制数据组对应于初始pcm音频数据的第二批一个或多个二进制位。
76.可选地,处理器510可以配置成:响应于确定第一编码包的传输失败,生成第一编码包的重传请求。
77.可选地,处理器510可以配置成:使得第二二进制组的补偿数据为以下数据中的一种:全0数据;全1数据;第二编码包经过音频解码之后得到的错误数据;以及第一二进制数据组中的至少部分数据的副本数据。
78.可选地,处理器510可以配置成:使得第一二进制数据组形成目标pcm音频数据中的n位数据中的高m位数据。
79.可选地,处理器510可以进一步配置成:使得第二二进制数据组的补偿数据形成n位数据中的低l位数据。
80.可选地,接收器510可以为蓝牙模块。
81.可选地,接收音频数据的装置500可以为无线耳机、无线音箱和tws耳机。
82.将初始pcm音频数据分成多个二进制数据组,可以以更小的粒度进行重传,从而可以降低重传数据量和传输时延。此外,在丢包的情况下,本技术实施例对pcm音频数据中的部分二进制位进行数据补偿,一方面可以避免重传带来的带宽占用,另一方面也有助于降低对pcm音频数据进行整体补偿对音质的损伤。
83.图6是本技术实施例提供的一种音频播放设备的结构示意图。该音频播放设备600可以为蓝牙耳机、蓝牙音响和汽车蓝牙播放设备等。参见图6,音频播放设备600可以包括上文提到的接收音频数据的装置500。
84.可选地,在一些实施例中,音频播放设备600还可以包括数模转换器620和播放器630。数模转换器620可用于对组合后的pcm音频数据进行数模转换,得到模拟音频信号。播放器630可用于播放模拟音频信号。
85.图7是本技术实施例提供的一种芯片的结构示意图。如图7所示,该芯片700包括处理器710,处理器710可以配置成以执行前文中描述的任一种接收音频数据的方法。例如,处理器710可以配置成:响应于确定接收到第一编码包且未接收到第二编码包,根据第一批多个二进制位的数据和第二批一个或多个二进制位的补偿数据,生成目标pcm音频数据。其中,第一编码包包括初始pcm音频数据的第一批多个二进制位,第二编码包包括初始pcm音频数据的第二批一个或多个二进制位。
86.本技术实施例还提供一种无线耳机,包括如前文描述的芯片700。
87.应理解,在本技术的各种实施例中,“第一”、“第二”等是用于区别不同的对象,而不是用于描述特定顺序,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
88.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的
划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
89.在本技术所提供的几个实施例中,应该理解到,当称某一部分与另一部分“连接”或“相连”时,其意味着该部分不仅可以“直接连接”,而且也可以“电连接”,同时另一个元件介入其中。另外,术语“连接”也意指该部分“物理地连接”以及“无线地连接”。另外,当称某一部分“包含”某一元件时,除非另行加以陈述,否则,其意味着该某一部分可以包括另一元件,而不是排除所述另一个元件。
90.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
91.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
92.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1