百度DMA+小度App的蓝牙语音解决方案技术难点解析
前记
你平时在商场看到的语音助手,看起来非常的简单,其实,这个小小语音助手的背后,是一个非常的复杂的技术支撑。从前端到后端的技术依次是:前端语音降噪技术,高效的音频编解码技术,蓝牙双模技术,DMA协议移植技术。手机侧音频编解码技术,降噪技术,语音识别技术。丰富的娱乐和使用资源(地图,音乐,音频等)。整个流程下来,是一个复杂的工程。想把整个产业链玩起来,真不是一个公司能够玩起来的,需要的是产业上很多公司的共同努力。
终端设备的难点
- 前端降噪技术
前端降噪技术,这里面一般是软件算法实现的,一般包括,单麦克,双麦克,多麦克降噪算法,消回声算法,AGC算法等。这三个的使用是一个配合的过程。具体设置什么参数,怎么适配,这个跟产品的特性是强相关的。有这方面疑问的同学可以多多交流。
- 音频编码技术
由于蓝牙spp和ble的带宽都无法传输没有压缩的音频,还有就是无法对无线传输的质量做一个比较高的保证。因此,音频传输一定需要编解码的。在DMA长录音中,音频编解码常用的只有两种:SBC和OPOS。由于SBC是比较老的编解码算法,无论压缩比还是压缩质量,都无法和opus相比,所以,想要你的语音助手听的清楚,目前主流的都是opus编码。opus是一个开源的编解码技术,它无论是压缩比,抗抖动性能,还是音质的还原度,都是在目前的同类音频编解码中绝无仅有的。
opus唯一的不足之处就是消耗的MIPS比较高,假如你想把它移植到耳机或者类似耳机的小平台上,还是需要花费很多功夫的,很多芯片都是因为无法移植opus或者移植的opus无法优化,造成音频编解码效率特别低或者无法使用。这个当初我们也是摸索了好久,做了大量的算法优化才做的比较好的。
- 蓝牙双模支持
DMA语音这块,虽然是spp和ble都可以使用。假如你想在苹果上使用,只能使用ble,因为apple是不给第三方公司开发spp接口的。但是,假如你想在android上使用ble的话,由于android厂商太分散,每家做的ble都差距很大,会造成很多兼容性问题。这个也就是为什么目前主流的方案都是 android + spp apple +ble的模式,这个就要求你的芯片支持蓝牙和ble双模了。目前的绝大多数耳机芯片,双模支持的比较好的的确很少。这点我们也走了不少弯路,才后面找到了一个合适的芯片来做个这个东西。 - 低成本的技术
做产品呢,都是为了赚钱。所以,成本是广大设备商首先考虑的重点。为了能够做DMA+小度的方案,很多公司使用了两颗以上的主芯片。成本就需要5美金以上,这个价格就决定了产品无法大范围的商用。基于此,我们把所有的东西都放到了一个芯片中,一个产品一个芯片搞定,这个极大的降低了成本。不过,也是花费了很多精力的。毕竟,把所有的东西放到一个芯片中,这个对软件工程师的水平是一个极大的考验。
后台app的技术难点
高效的语音识别技术
前面的所有一切的努力,最后都是为了进行语音识别。国内做语音识别的厂家很多,为什么我们选择百度呢?主要有几个原因,百度是ai这块国内投入最大,投入最早,商用范围最广的互联网公司。他们的语音识别技术做的特别好,并且还广泛开发给第三方厂家。所以说,选择百度。也是我们经过很多实际考察做出的选择。后来等产品做出来了,也证明了我们的选择当初是对的。广泛的消费内容
语音识别技术,假如没有后面的内容作支撑,只是客户问几个小问题的话,估计没啥吸引力了。所以,app的内容多少是该产品成败的关键。百度在这块可以说是下了血本的。地图,音乐,有声读物,基本上把主流的厂商都签了合同的。可以调用QQ音乐,可以调用喜马拉雅等。这些资源,真不是一般厂商能够调动的。
百度DMA+小度App的蓝牙语音解决方案技术难点解析的更多相关文章
- 百度DMA+小度App的蓝牙语音解决方案入局
前记 人机交互经历了三个阶段键鼠.触屏和语音交互.在国外,谷歌.亚马逊.苹果等巨头的竞争已经到达白热化状态:在国内,百度的DuerOS凭借着入局早,投入大,已经成为国内语音互交的一面旗帜.无论是从 ...
- 百度DMA+小度App的蓝牙语音解决方案展示
前记 跟着百度也有一段时间了,经过一年多的努力,我们也做出了一些基于百度的语音助手的产品方案.下面就给大家秀一下我们做的产品.有类似需求的朋友可以多多交流.我们的合作方式十分灵活,可以卖芯片你自己 ...
- 百度DMA+小度App的蓝牙语音解决方案案例展示
前记 跟着百度也有一段时间了,经过一年多的努力,我们也做出了一些产品.下面就给大家秀一下我们做的产品.有类似需求的朋友可以多多交流. 智能语音耳机 这个是就是可以通过按键来调用小度app的运动 ...
- 【阿里聚安全技术公开课】移动APP漏洞风险与解决方案
阿里云·云栖社区携手阿里聚安全打造阿里安全技术公开课,带你一探互联网安全的风采 关于移动APP安全 移动App是大家使用手机每天接触最多的东西,然而在移动APP开发中,由于一些开发工程师对安全的不重视 ...
- iOS后台唤醒实战:微信收款到账语音提醒技术总结
1.前言 微信为了解决小商户老板们在频繁交易中不方便核对.确认到账的功能痛点,产品MM提出了新版本需要支持收款到账语音提醒功能.本文借此总结了iOS平台上的APP后台唤醒和语音合成.播放等一系列技术开 ...
- android Qzone的App热补丁热修复技术
转自:https://mp.weixin.qq.com/s?__biz=MzI1MTA1MzM2Nw==&mid=400118620&idx=1&sn=b4fdd5055731 ...
- App热补丁动态修复技术介绍
安卓App热补丁动态修复技术介绍 来自qq空间团队:微信号qzonemobiledev QQ空间终端开发团队 1.背景 当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就 ...
- 蓝牙mesh网络技术的亮点
蓝牙mesh网络技术的亮点 The highlights of Bluetooth mesh networking technology 导言 蓝牙是当今最主要的低功耗无线技术之一,对无线设备用户和开 ...
- 吓哭原生App的HTML5离线存储技术,却出乎意料的容易!【低调转载】
吓哭原生App的HTML5离线存储技术,却出乎意料的容易![WeX5低调转载] 2015-11-16 lakb248 起步软件 近几天,WeX5小编编跟部分移动应用从业人士聊了聊,很多已经准备好全面拥 ...
随机推荐
- mysql 查询当天、昨天、本周、上周、本月、上月、今年、去年数据
mysql查询今天.昨天.7天.近30天.本月.上一月 数据 今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT ...
- python 集合运算
- SDUT-3342_数据结构实验之二叉树三:统计叶子数
数据结构实验之二叉树三:统计叶子数 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 已知二叉树的一个按先序遍历输入的字符 ...
- 是时候了解React Native了
文章首发于简书,欢迎关注 随着科技的发展,手机开发也在向好的方向不停的转变.IOS和Android两大手机操作横空出世,称霸江湖.我们每开发一个手机软件最少都需要开发这两个终端. 两大操作系统都在不断 ...
- Mac OSX原生读写NTFS功能开启方法
macOX系统内建的NTFS支持默认只能读不能写 原生读写NTFS,需要自行终端命令手动开启 1. 插上磁盘 此时Mac桌面应该会显示出插入的磁盘,但是当你想把文件拖入磁盘的时候,发现是不能拖进去的, ...
- Android中使用Apache common ftp进行下载文件
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/birdsaction/article/details/36379201 在Android使用ftp下 ...
- Android ListView批量选择(全选、反选、全不选)
APP的开发中,会常遇到这样的需求:批量取消(删除)List中的数据.这就要求ListVIew支持批量选择.全选.单选等等功能,做一个比较强大的ListView批量选择功能是很有必要的,那如何做呢? ...
- Python 进阶02 文本文件的输入输出
Python 具有基本的文本文件读写功能,Python的标准库提供有更丰富的读写功能. 文本文件的读写主要通过open()所构建的文件对象来实现 创建文件对象 我们打开一个文件,并适用一个对象来表示该 ...
- js实现方块的碰撞检测
文章地址:https://www.cnblogs.com/sandraryan/ 个人感觉.方块的碰撞检测比圆形麻烦~~ <!DOCTYPE html> <html lang=&qu ...
- JS划重点——类和对象的不正经阐述
JS划重点--类和对象的不正经阐述 /在JS 类里面函数也是一个对象,那么要创建一个对象就需要一个类,这个类可以由这个对牛逼的对象-函数来实现/ /首先是普罗大众都会的 工厂模式来创建一类/ func ...