Jasper语音助理介绍

1. 介绍

Jasper是一款基于树莓派的开源语音控制助理

Jasper工作原理主要是设备被动监听麦克风, 当收到唤醒关键字时进入主动监听模式, 此时收到语音指令后进行语音识别, 然后对得到的文本进行语义内容解析并处理, 然后将处理结果通过语音合成并输出给用户.

其中涉及到的技术包括声音的录制和播放; 语音识别(ASR/STT); 语义内容(NLU/NLP); 语音合成(TTS)

2. 音频系统

2.1 硬件

音频系统的硬件设备为声卡, 声卡通过DAC(数模转换)和ADC(模数转换)实现音频的输入和输出.

下面是Linux下查看声卡设备的命令

$ lspci | grep -i audio00:05.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 01)

$ cat /proc/asound/cards 0 [Intel          ]: HDA-Intel - HDA Intel                      HDA Intel at 0xf0804000 irq 21

2.2 软件

在Linux中音频系统结构如下

在桌面Linux系统中, 音频系统通常包含驱动层服务层(声音服务器)和应用层.
在嵌入式系统中, 音频系统通过只包含驱动层应用层.

在Linux下有两套音频驱动系统, 分别是OSS和ALSA.

2.2.1 OSS

OSS(Open Sound System), 是类Unix和POSIX兼容系统上统一的声音架构, 兼容OSS API的应用程序可以方便地进行移植
OSS API 主要提供如下设备文件接口

/dev/mixer: 混音及控制/dev/dsp:   音频输入输出

现如今大部分Linux系统并不提供OSS驱动, 而使用ALSA, 故在此不详述.

更多信息参考<OSS--跨平台的音频接口简介>

2.2.2 ALSA

ALSA(Advanced Linux Sound Architecture)是OSS的继任者, 目前已经成为Linux下主流音频架构
ALSA包含驱动函数库以及工具包

alsa-driver: 驱动部分, 集成在内核中, 大多以模块的方式存在

驱动可分为如下三层

- 底层的硬件操控层: 负责实现硬件操纵访问功能, 这也是声卡驱动程序中厂商需实现的主要部分
- 中间层核心层: 由各种功能的音频设备组件构成, 为用户提供一些预定义组件(如PCM、AC97、音序器和控制器等), 另外用户也可以自行定义设备组件
- 声卡对象描述层: 它是声卡硬件的抽象描述, 内核通过这些描述可以得知该声卡硬件的功能、设备组件和操作方法等

驱动程序为用户空间提供了如下抽象接口

/proc/asound:       信息接口/dev/snd/controlCX: 控制接口/dev/snd/mixerCXDX: 混音器接口/dev/snd/pcmCXDX:   PCM接口/dev/snd/midiCXDX:  MIDI接口/dev/snd/seq:       音序器接口/dev/snd/timer:     定时器接口

alsa-lib: 用户空间函数库, 封装驱动提供的抽象接口, 通过文件libasound.so提供API给应用程序使用

alsa-utils: 实用工具包,通过调用alsa-lib实现播放音频(aplay)、录音(arecord) 等工具

2.2.3 服务层

声音服务器介于ALSA和应用程序之间, 应用程序调用声音服务器的API来播放声音时, 同时把音频数据送到声音服务器, 声音服务器将一个以上的播放请求混音后, 再发送给底层的声卡驱动(ALSA/OSS), 由ALSA或OSS来驱动声卡播放混音后的数据.

ESD(Enlightened Sound Daemon, or EsounD): 是Gnome桌面环境的的声音服务器, 已被PulseAudio替代.
aRts(Analog Real-Time Synthesizer): 是KDE桌面环境的声音服务器, 已被Phonon替代.
PulseAudio: 新一代声音服务器, 能提供更好的音效, 目前是Gnome桌面的默认声音服务器.

2.2.4 其他软件

