前记

  你平时在商场看到的语音助手,看起来非常的简单,其实,这个小小语音助手的背后,是一个非常的复杂的技术支撑。从前端到后端的技术依次是:前端语音降噪技术,高效的音频编解码技术,蓝牙双模技术,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的蓝牙语音解决方案技术难点解析的更多相关文章

  1. 百度DMA+小度App的蓝牙语音解决方案入局

    前记   人机交互经历了三个阶段键鼠.触屏和语音交互.在国外,谷歌.亚马逊.苹果等巨头的竞争已经到达白热化状态:在国内,百度的DuerOS凭借着入局早,投入大,已经成为国内语音互交的一面旗帜.无论是从 ...

  2. 百度DMA+小度App的蓝牙语音解决方案展示

    前记   跟着百度也有一段时间了,经过一年多的努力,我们也做出了一些基于百度的语音助手的产品方案.下面就给大家秀一下我们做的产品.有类似需求的朋友可以多多交流.我们的合作方式十分灵活,可以卖芯片你自己 ...

  3. 百度DMA+小度App的蓝牙语音解决方案案例展示

    前记   跟着百度也有一段时间了,经过一年多的努力,我们也做出了一些产品.下面就给大家秀一下我们做的产品.有类似需求的朋友可以多多交流. 智能语音耳机   这个是就是可以通过按键来调用小度app的运动 ...

  4. 【阿里聚安全技术公开课】移动APP漏洞风险与解决方案

    阿里云·云栖社区携手阿里聚安全打造阿里安全技术公开课,带你一探互联网安全的风采 关于移动APP安全 移动App是大家使用手机每天接触最多的东西,然而在移动APP开发中,由于一些开发工程师对安全的不重视 ...

  5. iOS后台唤醒实战:微信收款到账语音提醒技术总结

    1.前言 微信为了解决小商户老板们在频繁交易中不方便核对.确认到账的功能痛点,产品MM提出了新版本需要支持收款到账语音提醒功能.本文借此总结了iOS平台上的APP后台唤醒和语音合成.播放等一系列技术开 ...

  6. android Qzone的App热补丁热修复技术

    转自:https://mp.weixin.qq.com/s?__biz=MzI1MTA1MzM2Nw==&mid=400118620&idx=1&sn=b4fdd5055731 ...

  7. App热补丁动态修复技术介绍

    安卓App热补丁动态修复技术介绍 来自qq空间团队:微信号qzonemobiledev QQ空间终端开发团队 1.背景 当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就 ...

  8. 蓝牙mesh网络技术的亮点

    蓝牙mesh网络技术的亮点 The highlights of Bluetooth mesh networking technology 导言 蓝牙是当今最主要的低功耗无线技术之一,对无线设备用户和开 ...

  9. 吓哭原生App的HTML5离线存储技术,却出乎意料的容易!【低调转载】

    吓哭原生App的HTML5离线存储技术,却出乎意料的容易![WeX5低调转载] 2015-11-16 lakb248 起步软件 近几天,WeX5小编编跟部分移动应用从业人士聊了聊,很多已经准备好全面拥 ...

随机推荐

  1. Android实现圆角边框

    http://www.cnblogs.com/flyme/archive/2012/06/20/2556259.html android shape的使用 http://www.cnblogs.com ...

  2. SDUT-3347_数据结构实验之数组三:快速转置

    数据结构实验之数组三:快速转置 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 转置运算是一种最简单的矩阵运算,对于一个 ...

  3. jQuery学习笔记之可见性过滤选择器

    可见性过滤选择器是根据元素的可见和不可见状态来选择相应的元素. 显示隐藏的例子: <!DOCTYPE html> <html> <head> <script ...

  4. 11-1 css属性选择器

    一 基础选择器 标签选择器:选择的标签的‘共性’,而不是特性 div{}.ul{}.ol{}.form{} 类选择器:.box{} id选择器:#box{} 只能选择器的特性,主要是为了js *通配符 ...

  5. mybatis-generator1.3.6的使用

    下载地址: http://blog.mybatis.org/2017/12/mybatis-generator-version-136-released.html 参考了 http://blog.cs ...

  6. vue3——vue数据循环渲染

    博客地址 :https://www.cnblogs.com/sandraryan/ vue循环渲染 <!DOCTYPE html> <html lang="en" ...

  7. laravel 使用create 报错 MassAssignmentException

    在使用:   模型:create时报错, Add [name] to fillable property to allow mass assignment on [App\AdminUser].,因为 ...

  8. jieba gensim 相似度实现

    博客引自:https://www.cnblogs.com//DragonFire/p/9220523.html 简单的问答已经实现了,那么问题也跟着出现了,我不能确定问题一定是"你叫什么名字 ...

  9. Python--day65--模板语言之tags

    Tags for循环 普通for循环 <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% en ...

  10. Python--day30--软件开发架构

    软件开发架构: C/S架构: B/S架构: B/S架构和C/S架构的关系: