一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于国产CPU和操作系统的语音实时交互方法与流程

2022-03-09 01:04:59 来源:中国专利 TAG:

一种基于国产cpu和操作系统的语音实时交互方法
技术领域
1.本发明涉及国产软件开发技术领域,特别涉及一种基于国产cpu和操作系统的语音实时交互方法。


背景技术:

2.近年来,具有自主知识产权的全国产软硬件有了较快的发展,涌现出众多具有自主知识产权的基础软硬件产品。龙芯、飞腾、北大众志等具有自主知识产权的高端通用芯片蓬勃发展,技术水平达到了同类产品的世界先进水平。
3.与此同时国产操作系统产品的发展也欣欣向荣,银河麒麟操作系统、中标麒麟操作系统、起点操作系统、凤凰操作系统等国产操作系统产品不断涌现出来。这些操作系统无论是布局还是操作方式上与windows系统都所差无几。
4.国产操作系统的蓬勃发展,给国产基础软硬件的推广和使用带来了前所未有的机遇。另外基于国产软硬件的安全可靠性,在政府、军工等重要领域,更换国产软硬件,已经势在必行。
5.目前全国产环境下cpu和操作系统已经能够很好地集成多种应用并且完全符合国家标准,但是在不同cpu和操作系统之间还是存在部分差异导致应用出错,需要基于不同的cpu和操作系统做应用适配修改。
6.为了屏蔽不同平台的cpu差异及操作系统差异,实现基于用户语音触发各种应用程序相关操作,本发明提出了一种基于国产cpu和操作系统的语音实时交互方法。


技术实现要素:

7.本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于国产cpu和操作系统的语音实时交互方法。
8.本发明是通过如下技术方案实现的:
9.一种基于国产cpu和操作系统的语音实时交互方法,其特征在于,包括以下步骤:
10.第一步,客户端采集用户声音,录制为音频文件;
11.客户端程序运行于使用国产cpu的终端机的国产操作系统中,包括客户端桌面应用及客户端java应用两部分;客户端持续监听用户语音信号,用户发出预设的唤醒词即可触发客户端java应用录制用户声音,并存储为本地音频文件;
12.第二步,客户端java应用利用socket通信技术将录制的音频文件发送至服务端;
13.第三步,服务端接收到音频文件后,对音频文件进行解析,并在识别后传回客户端;
14.服务端程序运行于使用国产cpu的服务器上,服务端提供语音识别功能,将客户端java应用发送过来的音频文件解析为文本内容,将解析出的文本内容发送到客户端;
15.第四步,客户端java应用根据接收到的文本内容进行逻辑判断,执行相关逻辑,将对应操作指令发送给客户端桌面应用;
16.第五步,客户端桌面应用根据接收到的操作指令触发界面的预设动作,进而实现语音实时交互。
17.基于electron桌面构建所述客户端桌面。
18.所述客户端桌面应用与客户端java应用之间通过websocket长连接实现实时通信,客户端java应用通过标识用户进行会话管理,客户端桌面应用发起websocket连接时记录并保持用户会话,以备对用户发出的语音指令进行实时响应。
19.所述预设动作包括语音唤醒成功动作、开始聆听用户声音动作和执行用户语音命令动作。
20.所述客户端桌面应用与客户端java应用之间的数据传输采用json数据体,json数据体中包括操作类型及参数值;所述客户端桌面应用在接收到客户端java应用发送来的json数据体后,解析json数据体,获取其中的操作类型,并根据操作类型及参数值执行对应的业务逻辑处理。
21.所述操作类型及参数值包括但不限于:展示文字操作,其参数值为语音转文字后的值,开始聆听用户语音指令操作,其参数值为语音助手的交互动作对应的值。
22.所述客户端java应用集成语音唤醒功能,以便持续监听用户语音信号,对用户语音及时响应;所述语音唤醒功能通过开源的语音唤醒sdk工具包实现。
23.所述服务端采用kaldi作为语音识别工具,kaldi模型选择cvte模型。
24.本发明的有益效果是:该基于国产cpu和操作系统的语音实时交互方法,能够屏蔽不同平台的cpu差异及操作系统差异,在各种使用国产cpu的服务器和各种使用国产cpu的终端机上实现基于用户语音触发各种应用程序相关操作。
附图说明
25.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
26.附图1为本发明基于国产cpu和操作系统的语音实时交互方法示意图。
27.附图2为本发明用户语音指令从发出到完成交互的时序示意图。
具体实施方式
28.为了使本技术领域的人员更好的理解本发明中的技术方案,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚,完整的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
29.该基于国产cpu和操作系统的语音实时交互方法,包括以下步骤:
30.第一步,客户端采集用户声音,录制为音频文件;
31.客户端程序运行于使用国产cpu的终端机的国产操作系统中,包括客户端桌面应用及客户端java应用两部分;客户端持续监听用户语音信号,用户发出预设的唤醒词即可触发客户端java应用录制用户声音,并存储为本地音频文件;
32.录制的音频文件为服务端所支持的16-bit位深、采样率16000hz、单声道、wav格式的音频文件。
33.第二步,客户端java应用利用socket通信技术将录制的音频文件发送至服务端;
34.第三步,服务端接收到音频文件后,对音频文件进行解析,并在识别后传回客户端;
35.服务端程序运行于使用国产cpu的服务器上,服务端提供语音识别功能,将客户端java应用发送过来的音频文件解析为文本内容,将解析出的文本内容发送到客户端;
36.第四步,客户端java应用根据接收到的文本内容进行逻辑判断,执行相关逻辑,如:打开浏览器、打开记事本等,将对应操作指令发送给客户端桌面应用;
37.第五步,客户端桌面应用根据接收到的操作指令触发界面的预设动作,进而实现语音实时交互。
38.基于electron桌面构建所述客户端桌面。由于electron基于node和chromium对不同平台有很好的支持,以此达到了兼容不同的国产操作系统平台的效果。通过electron构建桌面应用所需的基础功能、ui界面等。electron应用通过electron提供的脚手架程序可进行快速搭建。在搭建的electron应用的基础上,根据用户需要进行功能和界面的添加,客户端桌面应用包含实时交互页面及配置相关功能。
39.所述客户端桌面应用与客户端java应用之间通过websocket长连接实现实时通信,客户端java应用通过标识用户进行会话管理,客户端桌面应用发起websocket连接时记录并保持用户会话,以备对用户发出的语音指令进行实时响应。
40.客户端桌面应用在启动时通过javascript脚本主动发起websocket连接:可以通过electron的主进程发起,或者通过electron的渲染进程单独发起,与本机客户端java应用创建websocket长连接,用来保持客户端桌面应用和客户端java应用之间的连接来进行实时通信,以备对用户发出的语音指令进行实时响应。并且在程序启动期间要始终保持连接,否则将无法完成通信,从而无法对用户发出的语音指令进行实时响应。
41.所述预设动作包括语音唤醒成功动作、开始聆听用户声音动作和执行用户语音命令动作。
42.所述客户端桌面应用与客户端java应用之间的数据传输采用json数据体,json数据体中包括操作类型及参数值;所述客户端桌面应用在接收到客户端java应用发送来的json数据体后,解析json数据体,获取其中的操作类型,并根据操作类型及参数值执行对应的业务逻辑处理。
43.客户端java应用根据需要实现后续业务逻辑,如可直接响应,则客户端java应用直接响应,如需客户端桌面应用响应,则将其包装为json数据通过websocket连接发送至客户端桌面应用以便执行后续逻辑。
44.websocket连接的实现是语音实时交互的业务核心。消息的数据传输的格式采用json格式是由于json的数据格式比较简单、易于读写、格式都是压缩的、占用带宽小、非常适合此场景下进行数据的传递。
45.所述操作类型及参数值包括但不限于:展示文字操作,其参数值为语音转文字后的值,开始聆听用户语音指令操作,其参数值为语音助手的交互动作对应的值。
46.例如,若接收到的数据为:{"oper":"show","value":"解析后的内容"},在接收到
数据后,首先获取json数据中key为oper的内容show,然后根据show判断为展示文字操作,然后获取key为value的值"解析后的内容"然后根据实际业务需要,在对应的待展示内容区域进行文字的展示即可。
47.所述客户端java应用集成语音唤醒功能,以便持续监听用户语音信号,对用户语音及时响应;所述语音唤醒功能通过开源的语音唤醒sdk工具包实现。
48.所述服务端采用kaldi作为语音识别工具,kaldi模型选择cvte模型。下载训练好的cvte模型后解压放置于kaldi对应目录下,然后完成相关配置即可。待解析的音频文件应为16-bit位深、采样率16000hz、单声道、wav格式。
49.以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献