除了声音服务器之外, 还有一些常见的中间层/声音库
JACK Audio Connection Kit: 专业的声音服务器, 为应用程序之间的音频和MIDI数据提供实时、低延迟的连接.
GStreamer: 是用来构建流媒体应用的开源多媒体框架.
Phonon:     Qt上跨平台多媒体框架.
PortAudio:  跨平台开源的音频I/O库, 在Linux需要alsa-lib的支持.

3. 语音识别

语音识别(Speech recognition)技术, 被称为自动语音识别, ASR(Automatic Speech Recognition);
也称语音转文字, Speech To Text(STT)

4. 语音合成

语音合成即TTS(Text To Speech), 目前有开源的方案和专有方案

开源方案包括
- eSpeak/eSpeakNG、Ekho、Festival/FestVox/Flite

专有方案包括
- Google TTS、Amazon Polly、Neospeech TTS等
- Baidu TTS、Ali TTS、iFlyTek TTS等

4.1 eSpeak

eSpeak支持中文输出, 不过效果真心不敢恭维

$ espeak -vzh "我是中国人, 我爱中国"

4.2 Ekho

Ekho是一款免费的开源和多语言文本转语音软件
它支持粤语、普通话等等

4.2 Festival

Festival为爱丁堡大学CSTR开发的通用多语言语音合成系统
FestVox为CMU开发的用来构建合成声音的软件
Flite(Festival-Lite)为CMU开发的基于Festival的精简版语音合成系统
简单来说, Festival和Flite可以进行TTS转换, 然后使用FestVox提供的声音进行输出。

// Festival# yum install festival$ echo "Hello, You are using festival" | festival –tts$ festival --tts myfile// Flite

# yum install flite$ flite "Hello, You are using flite" a.wav$ aplay a.wav

Festival效果比espeak稍好, 不过不支持中文

参考:
<Alsa Opensrc Org>
<Linux ALSA声卡驱动开发最佳实践>
<How it works: Linux audio explained>

原文地址:https://www.cnblogs.com/hzl6255/p/8215551.html

时间: 2024-10-09 08:24:01

Jasper语音助理介绍的相关文章

教Alexa看懂手语,不说话也能控制语音助手

Alexa.Siri.小度--各种语音助手令人眼花缭乱,但这些设备多是针对能力健全的用户,忽略了听.说能力存在障碍的人群.本文作者敏锐地发现了这一 bug,并训练亚马逊语音助手 Alex 学会识别美式手语.项目发布之后受到社交媒体的热捧.本博文将介绍项目的底层技术以及如何使用 TensorFlow.js 构建该系统. 数月前的某个夜晚,我躺在床上时,一个念头闪过我的脑海--「如果语音是计算接口的未来,那么那些听不见或看不见的人该怎么办?」我不知道究竟是什么触发了这个想法.我自己能听.能说,周围也

科大讯飞2014公布会看点二:智能语音装进车载车机!

一直以来,汽车行业的科技创新不胜枚举.早前福特引入SYNC车载多媒体通讯娱乐系统,使得车载声控成为现实:全新一代雪佛兰科鲁兹全面升级MyLink智能车载互联系统,具备语音识别能力:丰田汽车在新款车型中陆续增加语音对话型系统"Agent". 纵观汽车行业的未来发展,车企厂商越来越重视人机交互体验,动口不动手的驾车生活离我们已不再遥远.8月20日下午,科大讯飞将在北京国家会议中心举行以"语音点亮生活"的主题公布会,用语音技术升级车载车机的智能化体验,让语音交互在汽车应用

继Amazon Alexa机智云成功对接Google Home语音控制

(内附通过gokit 玩转Google Home语音控制开发技能说明文档) "智能音箱作为智能家居入口和家庭人工智能交互的切入点,不仅吸引了世界第二大电商AWS的布局,同时也吸引了坐拥数十亿活跃用户的多款产品线的Google布局,尽管AWS Echo已出货1000万台,但是Google运用十年沉淀的技术和生态布局Google Home,蓄势待发,究竟谁会是坐上智能音箱的宝座,有待时间验证" 目前,机智云作为全球最大的物联网开发(PaaS)及(SaaS)云服务平台,已完成Google H

科大讯飞&极客学院首发语音云视频课程

本着为开发者提供优质课程内容.一站式智能人机交互解决方案为初衷,亚洲最大的语音技术提供商"科大讯飞"和国内最大的IT职业在线教育平台"极客学院"达成合作,共同策划.录制,出品<科大讯飞语音服务>系列课程,为开发者在开发"能听会说会理解"应用的Coding路上排忧解难. 经过科大讯飞和极客学院双方精心策划,联手打造的国内首个语音云视频课程<科大讯飞语音服务 Android项目开发实战介绍>重磅上线,将给小伙伴们带来哪些干货和

转: 智能音箱产业深度分析,你的客厅进入语音唤醒时代

原文网址: http://laoyaoba.com/ss6/html/57/n-645657.html 2014年亚马逊发布Echo音箱,率先引爆智能音箱市场,2015年,京东推出叮咚音箱,完成国内市场的从无到有.在语音交互技术发展的大背景下,智能音箱产品在提供内容娱乐.生活服务的同时,更多的接入到家庭生活场景中,成为智能家居的控制中心,以语音作为人口的物联网时代将会产生新的商业模式. 根据易观的定义,智能音箱是在传统音箱基础上增加了智能化功能,这功能体现 在两方面:一.技术上具备WiFi连接,

科大讯飞2014发布会看点二:智能语音装进车载车机!

一直以来,汽车行业的科技创新不胜枚举.早前福特引入SYNC车载多媒体通讯娱乐系统,使得车载声控成为现实:全新一代雪佛兰科鲁兹全面升级MyLink智能车载互联系统,具备语音识别能力:丰田汽车在新款车型中陆续加入语音对话型系统"Agent". 纵观汽车行业的未来发展,车企厂商越来越重视人机交互体验,动口不动手的驾车生活离我们已不再遥远.8月20日下午,科大讯飞将在北京国家会议中心举行以"语音点亮生活"的主题发布会,用语音技术升级车载车机的智能化体验,让语音交互在汽车应用

zabbix企业应用之自动语音报警平台

我从2013年5月开始研究zabbix,研究的版本是2.0.6,到现在也马上2年了,目前生产版本还是2.0.6. 现在我公司1000+的服务器无论是物理机还是vmware.openstack的云主机.docker容器等等都使用zabbix进行监控. 当前监控方式为:zabbix=>proxy=>client 当前报警方式为:6个等级报警(未分类.消息.警告.一般严重.严重.灾难)全部通过短信或者邮件来通知,严重及其以上使用自动语音报警方式通知. 一.语音报警介绍 1.为什么使用语音报警 之前我

一分钟就可以轻松将文字转换成语音,简单方法讲解

当我们面对电脑或者学习一天的时候,眼睛也很疲劳,看见文字就很厌,只想用耳朵听,所以现在很多人都喜欢听电台听故事,可是我们的文件没有声音啊,怎么才能把文字转换成语音读出来呢?方法很简单,下面是讲述的文字转语音方法介绍,一起来看看吧! 第一步:打开文字转语音软件,在画布的左侧有三个工具栏[文字转语音][录音转文字][翻译]点击选择[文字转语音]: 第二步:在画布右边出现的工具栏中将需要进行转换的文字复制进文本框中: 第三步:在输入的过程中如果出现错误或者需要将其进行删除的,点击画布下方栏目[清空文本

为什么说亚马逊将超过谷歌苹果微软成为第一大公司?

(上图为AWS CEO Andy Jassy) 截止到2016年底,全球市值最高的三大公司为苹果(5860.21亿美金).谷歌Alphabet(5268.95亿美金)和微软(4606.9亿美金).然而,在全球向数字化经济转型的大趋势中,这三大公司或多或少遭遇了瓶颈并显现了业务短板.而排在第6位的亚马逊(3517.85亿美金)却显示出了勃勃生机,这家公司不仅没有遇到转型挑战,反而在转型的过程中获得了巨大的发展. 2016年12月初在美国拉斯维加斯举办的AWS re:invent大会是一年一度亚马逊