CN115910082A - 音频数据的编码方法、装置、设备及存储介质 - Google Patents
音频数据的编码方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115910082A CN115910082A CN202211440713.0A CN202211440713A CN115910082A CN 115910082 A CN115910082 A CN 115910082A CN 202211440713 A CN202211440713 A CN 202211440713A CN 115910082 A CN115910082 A CN 115910082A
- Authority
- CN
- China
- Prior art keywords
- audio
- bit rate
- encoding
- data
- source data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000005070 sampling Methods 0.000 claims description 59
- 238000007906 compression Methods 0.000 claims description 21
- 230000006835 compression Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012856 packing Methods 0.000 claims description 2
- 238000004806 packaging method and process Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 4
- 230000005540 biological transmission Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 241000282414 Homo sapiens Species 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请公开了一种音频数据的编码方法、装置、设备及存储介质,涉及蓝牙音频领域。该方法包括:基于音源数据的比特率,设置用于音频编码的编码参数,基于所述编码参数将所述音源数据编码为至少一个音频编码包,所述音频编码包的比特率与所述音源数据的比特率相同。由于音源数据的比特率较低的情况下,即便在蓝牙处理过程中升高比特率也无法实质上提升播放音质,因此本申请可以在保证音源数据的播放音质的情况下,降低蓝牙相关硬件的功耗。
Description
技术领域
本申请涉及蓝牙音频领域,特别涉及一种音频数据的编码方法、装置、设备及存储介质。
背景技术
随着真无线立体声(True Wireless Studio,TWS)蓝牙耳机的爆发式增长和普及,消费者在生活和工作中使用TWS蓝牙耳机已非常普及和常见。
以听音乐为例,移动终端内设置有蓝牙编码器和蓝牙发送器。移动终端将音源文件解码为PCM数据,由蓝牙编码器将PCM数据编码为多个音频编码包,由蓝牙发送器将多个音频编码包重新组包为多个蓝牙音频包发送给TWS耳机。
由于蓝牙编码器的性能越来越高,蓝牙编码器的功耗也越来越高。
发明内容
本申请实施例提供了一种音频数据的编码方法、装置、设备及存储介质,可以基于音源文件的比特率,自适应确定音频编码包的编码参数,从而在播放有损(Lossy)音频时,降低蓝牙相关硬件的功耗。所述技术方案如下:
根据本申请的一方面,提供了一种音频数据的编码方法,所述方法包括:
基于音源数据的比特率,设置用于音频编码的编码参数;
基于所述编码参数将所述音源数据编码为至少一个音频编码包,所述音频编码包的比特率与所述音源数据的比特率相同。
根据本申请的另一方面,提供了一种音频数据的编码装置,所述装置包括:
设置模块,用于基于音源数据的比特率,设置用于音频编码的编码参数;
编码模块,用于基于所述编码参数将所述音源数据编码为至少一个音频编码包,所述音频编码包的比特率与所述音源数据的比特率相同。
根据本申请的另一方面,提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,安装有所述芯片的电子设备运行时用于实现如上方面所述的音频数据的编码方法。
根据本申请的另一方面,提供了一种计算机设备,所述计算机设备包括:处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上方面所述的音频数据的编码方法。
根据本申请的另一方面,提供了一种电子设备,所述电子设备包括:蓝牙编码芯片和蓝牙发送芯片,所述蓝牙编码芯片和所述蓝牙发送芯片用于实现如上方面所述的音频数据的编码方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上方面所述的音频数据的编码方法。
根据本申请的另一方面,提供了一种计算机程序产品,所述计算机程序产品包括至少一段程序,所述至少一段程序存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述至少一段程序,所述处理器执行所述至少一段程序,使得所述电子设备执行如上方面所述的音频数据的编码方法。
根据本申请的另一方面,提供了一种计算机程序,所述计算机程序包括至少一段程序,所述至少一段程序存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述至少一段程序,所述处理器执行所述至少一段程序,使得所述电子设备执行如上方面所述的音频数据的编码方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
由于音源数据的比特率较低的情况下,即便在蓝牙发送过程中升高比特率也无法实质上提升播放音质,因此本申请通过自适应设置与音源数据具有相同比特率的编码参数,可以在保证音源数据的播放音质的情况下,降低蓝牙相关硬件的功耗。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的通信系统的示意图;
图2是本申请另一个示例性实施例提供的通信系统的示意图;
图3是本申请另一个示例性实施例提供的音频数据的编码方法的流程图;
图4是本申请另一个示例性实施例提供的音频数据的编码方法的原理示意图;
图5是本申请另一个示例性实施例提供的音频数据的编码方法的流程图;
图6是本申请另一个示例性实施例提供的音频编码包重组过程的示意图;
图7是本申请另一个示例性实施例提供的音频数据的编码方法的流程图;
图8是本申请另一个示例性实施例提供的音频数据的编码装置的框图;
图9是本申请另一个示例性实施例提供的电子设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请所涉及的名词进行说明。
采样率(Sampling rate):
采样率单位为Hz。例如44100Hz,指的就是每秒采样数为44100,也被简称为44.1KHz。采样率越高,所能描述的声波频率就越高,其对声波的还原度就更加真实和自然。如44.1KHz采样率,其表现的频率范围为0Hz-22050Hz,48KHz采样率的范围是0Hz-24000Hz,96KHz采样率的范围是0Hz-48000Hz。人耳能听到的平均频率范围,大概是20Hz-20000Hz,故此,录音师常用的选择是44.1KHz(现如今大多都是用48000Hz)。以下是一些常见的采样率:8KHz、16kHz、22.050KHz、32KHz、44.1KHz、48KHz、88.2kHz、96KHz、176.4kHz、192kHz、384kHz。
位深(Bit depth):
位深被称为采样精度,比如,所选择的采样率为44100,位深为16Bit,单轨道,时长为60S,则Bits的值为44100*16*1*60=42336000。
计算公式:Bits=采样率×位深×通道×时长(秒)
位深影响信号的信噪比和动态范围,也决定了文件的大小,理论上来说,位深越高,质量越好,同时其所生成的文件也越大。
比特率(Bit rate):
指每秒处理多少个Bit。比如一个单声道,用44.1KHz/16Bit的配置来说,它的比特率就为44100*16*1=705600。以下是一些常用的比特率:32kbit/s、96kbit/s、128kbit/s、160kbit/s、192kbit/s、256kbit/s、320kbit/s、768kbit/s、900kbit/s、990kbit/s。其中,kbit/s也可写为kbps。
声道数:
是指支持能不同发声的播放单元的个数。对于音箱设备来讲,播放单元是指音箱数量,比如5.1声道,7.1声道;对于蓝牙耳机来讲,播放单元是指单个耳机的个数,通常为两声道。
压缩率:
有损压缩是利用了人类对声波中的某些频率成分不敏感的特性,允许压缩过程中损失一定的信息;虽然不能完全恢复原始数据,但是所损失的部分对理解原始声波的影响缩小,却换来了大得多的压缩比。
音频编码格式:
是指对音频数据进行编码时所采用的数据格式。常见的音频编码格式包括但不限于:动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio LayerⅢ,MP3),视窗多媒体音频(Windows Media Audio,WMA),波形文件(WAV),AAC高级音频编码技术(Advanced Audio Coding,AAC)等等。
图1示出了本申请一个示例性实施例提供的蓝牙系统100的示意图。该蓝牙系统100包括:电子设备110和蓝牙播放设备120。
电子设备110可以是手机,平板,笔记本电脑,智能手表等。电子设备110是发送端设备或发端设备。
蓝牙播放设备120可以是蓝牙耳机,蓝牙音箱,车载蓝牙播放设备等。蓝牙播放设备120是接收端设备或收端设备。
示例性的,电子设备110基于蓝牙技术向蓝牙播放设备120传输音频数据。以电子设备110为手机和蓝牙播放设备120为蓝牙耳机为例,手机中包括第一解码芯片112和第一蓝牙芯片114。其中,第一解码芯片112中包含脉冲编码调制(Pulse Code Modulation,PCM)解码器和蓝牙编码器,第一蓝牙芯片114中包含蓝牙发送器;蓝牙耳机中包含第二蓝牙芯片122、第二解码芯片124和扬声器126。其中,第二蓝牙芯片122中包含蓝牙接收器,第二解码芯片124中包含PCM解码器、数字模拟转换器(Digital to Analog Converter,DAC)和功率放大器(Amplifier,AMP)芯片。手机选择一份音源文件向蓝牙耳机传输,该音源文件可以是无损音乐文件或有损音乐文件,例如,通过无损音频压缩编码器(Free Lossless AudioCodec,FLAC)的音乐,或者MP3文件。音源文件经过第一解码芯片112,在第一解码芯片112中经过PCM解码器解码获得PCM数据,PCM数据传输到蓝牙编码器后进行编码,获得至少两个蓝牙编码帧,将至少两个蓝牙编码帧发送到第一蓝牙芯片114,在第一蓝牙芯片114内经蓝牙发送器组包成一个或多个蓝牙音频包发送给蓝牙耳机端。蓝牙耳机端通过第二蓝牙芯片122接收来自手机端的蓝牙音频包,第二蓝牙芯片122将接收到的蓝牙音频包传输给第二解码芯片124,一个或多个蓝牙音频包在第二解码芯片124中经过PCM解码器解码成PCM数据,PCM数据传输到达DAC和AMP,将PCM数据转化成模拟数据,模拟数据通过蓝牙耳机内的扬声器126进行播放。
图2示出了本申请一个示例性实施例提供的蓝牙系统200的示意图。该蓝牙系统200包括:电子设备110和蓝牙播放设备120。
示例性的,电子设备110基于蓝牙技术向蓝牙播放设备120传输音频数据。以电子设备110为手机和蓝牙播放设备120为蓝牙耳机为例,手机中包括第三解码芯片116和第三蓝牙芯片118。其中,第三解码芯片116中包含PCM解码器,第三蓝牙芯片118中包含蓝牙编码器和蓝牙发送器;蓝牙耳机中包含第二蓝牙芯片122、第二解码芯片124和扬声器126,其中,第二蓝牙芯片122中包含蓝牙接收器,第二解码芯片124中包含PCM解码器和DAC+AMP芯片。手机选择一份音源文件向蓝牙耳机传输,该音源文件可以是无损音乐文件,例如,通过FLAC的音乐。音源文件经过第三解码芯片116,在第三解码芯片116中经过PCM解码器解码获得PCM数据,PCM数据传输到第三蓝牙芯片118,在第三蓝牙芯片118中经过蓝牙编码器对PCM数据进行编码获得至少两个蓝牙编码帧,至少两个蓝牙编码帧经蓝牙发送器组包成一个或多个蓝牙音频包发送给蓝牙耳机端。蓝牙耳机端通过第二蓝牙芯片122接收来自手机端的蓝牙音频包,第二蓝牙芯片122将接收到的一个或多个蓝牙音频包传输给第二解码芯片124,蓝牙音频包在第二解码芯片124中通过PCM解码器将蓝牙音频包解码成PCM数据,PCM数据传输到达DAC和AMP,将PCM数据转化成模拟数据,模拟数据通过蓝牙耳机内的扬声器126进行播放。
相关技术中,为了保证兼容大多数的音源数据,蓝牙编码器所设置的编码参数通常是基于性能上限的比特率来设置的。假设蓝牙编码器支持的最大比特率为192kbit/s,而音源数据的比特率为96kbit/s。那么整个音频传输及编解码过程依然会按照192kbit/s进行编解码处理及传输,造成资源浪费,导致占用的内存增加,增加了音频播放延迟,增加了设备功耗,还增加了传输所占用的带宽。但受限于音源数据本身是有损压缩,实际上并不能提升任何播放音质。
图3是本申请一个示例性实施例提供的音频数据的编码方法的流程图。该方法可以由电子设备执行,该方法包括:
步骤302:基于音源数据的比特率,设置用于音频编码的编码参数。
电子设备支持至少两种比特率的音源数据。至少两种比特率包括但不限于:32kbit/s、96kbit/s、128kbit/s、160kbit/s、192kbit/s、256kbit/s、320kbit/s、768kbit/s、900kbit/s、990kbit/s等。
该音源数据的来源是在线音源数据、本地音频文件、麦克风采集的音频数据等等。不同来源的音源数据的比特率可以不同,同一来源的不同音源数据的比特率可以不同。
在一些实施例中,音源数据按照单首歌曲、单首节目等颗粒度来区分;在一些实施例中,音乐数据按照一帧、若干帧、一秒、若干秒、时间窗等颗粒度来区分,本申请对此不加以限定。在一些实施例中,音源数据是双声道的音源数据。
电子设备在播放音源数据时,自适应设置蓝牙编码器的编码参数,使得设置后的编码参数所对应的比特率与音源数据的比特率相同。音源数据的比特率是电子设备支持的至少两种比特率中的一种。或者说,音源数据的比特率是蓝牙编码器支持的至少两种比特率中的一种。
步骤304:基于编码参数将音源数据编码为至少一个音频编码包,音频编码包的比特率与音源数据的比特率相同。
示例性的,编码参数包括参数中的至少之一:采样率、采样位宽、声道数、压缩率、以及音频编码格式。
综上所述,本实施例提供的方法,由于音源数据的比特率较低的情况下,即便升高比特率也无法实质上提升播放音质,因此本申请通过自适应发送与音源数据具有相同比特率的至少一个蓝牙音频包,可以在保证音源数据的播放音质的情况下,降低蓝牙相关硬件的功耗。
在蓝牙编码器编码得到多个音频编码包后,蓝牙发送器会将多个音频编码包重新组包为多个蓝牙音频包后发送,蓝牙发送器通常不会改变音频编码包的比特率。作为一种可能的取证方式,假设电子设备支持n种比特率的音源数据。在音源数据具有第i种比特率的情况下,采用上述编码方法的电子设备会自适应发送第i种比特率的至少一个蓝牙音频包,i为不大于n的正整数。
示例性的参考图4,电子设备在音源数据的比特率为32kbit/s的情况下,发送32kbit/s的至少一个蓝牙音频包;电子设备在音源数据的比特率为96kbit/s的情况下,发送96kbit/s的至少一个蓝牙音频包;电子设备在音源数据的比特率为192kbit/s的情况下,发送192kbit/s的至少一个蓝牙音频包;以此类推,电子设备在音源数据的比特率为320kbit/s的情况下,发送320kbit/s的至少一个蓝牙音频包。
图5示出了本申请一个示例性实施例提供的音频数据的编码方法的流程图。该方法可以由电子设备执行,该电子设备包括PCM解码器、蓝牙编码器和蓝牙发送器。该方法包括:
步骤502:将音源数据解码为PCM数据;
该音源数据的来源是在线音源数据、本地音频文件、麦克风采集的音频数据等等。不同来源的音源数据的比特率可以不同,同一来源的不同音源数据的比特率可以不同。
在一些实施例中,音源数据按照单首歌曲、单首节目等颗粒度来区分;在一些实施例中,音乐数据按照一帧、若干帧、一秒、若干秒、时间窗等颗粒度来区分,本申请对此不加以限定。在一些实施例中,音源数据是双声道的音源数据。
电子设备获取到音频数据后,通过PCM解码器将音频数据进行解码,得到PCM数据。
步骤504:基于音源数据的比特率,设置用于音频编码的编码参数,编码参数对应的比特率与音源数据的比特率相同;
电子设备支持至少两种比特率的音源数据。至少两种比特率包括但不限于:32kbit/s、96kbit/s、128kbit/s、160kbit/s、192kbit/s、256kbit/s、320kbit/s、768kbit/s、900kbit/s、990kbit/s等。
电子设备在播放音源数据时,自适应设置蓝牙编码器的编码参数,使得设置后的编码参数所对应的比特率与音源数据的比特率相同。音源数据的比特率是电子设备支持的至少两种比特率中的一种。或者说,音源数据的比特率是蓝牙编码器支持的至少两种比特率中的一种。
需要说明的是,步骤504可能在步骤502之前执行,也可能在步骤502之后执行,对此不加以限定。
步骤506:以编码参数对PCM数据进行音频编码,得到至少一个音频编码包;
在解码到PCM数据后,通过蓝牙编码器以设置后的第一编码参数对PCM数据进行音频编码,得到至少一个音频编码包。第一编码参数对应的比特率与音源数据的比特率相同,第一编码参数至少包括采样率和采样位宽。
编码参数是蓝牙编码器在进行编码时的工作参数。蓝牙编码器支持至少两组编码参数设置。第一编码参数是至少两组编码参数设置中的一种。每组编码参数包括如下参数中的至少之一:
·采样率;
·采样位宽;
·声道数;
·压缩率;
·比特率;
·音频编码格式。
示例性的,对于128kbit/s的MP3格式的音源数据,该音源数据的比特率为128kbit/s;对于从128kbit/s的MP3格式转换得到的WAV格式的音源数据,虽然WAV格式的PCM码流为48k*16bit*2=1536kbit/s,当该音源数据的比特码率仍认为是128kbit/s。
在一些实施例中,比特率=采样率*采样位宽*声道数*压缩率。蓝牙编码器可以设置采样率、采样位宽、声道数、压缩率中的至少一种,以设置第一编码参数对应的比特率与音源数据的比特率相同。
在一些实施例中,蓝牙编码器将采样率、采样位宽、声道数、压缩率中的至少一种,设置成与音源数据相同的参数值,以便编码得到与音源数据具有相同比特率的音频编码包。
在一些实施例中,蓝牙编码器将采样率和采样位宽设置为与音源数据相同的参数值。声道数设置为2,压缩率设置为50%,以便编码得到与音源数据具有相同比特率的音频编码包。
在一些实施例中,蓝牙编码器将采样率和采样位宽中的至少一个参数值设置为大于音源数据的参数值。声道数设置为2,压缩率设置为50%以下的值,以便编码得到与音源数据具有相同比特率的音频编码包。
可选地,为了保证音质不下降,蓝牙编码器设置的采样率不低于音源数据的采样率,蓝牙编码器设置的采样率不低于音源数据的采样位宽。
蓝牙编码器将编码得到的至少一个音频编码包传输给蓝牙发送器。
步骤508:将至少一个音频编码包组包为至少一个蓝牙音频包,以及发送至少一个蓝牙音频包。
蓝牙发送器将至少一个音频编码包重新组包为至少一个蓝牙音频包。由于每个音频编码包内的数据量可以各不相同,所以每个音频编码包的比特长度可能不同。蓝牙发送器会按照蓝牙协议,将至少一个音频编码包重新组包为至少一个蓝牙音频包。
在一些实施例中,至少一个蓝牙音频包中每个蓝牙音频包的比特长度相同或相近,至少一个蓝牙音频包的平均比特率与音源数据的比特率相同。示例性参考图6,蓝牙编码器基于第一编码参数对音频数据进行编码,得到不同大小的音频编码包。由蓝牙发送器按照蓝牙协议将至少一个音频编码包均匀地重新组包为至少一个蓝牙音频包。然后,蓝牙发送器通过蓝牙连接将蓝牙音频包发送给蓝牙播放设备。
该蓝牙连接可包括经典蓝牙连接、蓝牙低功耗(Bluetooth Low Energy,蓝BLE)连接等,其中,经典蓝牙连接为基于经典蓝牙协议建立的蓝牙通信连接,BLE连接为基于BLE协议建立的蓝牙通信连接,经典蓝牙协议通常泛指在蓝牙协议4.0版本以下的蓝牙协议,BLE协议通常泛指在蓝牙协议4.0版本以上的蓝牙协议。进一步地,该蓝牙连接可以是基于BLE连接建立的LE Audio蓝牙连接,能够支持音频数据的传输。
电子设备可通过蓝牙连接的音频业务传输信道,将目标音频数据包发送至蓝牙播放设备。若蓝牙连接为经典蓝牙连接,则音频业务传输信道可为基于蓝牙音频传输模型协定(Advanced Audio Distribution Profile,A2DP)协议或蓝牙免提规范(Hands-freeProfile,HFP)协议等建立的传输信道,若蓝牙连接为LE Audio蓝牙连接,则音频业务传输通道可为基于连接同步数据流(Connected Isochronous Streams,CIS)等传输信道,但不限于此。需要说明的是,本申请实施例对于电子设备与蓝牙播放设备之间的具体蓝牙连接方式及通信信道不作限定,可根据蓝牙标准协议的发展进行变化。
综上所述,本实施例提供的方法,由于音源数据的比特率较低的情况下,即便升高比特率也无法实质上提升播放音质,因此本申请通过自适应发送与音源数据具有相同比特率的至少一个蓝牙音频包,可以在保证音源数据的播放音质的情况下,降低蓝牙相关硬件的功耗。
作为一个效果对比,假设音源数据是采样率为48k、采样位宽为128kpbs的有损压缩音频(双声道),在未应用本申请的技术方案之前,对蓝牙的带宽要求为:
48l*16bit*2声道*50%压缩率=768kbps。
在应用本申请的技术方案之后,对蓝牙的带宽要求为:128kbps。
由于128/768=17%,因此能够减少83%的带宽要求。基于该带宽要求:
·电子设备侧的蓝牙编码器的功耗会降低。
·电子设备侧的蓝牙发送器所需要的缓存区减少,该缓存区是在重新组包时用于缓存待发送的音频编码包的缓存。
·电子设备侧的蓝牙发送器的射频发射功率会大大降低,蓝牙播放设备侧的射频接收功率也会大大降低,从而实现了更低功耗,有利于实现TWS耳机的更长续航。
·待发送的数据量下降,蓝牙传输的成功率得到提升,从而降低了重传率以实现更低延迟的蓝牙传输。
由于蓝牙编码器支持的最大比特率可能会小于音源数据的比特率,为此还提供有如下实施例。
图7是本申请一个示例性实施例提供的音频数据的编码方法的流程图。该方法可以由电子设备执行,该电子设备包括PCM解码器、蓝牙编码器和蓝牙发送器。该方法包括:
步骤702:获取音频数据;
电子设备获取音频数据。获取音频数据的方式包括如下至少之一:
·获取在线音频数据;
在一些实施例中,电子设备上安装有在线听歌程序、在线音频分享程序等。这些程序可以在线播放有关歌曲、有声小说、儿童故事、相声评书、京剧戏曲等类型的音频数据。本申请对音频数据的分类不加以限定。
由于网络质量存在抖动,音频数据的比特率可能随网络质量动态变化。在网络质量较好的情况下,音频数据的比特率较高;在网络质量较差的情况下,音频数据的比特率较低。
·获取本地音频数据;
在一些实施例中,电子设备内存储或下载有本地音频数据。本地音频数据在存储或下载后,无需联网即可播放。电子设备读取存储器中的本地音频数据进行播放。
·获取麦克风采集的音频数据。
在网络通话、移动通话、卫星通话等通话场景、录音场景、在线会议场景等诸多场景下,电子设备也可以获取麦克风采集的音频数据。
在获取到音频数据后,电子设备还获取音频数据的比特率。同一个音频数据的比特率通常是不变的,但在网络通话、在线会议等场景,音频数据的比特率可以是动态改变的。
步骤704:获取音频数据的比特率;
获取音频数据的比特率的方式,包括但不限于如下两种方式中的任意一种:
方式一:从音源数据的数据来源,获取音源数据的比特率;
该音源数据的数据来源包括音源采集设备、服务器、应用程序、操作系统中的至少一种。
在一些实施例中,音源数据的数据来源是音源采集设备或服务器,音源设备或服务器在采集音频数据记录有音频数据的比特率。电子设备与音源采集设备或服务器进行通信,在获取音源数据之前、获取音源数据的同时、获取音源数据之后,获取音源数据的比特率。
比如,音频供应商提供给下游企业(制造商或程序商)进行进一步处理(例如,本申请实施例所执行的处理)的音频数据,音频供应商可以对模拟音频信号进行初次采样获得第一数据信号,也可以对其获得的第二数据信号进行重采样而获得第三数据信号,这里的第一数据信号、第三数据信号都称之为“音频数据”。相应地,音频数据的比特率即表示供应商初次采样时的比特率、或进行重采样时的比特率。在一些实施例中,原始比特率信息可能存储在供应商提供给下游程序的音源数据中,因而,下游企业可从音源数据中提取出比特率。在另一些实施例中,供应商和下游企业可能就比特率进行提前商定,因而下游企业可直接获知供应商所采用的比特率。本申请中,不对比特率的来源进行限定。
方式二:对音频数据对应的PCM数据进行识别,得到音源数据的比特率。
电子设备对音频数据对应的PCM数据中的有效采样点进行识别,得到音频数据的比特率。
在一些实施例中,PCM解码器的解码参数对应的比特率与音频数据的比特率相同,PCM解码器的解码参数对应的比特率与音频数据的比特率相同。此时,PCM数据的比特率与音频数据的比特率相同。
在一些实施例中,PCM解码器的解码参数对应的比特率大于音频数据的比特率。比如在一些电子设备中,PCM解码器的解码参数默认为最大支持的采样率和采样位宽,或者,比较高的采样率和采样位宽,此时PCM解码器对音频数据进行解码后得到的PCM数据的比特率可能会大于音频数据的比特率。在PCM数据的比特率大于音频数据的比特率的情况下,PCM数据中的一部分采样点是有效采样点,一部分采样点是无效采样点。无效采样点的取值可以全部为预设值(比如零),或者,无效采样点的取值是基于相邻有效采样点的插值计算得到的。电子设备识别PCM数据中的有效采样点和无效采样点,基于单位时间内的有效采样点与单位时间的比值计算有效采样率。另外,针对有效采样点中的有效比特位数,计算有效采样位宽。基于有效采样率和有效采样位宽,计算得到音源数据的比特率。
步骤706:判断音源数据的比特率是否超过电子设备支持的最大比特率;
在获取到音源数据的比特率后,电子设备判断音源数据的比特率是否超过电子设备支持的最大比特率。
步骤708:在音源数据的比特率不超过电子设备支持的最大比特率的情况下,自适应发送与音源数据具有相同比特率的至少一个蓝牙音频包;
本步骤的实现方式,可以参考上述图5所示实施例的实现方式,不再赘述。
步骤710:在音源数据的比特率超过电子设备支持的最大比特率的情况下,发送具有最大比特率的至少一个蓝牙音频包。
在音源数据的比特率超过电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与最大比特率相同,以该编码参数对PCM数据进行音频编码,得到至少一个音频编码包以及发送具有最大比特率的至少一个蓝牙音频包。
示例性的,蓝牙编码器设置用于音频编码的第二编码参数对应的比特率与最大比特率相同;以第二编码参数对PCM数据进行音频编码,得到至少一个音频编码包。其中,第二编码参数至少包括采样率和采样位宽。
编码参数是蓝牙编码器在进行编码时的工作参数。蓝牙编码器支持至少两种编码参数。第二编码参数是至少两种编码参数中的一种。每种编码参数包括如下参数中的至少之一:
·采样率;
·采样位宽;
·声道数;
·压缩率;
·比特率;以及
·音频编码格式。
在一些实施例中,比特率=采样率*采样位宽*声道数*压缩率。蓝牙编码器可以设置采样率、采样位宽、声道数、压缩率中的至少一种,以设置第二编码参数对应的比特率为最大比特率。
在一些实施例中,蓝牙编码器将采样率、采样位宽、声道数、压缩率中的全部或部分,设置成自身支持的最大参数值,以便编码得到最大比特率的音频编码包。
蓝牙编码器将编码得到的至少一个音频编码包传输给蓝牙发送器。
蓝牙发送器将至少一个音频编码包重新组包为至少一个蓝牙音频包。由于每个音频编码包内的数据量可以各不相同,所以每个音频编码包的比特长度可能不同。蓝牙发送器会按照蓝牙协议,将至少一个音频编码包重新组包为至少一个蓝牙音频包。
在一些实施例中,至少一个蓝牙音频包中每个蓝牙音频包的比特长度相同或相近,至少一个蓝牙音频包的平均比特率与最大比特率相同。
综上所述,本实施例提供的方法,提供了两种获取音源数据的比特率的方法,第一种方法能够减少蓝牙设备的运算量,第二种方法适用于数据来源无法获取到比特率的情况,在针对各种可能来源的音频数据时均有较好的适应效果。
图8是本申请一个示例性实施例提供的音频数据的编码装置的流程图。该装置包括:
设置模块810,用于基于音源数据的比特率,设置用于音频编码的编码参数;
编码模块820,用于基于所述编码参数将所述音源数据编码为至少一个音频编码包,所述音频编码包的比特率与所述音源数据的比特率相同。
在一些实施例中,所述编码模块820包括:
PCM解码子模块822,用于将所述音源数据解码为PCM数据;
音频编码子模块824,用于以所述编码参数对所述PCM数据进行音频编码,得到所述至少一个音频编码包。
在一些实施例中,所述编码参数包括如下参数中的至少之一:
采样率;
采样位宽;
声道数;
压缩率;
比特率;以及
音频编码格式。
在一些实施例中,所述装置还包括:
发送模块830,用于将所述至少一个音频编码包组包为所述至少一个蓝牙音频包,以及发送所述至少一个蓝牙音频包。
在一些实施例中,所述音源数据的比特率是所述电子设备支持的至少两种比特率中的一种。
在一些实施例中,所述设置模块810,用于在所述音源数据的比特率不超过所述电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与所述音频编码的比特率相同。
在一些实施例中,所述设置模块810,用于在所述音源数据的比特率超过所述电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与所述最大比特率相同。
在一些实施例中,所述装置还包括:获取模块840,用于获取所述音源数据的比特率。
在一些实施例中,所述获取模块840,用于从所述音源数据的数据来源,获取所述音源数据的比特率;或,对所述音频数据对应的PCM数据进行识别,得到所述音源数据的比特率。
图9示出了本申请一个示例性实施例提供的电子设备900的框图。该电子设备900包括:蓝牙编码芯片910和蓝牙发送芯片920。
该电子设备900用于执行上述各方法实施例提供的音频数据的编码方法。蓝牙编码芯片910和蓝牙发送芯片920用于执行上述各方法实施例提供的音频数据的编码方法。其中,蓝牙编码芯片910用于执行上述由蓝牙编码器执行的步骤。蓝牙发送芯片920用于执行上述由蓝牙发送器执行的步骤。
本申请还提供一种芯片,该芯片包括可编程逻辑电路和/或程序指令,安装有所述芯片的电子设备运行时用于实现上述各方法实施例提供的音频数据的编码方法。该芯片可以是蓝牙编码芯片910和蓝牙发送芯片920中的至少一种。
本申请还提供一种计算机设备,该计算机设备包括:处理器和存储器,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的音频数据的编码方法。
本申请还提供一种计算机可读存储介质,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的音频数据的编码方法。
本申请还提供一种计算机程序产品,该计算机程序产品包括至少一段程序,所述至少一段程序存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述至少一段程序,所述处理器执行所述至少一段程序,使得所述电子设备执行上述各方法实施例提供的音频数据的编码方法。
本申请还提供一种计算机程序,该计算机程序包括至少一段程序,所述至少一段程序存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述至少一段程序,所述处理器执行所述至少一段程序,使得所述电子设备执行上述各方法实施例提供的音频数据的编码方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (23)
1.一种音频数据的编码方法,其特征在于,所述方法由电子设备执行,所述方法包括:
基于音源数据的比特率,设置用于音频编码的编码参数;
基于所述编码参数将所述音源数据编码为至少一个音频编码包,所述音频编码包的比特率与所述音源数据的比特率相同。
2.根据权利要求1所述的方法,其特征在于,所述基于所述编码参数将所述音源数据编码为至少一个音频编码包,包括:
将所述音源数据解码为脉冲编码调制PCM数据;
以所述编码参数对所述PCM数据进行音频编码,得到所述至少一个音频编码包。
3.根据权利要求2所述的方法,其特征在于,所述编码参数包括参数中的至少之一:
采样率;
采样位宽;
声道数;
压缩率;
比特率;以及
音频编码格式。
4.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
将所述至少一个音频编码包组包为所述至少一个蓝牙音频包,以及发送所述至少一个蓝牙音频包。
5.根据权利要求1至3任一所述的方法,其特征在于,所述音源数据的比特率是所述电子设备支持的至少两种比特率中的一种。
6.根据权利要求1至3任一所述的方法,其特征在于,所述基于音源数据的比特率,设置用于音频编码的编码参数,包括:
在所述音源数据的比特率不超过所述电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与所述音频编码的比特率相同。
7.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
在所述音源数据的比特率超过所述电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与所述最大比特率相同。
8.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
获取所述音源数据的比特率。
9.根据权利要求8所述的方法,其特征在于,所述获取所述音源数据的比特率,包括:
从所述音源数据的数据来源,获取所述音源数据的比特率;
或,
对所述音频数据对应的PCM数据进行识别,得到所述音源数据的比特率。
10.一种音频数据的编码装置,其特征在于,所述装置包括:
设置模块,用于基于音源数据的比特率,设置用于音频编码的编码参数;
编码模块,用于基于所述编码参数将所述音源数据编码为至少一个音频编码包,所述音频编码包的比特率与所述音源数据的比特率相同。
11.根据权利要求10所述的装置,其特征在于,所述编码模块包括:
PCM解码子模块,用于将所述音源数据解码为PCM数据;
音频编码子模块,用于以所述编码参数对所述PCM数据进行音频编码,得到所述至少一个音频编码包。
12.根据权利要求11所述的装置,其特征在于,所述编码参数包括如下参数中的至少之一:
采样率;
采样位宽;
声道数;
压缩率;
比特率;以及
音频编码格式。
13.根据权利要求10至12任一所述的装置,其特征在于,所述装置还包括:
发送模块,用于将所述至少一个音频编码包组包为所述至少一个蓝牙音频包,以及发送所述至少一个蓝牙音频包。
14.根据权利要求10至12任一所述的装置,其特征在于,所述音源数据的比特率是所述电子设备支持的至少两种比特率中的一种。
15.根据权利要求10至12任一所述的装置,其特征在于,
所述设置模块,用于在所述音源数据的比特率不超过所述电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与所述音频编码的比特率相同。
16.根据权利要求10至12任一所述的装置,其特征在于,
所述设置模块,用于在所述音源数据的比特率超过所述电子设备支持的最大比特率的情况下,设置用于音频编码的编码参数对应的比特率与所述最大比特率相同。
17.根据权利要求10至12任一所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取所述音源数据的比特率。
18.根据权利要求17所述的装置,其特征在于,
所述获取模块,用于从所述音源数据的数据来源,获取所述音源数据的比特率;
或,
所述获取模块,用于对所述音频数据对应的PCM数据进行识别,得到所述音源数据的比特率。
19.一种芯片,其特征在于,所述芯片包括可编程逻辑电路和/或程序指令,安装有所述芯片的电子设备运行时用于实现如权利要求1至9任一项所述的音频数据的编码方法。
20.一种电子设备,其特征在于,所述电子设备包括:蓝牙编码芯片和蓝牙发送芯片,所述蓝牙编码芯片和所述蓝牙发送芯片用于实现如权利要求1至9任一项所述的音频数据的编码方法。
21.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行,以实现如权利要求1至9任一项所述的音频数据的编码方法。
22.一种计算机程序产品,其特征在于,所述计算机程序产品包括至少一段程序,所述至少一段程序存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述至少一段程序,所述处理器执行所述至少一段程序,使得所述电子设备执行如权利要求1至9任一项所述的音频数据的编码方法。
23.一种计算机程序,其特征在于,所述计算机程序包括至少一段程序,所述至少一段程序存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述至少一段程序,所述处理器执行所述至少一段程序,使得所述电子设备执行如权利要求1至9任一项所述的音频数据的编码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211440713.0A CN115910082A (zh) | 2022-11-17 | 2022-11-17 | 音频数据的编码方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211440713.0A CN115910082A (zh) | 2022-11-17 | 2022-11-17 | 音频数据的编码方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115910082A true CN115910082A (zh) | 2023-04-04 |
Family
ID=86478973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211440713.0A Pending CN115910082A (zh) | 2022-11-17 | 2022-11-17 | 音频数据的编码方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115910082A (zh) |
-
2022
- 2022-11-17 CN CN202211440713.0A patent/CN115910082A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10885921B2 (en) | Multi-stream audio coding | |
JP5268952B2 (ja) | データパケットのシーケンスを伝送するための装置および方法ならびにデータパケットのシーケンスをデコードするためのデコーダおよび装置 | |
US8340959B2 (en) | Method and apparatus for transmitting wideband speech signals | |
MXPA04007668A (es) | Comunicacion de voz de inter-sistemas de tandem libre. | |
EP3513406B1 (en) | Audio signal processing | |
US20090099851A1 (en) | Adaptive bit pool allocation in sub-band coding | |
WO2021160040A1 (zh) | 音频传输方法及电子设备 | |
JP5713296B2 (ja) | 信号ソースに関連付けられた少なくとも1つのパラメータを符号化するための装置および方法 | |
CN113365129B (zh) | 蓝牙音频数据处理方法、发射器、接收器及收发设备 | |
TW200917764A (en) | System and method for providing AMR-WB DTX synchronization | |
JP2001186221A (ja) | ディジタル通信装置または関連装置の改良 | |
JP2005253051A (ja) | 通信端末機における3次元ステレオサウンドを再生すると共に貯蔵する装置及び方法 | |
TW201220811A (en) | Method and apparatus for performing high-quality speech communication across Voice over Internet Protocol (VoIP) communications networks | |
CN111385780A (zh) | 一种蓝牙音频信号传输方法和装置 | |
CN111225102A (zh) | 一种蓝牙音频信号传输方法和装置 | |
CN115910082A (zh) | 音频数据的编码方法、装置、设备及存储介质 | |
US12010496B2 (en) | Method and system for performing audio ducking for headsets | |
JP2002314676A (ja) | 録音再生装置 | |
EP1295444B1 (en) | Method to reduce the distortion in a voice transmission over data networks | |
US20140257800A1 (en) | Error concealment for speech decoder | |
US20240029755A1 (en) | Intelligent speech or dialogue enhancement | |
CN116092506A (zh) | 通信方法和系统、音频设备及芯片 | |
CN118351861A (zh) | 通信方法和系统、音频设备及芯片 | |
CN118351860A (zh) | 通信方法和系统、音频设备及芯片 | |
CN115700881A (zh) | 会议终端及声音水印的嵌入方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |