蓝牙提示音处理方法、系统、可读存储介质和蓝牙设备与流程

文档序号:16755230发布日期:2019-01-29 17:17阅读:590来源:国知局
蓝牙提示音处理方法、系统、可读存储介质和蓝牙设备与流程

本发明涉及音频处理技术领域,特别是涉及一种蓝牙提示音处理方法、系统、可读存储介质和蓝牙设备。



背景技术:

蓝牙是一种无线技术标准,可实现固定设备、移动设备和个人域网之间的大容量的短距离数据交换,同时蓝牙也具有低成本、低功耗的特点。因此蓝牙广泛用于各种电子消费产品,比如蓝牙技术用于手机、相机、摄像机、pc及电视等,形成视讯、音乐及图片传输的蓝牙高速技术;以及用于医疗保健、个人设备、汽车及自动化行业的低功率传感设备和新的网络服务的蓝牙低耗能技术。而以蓝牙协议为通讯基础的各种智能穿戴、智能家居设备正快速地进入人们的生活,比如蓝牙手环,蓝牙耳机,蓝牙音箱、蓝牙车载、蓝牙灯、蓝牙控制等蓝牙设备、蓝牙控制系统。

而为了便于使用者使用蓝牙设备,蓝牙设备一般具有提示音的功能。比如蓝牙连接过程中的提示音:蓝牙已经准备好、蓝牙已经连接、蓝牙已经断开等;蓝牙设备使用过程中的提示音:请你准备好、开始、结束、你的心率是多少、你的血压是多少等等之类的蓝牙设备提示音。提示音越丰富,越方便使用者使用,而大量的提示音必定增加数据的存储,为了减少存储成本就需要对数据进行压缩,而压缩后的数据在使用的时候又需要相应的解码器,在蓝牙设备中完全开发一套解码器及播放系统将会增加工作量及增加蓝牙设备的成本。



技术实现要素:

基于此,有必要针对蓝牙设备的提示音数据量大,对其进行压缩解码播放的过程会增加蓝牙设备的成本的问题,提供一种蓝牙提示音处理方法、系统、可读存储介质和蓝牙设备。

一种蓝牙提示音处理方法,包括以下步骤:

获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,其中,预处理包括静音切割、能量及频率均衡和响度优化;

对预处理后的数据进行子带分解及量化处理,并对量化后的数据构建哈夫曼表,根据哈夫曼表对量化后的数据进行哈夫曼编码和位流处理,得到提示音的编码数据;

从提示音的编码数据中获取目标编码数据,根据目标编码数据获取解码数据;

对解码数据反量化处理,将反量化后的数据传输至蓝牙sbc解码模块的子带合成部分,获取提示音数据。

根据上述蓝牙提示音处理方法,其是获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,再进行子带分解、量化处理和哈夫曼编码,得到提示音的编码数据,从中获取目标编码数据,进而得到解码数据,对解码数据进行音频解码,获得提示音数据。上述方法中,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

在其中一个实施例中,从提示音的编码数据中获取目标编码数据的步骤包括以下步骤:

获取待播放的提示音索引,根据提示音索引从提示音的编码数据中获取目标编码数据。

在其中一个实施例中,根据目标编码数据获取解码数据的步骤包括以下步骤:

对目标编码数据进行位流解析和哈夫曼解码,获得解码数据。

在其中一个实施例中,获取提示音数据的步骤包括以下步骤:

对反量化后的数据进行sbc子带合成,获得提示音数据,对提示音数据进行播放。

在其中一个实施例中,在获取目标编码数据的步骤之前还包括以下步骤:

将提示音的编码数据保存在存储器中,并根据提示音的编码数据建立提示音的索引表。

在其中一个实施例中,哈夫曼表对量化后的数据进行哈夫曼编码的步骤包括以下步骤:

获取哈夫曼索引表,根据哈夫曼索引表对哈夫曼表中的量化后的数据进行哈夫曼编码。

一种蓝牙提示音处理系统,包括:

数据预处理单元,用于获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,其中,预处理包括静音切割、能量及频率均衡和响度优化;

编码处理单元,用于对预处理后的数据进行子带分解及量化处理,并对量化后的数据构建哈夫曼表,根据哈夫曼表对量化后的数据进行哈夫曼编码和位流处理,得到提示音的编码数据;

数据解码单元,用于从提示音的编码数据中获取目标编码数据,根据目标编码数据获取解码数据;

音频处理单元,用于对解码数据反量化处理,将反量化后的数据传输至蓝牙sbc解码模块的子带合成部分,获取提示音数据。

根据上述蓝牙提示音处理系统,数据预处理单元获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,编码处理单元进行子带分解、量化处理和哈夫曼编码,得到提示音的编码数据,数据解码单元从中获取目标编码数据,进而得到解码数据,音频处理单元对解码数据进行音频解码,获得提示音数据。上述系统中,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

在其中一个实施例中,数据解码单元获取待播放的提示音索引,根据提示音索引从提示音的编码数据中获取目标编码数据。

在其中一个实施例中,数据解码单元对目标编码数据进行位流解析和哈夫曼解码,获得解码数据。

在其中一个实施例中,音频处理单元对反量化后的数据进行sbc子带合成,获得提示音数据,对提示音数据进行播放。

在其中一个实施例中,编码处理单元将提示音的编码数据保存在存储器中,并根据提示音的编码数据建立提示音的索引表。

在其中一个实施例中,编码处理单元获取哈夫曼索引表,根据哈夫曼索引表对哈夫曼表中的量化后的数据进行哈夫曼编码。

一种可读存储介质,其上存储有可执行程序,可执行程序被处理器执行时实现上述的蓝牙提示音处理方法的步骤。

上述可读存储介质,通过其存储的可执行程序,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

一种蓝牙设备,包括存储器和处理器,存储器存储有可执行程序,处理器执行可执行程序时实现上述的蓝牙提示音处理方法的步骤。

上述蓝牙设备,通过在处理器上运行可执行程序,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

附图说明

图1是一个实施例中蓝牙提示音处理方法的应用场景图;

图2是一个实施例中蓝牙提示音处理方法的流程示意图;

图3是一个实施例中蓝牙提示音处理系统的结构示意图;

图4是一个实施例中蓝牙设备提示音原始数据的处理流程图;

图5是一个实施例中蓝牙设备sbc解码的流程示意图;

图6是一个实施例中蓝牙设备提示音的控制处理流程示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。

本申请提供的蓝牙提示音处理方法,可以应用于如图1所示的应用环境中。其中,蓝牙设备与其他通信设备进行通信,在进行通信的过程中,蓝牙设备会发出各种提示音,在发出提示音之前,可以获取蓝牙设备的提示音的可变字长编码数据,根据可变字长编码数据获取解码数据,对解码数据进行音频解码,获得提示音数据,可以对其进行处理和播放。其中,蓝牙设备可以是各种具备蓝牙通信和音频播放功能的设备,如个人计算机、笔记本电脑、掌上电脑、智能手机、平板电脑、便携式可穿戴设备、蓝牙音箱等。

参见图2所示,为本发明一个实施例的蓝牙提示音处理方法的流程示意图。该实施例中的蓝牙提示音处理方法包括以下步骤:

步骤s110:获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,其中,预处理包括静音切割、能量及频率均衡和响度优化;

在本步骤中,对原始数据进行预处理,优化原始数据,便于后续处理;

进一步的,预处理还可以包括提示音的前期准备、提示音裁剪、降噪、频响控制、分帧等处理,通过预处理可以优化提示音的数据,并且做好编码的准备;

步骤s120:对预处理后的数据进行子带分解及量化处理,并对量化后的数据构建哈夫曼表,根据哈夫曼表对量化后的数据进行哈夫曼编码和位流处理,得到提示音的编码数据;

在本步骤中,哈夫曼编码可以实现对原始数据的压缩,可以具备较高的压缩率,得到空间占用小的编码数据,节省存储空间;子带分解与蓝牙sbc编码的子带分解一致,为蓝牙sbc编码标准制定,量化过程可以是线性量化、非线性量化等,sbc子带分解和量化可便于在后续提示音音频解码时利用蓝牙设备所具备的sbc解码模块进行解码,合理利用蓝牙设备资源,降低硬件成本。

步骤s130:从提示音的编码数据中获取目标编码数据,根据目标编码数据获取解码数据;

在本步骤中,编码数据包括所有提示音的数据,可以从中选取目标编码数据,目标编码数据对应所需的提示音;

步骤s140:对解码数据反量化处理,将反量化后的数据传输至蓝牙sbc解码模块的子带合成部分,获取提示音数据;

在本步骤中,解码数据并非标准的音频数据,需要进行反量化和子带合成,得到提示音数据。

在本实施例中,获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,再进行子带分解、量化处理和哈夫曼编码,得到提示音的编码数据,从中获取目标编码数据,进而得到解码数据,对解码数据进行音频解码,获得提示音数据。上述方法中,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

需要说明的是,获得提示音数据后,可以对其进行播放准备处理,通过蓝牙设备的播放装置进行播放。

在一个实施例中,从提示音的编码数据中获取目标编码数据的步骤包括以下步骤:

获取待播放的提示音索引,根据提示音索引从提示音的编码数据中获取目标编码数据。

在本实施例中,在确定需要播放某种提示音时,获取待播放的提示音索引,利用提示音索引可以从提示音的编码数据中快速获取目标编码数据,即对应所需提示音的编码数据,加快提示音的处理过程。

进一步的,蓝牙设备在实际应用中涉及多种不同的提示音,多种不同的提示音对应多种不同的编码数据,当提示音数量较多时,利用索引可以简单便捷地得到需要播放的提示音对应的编码数据,无需加载所有的编码数据再进行选取,加快获取提示音的编码数据的进程,可减小对应的缓存空间,从而提升蓝牙设备的性能。

在一个实施例中,根据目标编码数据获取解码数据的步骤包括以下步骤:

对目标编码数据进行位流解析和哈夫曼解码,获得解码数据。

在本实施例中,哈夫曼编码依据字符出现概率来构造异字头的平均长度最短的码字,保证按字符出现概率分配码长,可使平均码长最短,由此可以提高提示音数据的压缩率;在获得哈夫曼编码数据后,可以对其进行位流解析和哈夫曼解码,该过程主要是对哈夫曼编码进行解析,从而得到解码数据,由于蓝牙设备中对音频的处理也涉及位流解析等,哈夫曼编码的解码过程无需专用的解码器,在蓝牙设备中容易实现。

进一步的,哈夫曼编码数据中还可以包括帧同步标志或crc校验码,帧同步标志可以在提示音频处理时用于帧同步,crc校验码可以对提示音数据的正确性和完整性进行校验。

在一个实施例中,获取提示音数据的步骤包括以下步骤:

对反量化后的数据进行sbc子带合成,获得提示音数据,对提示音数据进行播放。

在本实施例中,对反量化后的数据进行sbc子带合成,从而得到提示音数据,该提示音可以用于播放;蓝牙设备本身一般可以实现sbc解码流程,sbc子带合成可以在蓝牙设备的sbc解码流程中进行,合理利用蓝牙设备自身原有的功能,降低蓝牙设备的成本。

进一步的,对提示音数据进行播放的具体过程可以是:将提示音数据转换成时域pcm(pulsecodemodulation,脉冲调制编码)数据,将时域pcm数据发送至蓝牙设备的dac(digitaltoanalogconverter,数字模拟转换器)装置,dac装置可以直接播放已经解码的时域pcm数据。

在一个实施例中,在获取目标编码数据的步骤之前还包括以下步骤:

将提示音的编码数据保存在存储器中,并根据提示音的编码数据建立提示音的索引表。

在本实施例中,在使用提示音之前,可以将提示音的编码数据保存在存储器中,在实际应用中可以直接从存储器中获取编码数据,避免每次对提示音进行编码处理,另外,根据编码数据建立提示音的索引表,利用索引表可以将编码数据与提示音相关联,在确定需要某种提示音时可以快速得到对应的编码数据;还有,在需要添加新的提示音数据时,可以通过上述方式得到新的编码数据,并在索引表中添加对应的事项,便于提示音的调整和增减。

在一个实施例中,哈夫曼表对量化后的数据进行哈夫曼编码的步骤包括以下步骤:

获取哈夫曼索引表,根据哈夫曼索引表对哈夫曼表中的量化后的数据进行哈夫曼编码。

在本实施例中,哈夫曼编码的具体处理办法为:将所有使用到的提示音量化后的数据一起构建哈夫曼表,获取哈夫曼索引表,有了哈夫曼索引表就可以对量化后的对应数据进行哈夫曼编码,完成对提示音数据的压缩。

进一步的,可以根据哈夫曼编码标准建立对应的哈夫曼索引表;得到哈夫曼编码数据后进行位流封装,以及加入帧同步标志及根据需要加入crc校验码,最后得到编码数据,再将不同提示音数据构建好提示音索引信息(可以是索引表),便于根据需要提取相应的提示音编码数据。

根据上述蓝牙提示音处理方法,本发明实施例还提供一种蓝牙提示音处理系统,以下就本发明的蓝牙提示音处理系统的实施例进行详细说明。

参见图3所示,为本发明一个实施例的蓝牙提示音处理系统的结构示意图。该实施例中的蓝牙提示音处理系统包括:

数据预处理单元210,用于获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,其中,预处理包括静音切割、能量及频率均衡和响度优化;

编码处理单元220,用于对预处理后的数据进行子带分解及量化处理,并对量化后的数据构建哈夫曼表,根据哈夫曼表对量化后的数据进行哈夫曼编码和位流处理,得到提示音的编码数据;

数据解码单元230,用于从提示音的编码数据中获取目标编码数据,根据目标编码数据获取解码数据;

音频处理单元240,用于对解码数据反量化处理,将反量化后的数据传输至蓝牙sbc解码模块的子带合成部分,获取提示音数据。

在本实施例中,数据预处理单元210获取蓝牙设备的所有提示音的原始数据,对原始数据进行预处理,编码处理单元220进行子带分解、量化处理和哈夫曼编码,得到提示音的编码数据,数据解码单元230从中获取目标编码数据,进而得到解码数据,音频处理单元240对解码数据进行音频解码,获得提示音数据。上述系统中,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

在一个实施例中,数据解码单元230获取待播放的提示音索引,根据提示音索引从提示音的编码数据中获取目标编码数据。

在一个实施例中,数据解码单元230对目标编码数据进行位流解析和哈夫曼解码,获得解码数据。

在一个实施例中,音频处理单元240对反量化后的数据进行sbc子带合成,获得提示音数据,对提示音数据进行播放。

在一个实施例中,编码处理单元220将提示音的编码数据保存在存储器中,并根据提示音的编码数据建立提示音的索引表。

在一个实施例中,编码处理单元220获取哈夫曼索引表,根据哈夫曼索引表对哈夫曼表中的量化后的数据进行哈夫曼编码。

本发明的蓝牙提示音处理系统与本发明的蓝牙提示音处理方法相对应,在上述蓝牙提示音处理方法的实施例中阐述的技术特征及其有益效果均适用于蓝牙提示音处理系统的实施例中。

根据上述蓝牙提示音处理方法,本发明实施例还提供一种可读存储介质和一种蓝牙设备。

一种可读存储介质,其上存储有可执行程序,该可执行程序被处理器执行时实现上述蓝牙提示音处理方法的步骤。

上述可读存储介质,通过其存储的可执行程序,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

一种蓝牙设备,包括存储器和处理器,存储器存储有可执行程序,处理器执行可执行程序时实现上述蓝牙提示音处理方法的步骤。

上述蓝牙设备,通过在处理器上运行可执行程序,哈夫曼编码数据可以是高压缩率的编码数据,以减小存储成本,并且可以通过标准的编码规则对哈夫曼编码进行解码,无需设置专用的解码器,得到的解码数据并不能直接进行播放,还要进一步进行音频解码,得到提示音数据,以便后续播放,由于可以播放提示音的蓝牙设备一般都配备有自用的音频编解码模块,因此,在本方案中采用蓝牙设备已有的模块配合上述流程就可以得到提示音数据,无需专门开发解码器,大大降低了提示音处理的开发设计工作量以及蓝牙设备的成本。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,程序可存储于一非易失性的计算机可读取存储介质中,如实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述蓝牙提示音处理方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

在一个实施例中,蓝牙提示音处理方法可以应用在蓝牙设备中,蓝牙设备可以是个人计算机、笔记本电脑、掌上电脑、智能手机、平板电脑、便携式可穿戴设备、蓝牙音箱等。

如图4所示,将所需要的所有提示音原始数据依次通过预处理、sbc子带分解、量化、哈夫曼编码、位流处理得到压缩后的编码数据;

具体地,预处理过程包括静音切割、能量及频率均衡、响度优化、提示音前期准备、提示音裁剪、降噪、频响控制、分帧等处理流程,此处的sbc子带分解与蓝牙sbc编码的子带分解一致,为蓝牙sbc编码标准制定,量化过程可以是线性量化、非线性量化等,哈夫曼编码的具体处理办法为,将所有使用到的提示音量化后的数据一起构建哈夫曼表,根据哈夫曼编码标准建立对应的哈夫曼索引表,有了哈夫曼索引表就可以将量化后的对应数据进行哈夫曼编码,最后将哈夫曼编码数据进行位流封装、以及加入帧同步标志及根据需要加入crc校验码,最后得到编码数据,再将不同提示音数据构建好提示音索引信息,便于根据需要提取相应的提示音编码数据。

蓝牙设备的sbc解码过程如图5所示,通过蓝牙数据接收器获取蓝牙sbc编码数据,sbc解码器依次解码sbc数据头信息、位流信息,然后反量化、立体声处理,最后sbc子带合成运算得到解码后的sbc数据,再将解码后的sbc数据提供给播放控制模块,最后通过dac模块播放蓝牙sbc数据。

蓝牙设备中的提示音控制处理流程如图6所示,根据需要播放的提示音索引,从存储的提示音数据中获取对应提示音的压缩数据,然后进行位流解析、哈夫曼解码、反量化得到反量化后的提示音数据,再将反量化后的提示音数据转移到蓝牙设备中本来的sbc解码流程中,继续进行sbc子带合成运算,以及后续的播放控制及dac输出。

本发明实施例不仅充分利用了提示音数据样本有限可控的特点,运用相对已知数据构建哈夫曼表来达到高压缩数据的目的,还充分利用了蓝牙设备所拥有的sbc解码模块、播放控制模块以及dac模块来实现提示音数据的解码过程,大大降低了开发设计工作量以及带提示音蓝牙设备的成本。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成。所述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,包括上述方法所述的步骤。所述的存储介质,包括:rom/ram、磁碟、光盘等。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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