前记

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

    <Window x:Class="WpfApp5.MainWindow" xmlns="http://schemas.microsoft.com/winfx/200 ...

  2. Tcp之双向通信

    TestServer.java package com.sxt.tcp; /* * 服务端 */ import java.io.DataInputStream; import java.io.Data ...

  3. Java练习 SDUT-1255_小明A+B

    小明A+B Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 小明今年3岁了, 现在他已经能够认识100以内的非负整数, ...

  4. 在SAE上使用Flask插件

    因为我之前学习的时候使用的是虚拟环境,下载的所有需要用到的插件都在flask这个文件夹里面,SAE上Flask的版本和我本地用的版本对不上,导致有时候import都不对,于是我就把本地的环境直接放到S ...

  5. iptables 通讯端口转接(Port Forwarding)

    是一种特殊的DNAT操作,其作用是让一部电脑(通常是防火牆)担任其它电脑的代理伺服器(proxy).防火牆接收外界网络接传给它自己的包,然后改写包的目的地位址或目的端口,使其像是要送到內部网路其它电脑 ...

  6. PageProxy分页的实现

    PageProxy是Ext.Net实现的一种分页方式,PageProxy通过实现OnReadData事件来完成分页. <ext:Store runat=" OnReadData=&qu ...

  7. H3C Comware的作用

  8. MongonDB指令汇总

    MongoDB特点使用不存在的对象,就等于你在创建这个对象(库,表,记录) MongoDB服务器/客户端相关 (记得把配置环境变量bin,MongonDB安装后bin在C盘的programfile-- ...

  9. js点击按钮为元素随机字体颜色和背景色

    文章地址 https://www.cnblogs.com/sandraryan/ 写两个button和一个div,点击按钮分别改变背景色和前景色(字体颜色).产生的是一个随机颜色. <!DOCT ...

  10. const(每个对象中的常量), static const(类的编译时常量)

    1 每个对象中的常量 --- const数据成员 const限定,意味着“在该对象生命周期内,它是一个常量”. 关键字const 使被限定的量为常量 在该类的每个对象中,编译器都为其const数据成员 ...