基于WT2605C-32N音频蓝牙语音芯片的实时录音上传技术方案介绍

现代社会,信息技术的发展尤其迅速,信息和数据的重要性和安全性日渐深刻,在某些特殊场合,因为工作上的需要,或者日常生活的需求,往往需要记录和保留一些重要的声音。在某些时刻,录音成为记录生活,保存证据的重要手段,可见,录音技术对于我们现代生活尤为重要。

而随着录音技术的发展,一种实时录音技术受到更多人的青睐,相比较于传统录音而言,实时录音技术突破了设备的限制,从单纯的录音设备扩展到我们的云端,随时随地即可分享,实现了我们录音数据的可交互性,在实际应用中给提升了我们产品的应用价值,给用户带来更完美的体验感受。

唯创知音一直致力于成为语音物联网界的领导者,自主研发了一种实时录音技术上传技术,在录音笔,录音耳机等录音设备上面应用广泛,这种实时录音技术,具有数据量小,失真率低,降噪效果明显等特点,通过外部蓝牙设备,即可实现云端存储,云端即时播放等功能。不仅如此,这种录音上传技术因为其通用性强,广泛应用于唯创知音自主研发的各类蓝牙芯片上,下面我们以其中一种方案作简单的介绍:

WT2605C-32N录音上传方案介绍

1. 方案概述

录音上传技术近些年在录音笔,录音耳机中应用广泛,实现了移动录音设备和云端的互联,即时播放,即时翻译,同声传译成为产品一大亮点,极大方便了我们的生活。而要保证这些功能的实现,就离不开高品质的录音效果,和高压缩的录音数据,本方案录音采用IMA-ADPCM压缩算法。IMA-ADPCM (ADPCM Adaptive Differential Pulse Code Modulation), 是一种针对 16bit声音波形数据的一种有损压缩算法, 它将声音流中每次采的16bit 数据以 4bit 存储, 所以压缩比为1:4。而压缩/解压缩算法非常的简单, 所以是一种低空间消耗,高质量声音获得的好途径。

2. 方案框图

本方案采用WT2605C-32N芯片,可外挂本地存储设备,通过串口与蓝牙透传芯片进行通信,将录音数据上发给云端设备。

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(1)

3. 方案原理图

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(2)

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(3)

4. 用户协议

4.1.协议命令格式

通讯数据格式是:起始位:1位;数据位:8位;奇偶位:无;停止位:1位。发送的指令都为十六进制的格式,默认波特率为115200,可进行修改,但不可小于115200波特率。使用电脑串口调试助手,需要正确设置串口的参数,设置如图:

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(4)

注意:“长度”是指长度 命令码 参数 校验和的长度,“累加和校验”是指长度 命令码 参数的累加和的第八位。

4.2.返回码格式

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(5)

参数:00 :表示执行成功, 开始录音

01 :表示执行错误

02 : 表示文件不存在

4.3.命令列表

4.3.1. 录音开始命令(D6)

APP发送此条指令,控制录音芯片开始录音,此时录音芯片会返回开始录音成功返回码,录音过程中发送此条命令返回错误;

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(6)

开始录音返回码:

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(7)

APP收到开始录音返回码,则开始准备处理接收到的录音数据,此时芯片进入录音状态,同时开始发送录音数据包。

首先录音芯片会发送一包60个字节的音频数据包,该包数据为IMA-ADPCM格式音频数据的音频头,前面包含“RIFF”标志和文件大小,注意此时ChunkSize 为0X00000034不包含当前音频数据包的长度,因此整个音频数据包的头长度为0X08 0X34,也就是60个字节的长度。客户需要录音结束并接收完整个数据包之后,重写这个位置。

例如,当前文件的音频头标识如下:

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(8)

接下来的音频头包含Format Chunk 块和Fact Chunk,客户不用关心实际数据情况。

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(9)

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(10)

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(11)

最后的音频数据头包含Data Chunk 客户需要录音结束并接收完整个数据包之后,重写DataChunkSize这个位置

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(12)

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(13)

音频数据头发送完毕后,紧接着会发送音频数据包,按照目前设置,每个数据包C长度为256个字节,受限于每个手机蓝牙MTU限制,每包数据量不能超过手机默认的MTU值,所以这里按照最小MTU值128字节进行配置,将数据包C分两包A B数据包发送,A和B每包数据量为128字节, 每包数据的间隔为10MS左右, 每个C包数据包间隔为60MS左右(根据录音码率决定,不可更改),即每一个C包数据包含整个nBlockAlign ,发送过程中即使某包数据丢失,也不会影响整个文件的播放。

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(14)

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(15)

当客户开始接收音频数据包的时候,客户APP需要记录录音结束前总的音频数据包的个数,比如APP在结束录音时候共接收到0X36包音频数据包,则总的音频数据的长度为 0X36 * 0X100 = 0X3600;

4.3.2. 录音结束命令(DA)

APP发送此条指令,录音芯片接收到录音结束命令,停止发送录音数据包,并结束当前录音,返回结束录音返回码;

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(16)

结束录音返回码:

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(17)

APP收到结束录音返回码,则保存当前录音文件,并将数据长度重写到文件相关位置,如图所示。至此,录音上传完成。

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(18)

5. 程序设计框图

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(19)

6. 应用实例

下面我们用唯创WT-RS2 APP软件进行实际测试录音上传功能,首先打开APP,选择MP3方案;

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(20)

连接蓝牙名称为VT-A782的蓝牙设备,连接成功后,APP界面默认会打印当前蓝牙设备的蓝牙MAC地址,唯创知音可以为每台蓝牙设备可以设置不同的的MAC地址,从而形成单独唯一的蓝牙名称,在某些应用场合,为每台产品形成唯一身份码。

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(21)

蓝牙键盘pcba主控芯片(音频蓝牙语音芯片)(22)

点击APP界面开始录音标志,此时APP按照时间创建录音文件,此时开始接收录音数据,每个A和B包数据间隔10MS,每个C包数据间隔60MS,直到点击APP结束录音按钮,此时APP显示录音结束。此时录音文件已经创建完毕,客户可通过APP界面将录音文件通过分享的方式发送到电脑或者其他播放器进行播放!

关于我们

唯创知音作为一家专注于语音技术研究的高新技术企业,始终坚持以“服务好工程师”为目标,以行业语音交互器件标准化为方向,致力于让复杂变简单,提供快捷的语音、智能物联网应用解决方案。

WT588F02B、WT2003H系列语音芯片应用设计方案,在智能闹钟、智能水杯、雾化器等消费电子行业领域内已有成熟的应用案例。消费类电子产品应用是公司重要的发展领域,未来,唯创知音将在更多行业推出标准化语音芯片,进一步提升工程师的设计体验,为消费类电子行业标准化赋能。

更多详情可搜索:深圳唯创知音电子有限公司,与在线客服沟通,我们会发送一份选型表给到大家,芯片 与 模块 还可以申请免费送样服务,期待您的光临。

,