先上图

本程序使用的软件:
PyCharm,Designer(PyQt5界面编辑软件)

步骤
1.使用designer绘制出程序界面的图
使用的控件:
按键

文本框
Line Edit

电量显示
Priogress Bar
这里是装饰的一个作用

布局好了以后可以自己调节各个控件字体的样式,点击你需要调整的控件,在designer的右边的属性编辑器选择。
字体:

这里我将第一个文本显示改成了只读形式:

布局完成后保存到文件夹里,是一个ui文件,之后需要打开cmd,通过cd指令进入到ui文件所在的文件夹里,使用ui转py文件的指令,其中name是文件的名字

pyuic5 -o name.py  name.ui

之后用pycharm打开生成的py文件,在文件夹内新建一个main程序,实现ui与程序的分离
代码如下,其中ty包是我生成的py文件

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
import tyif __name__ == '__main__':app = QApplication(sys.argv)MainWindow = QMainWindow()ui = ty.Ui_mainWindow()ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_())

这时运行程序可以看到界面显示出来。
1.在main程序下定义一个录音的函数
程序如下,dir_name是你的项目所在路径

def rec():dir_name = 'D:\\xun\\'CHUNK = 1024FORMAT = pyaudio.paInt16CHANNELS = 1RATE = 14400RECORD_SECONDS = 3.5file_name = "123.wav"p = pyaudio.PyAudio()stream = p.open(format=FORMAT,channels=CHANNELS,rate=RATE,input=True,frames_per_buffer=CHUNK)frames = []for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):data = stream.read(CHUNK)frames.append(data)stream.stop_stream()stream.close()p.terminate()wf = wave.open(dir_name + file_name, 'wb')wf.setnchannels(CHANNELS)wf.setsampwidth(p.get_sample_size(FORMAT))wf.setframerate(RATE)wf.writeframes(b''.join(frames))wf.close()ui.lineEdit_2.setText("我已经听到了,请点击处理按键")

录音函数定义好以后将第一个按键与该函数绑定起来,注意这里绑定的函数不需要括号。
MainWindow.show()后加上

ui.pushButton.clicked.connect(partial(rec))

2.语音识别技术由百度AI提供网址在这

登录以后找到控制台,找到语音技术的模块,创建一个新应用,之后可以看到这个新应用的AppID,API Key,Secret Key

在此图的右下角有领取免费资源,点进去领取短语音识别,领完后大概半小时就能够使用。
创建应用完成后,在python程序里安装baidu-aip的包,
在main程序下定义一个函数,第7行里的是你的录音文件的路径和一个读取文件的函数

def make():APP_ID = '你的id'API_KEY = '你的key'SECRET_KEY = '你的secret key'aipSpeech = AipSpeech(APP_ID, API_KEY, SECRET_KEY)q=aipSpeech.asr(get_file_content('D:\\xun\\123.wav'), 'wav', 16000, {'dev_pid': 1537,})if q.get('result'):ui.lineEdit_2.setText(q.get('result')[0])fun(q)

定义读取文件函数

def get_file_content(filePath):with open(filePath, 'rb') as fp:return fp.read()

make()函数与第二个按键绑定

ui.pushButton_2.clicked.connect(partial(make))

3.接下来需要一个根据处理出来的内容来判断执行什么样的操作的函数,此部分为def fun(q)。
其中ui.lineEdit_3.setText是文本控件的显示函数。

    if q.get('result')[0]=='你好。':ui.lineEdit_3.setText("你好,很高兴为您服务。")elif q.get('result')[0]=='打开QQ。':ui.lineEdit_3.setText("正在为您打开QQ。")auto.open_app_qq()elif q.get('result')[0] == '播放音乐。':ui.lineEdit_3.setText('爱了吗?')auto.music()elif q.get('result')[0] == '':ui.lineEdit_3.setText("可能是声音太小。")else:ui.lineEdit_3.setText("我还不明白你说的。")

4.这里我重新写了个库auto,用来存放一些功能的函数,如果要打开qq,需要找到qq的exe文件的路径,使用os库的命令来打开,其他同理

import osdef open_app_qq():dir1 = r'D:\Program Files\Tencent\QQ\Bin\QQScLauncher.exe'os.startfile(dir1)def music():dir2=r'"D:\xun\music.mp3"'os.startfile(dir4)

整体代码如下:各个函数里面我就没添加进来,上面都有。

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
from functools import partial
import ty
from aip import AipSpeech
import pyaudio
import wave
import autodef fun(q):def rec():def make():def get_file_content(filePath):if __name__ == '__main__':app = QApplication(sys.argv)MainWindow = QMainWindow()ui = ty.Ui_mainWindow()ui.setupUi(MainWindow)MainWindow.show()ui.pushButton.clicked.connect(partial(rec))ui.pushButton_2.clicked.connect(partial(make))sys.exit(app.exec_())

运行以后点击启动按键,对麦克风说话,给出提示后点击处理就能执行你所说的功能了。

python简易语音助手相关推荐

  1. STM32MP157-Linux音频应用编程-简易语音助手

    文章目录 前言 STM32MP157简易语音助手 alsa-lib简介: 移植alsa-lib库: libcurl库简介: 移植libcurl库: API调用 修改asrmain.c文件 修改toke ...

  2. python实现语音助手_GitHub - Yaque/Ass: Python3智能语音助手

    智能助手 Try Again 注意 尽量先看完整个介绍再动手,过些天会有相关的制作过程的教学 视频上传,目前还未处理完. 新的版本,可玩性更好一点 dev分之 效果 请看视频教程第六集 ###目前测试 ...

  3. 使用Python把树莓派改造成一个语音助手

    对博客平台有些失望,转语雀只当留档用了. 语音助手已经不是什么新事物了.就在两三年前,语音助手的使用体验还不是那么好,尝尝鲜后也就没用过了.但最近发现不管是微软的Cortana.苹果的Siri,还是一 ...

  4. Python构建您自己的交互式语音助手 Voice Assistant with Python – Alexa Clone

    构建您自己的交互式语音助手 你会学到: 构建虚拟助理 使用API 根据个人需求修改语音助手 Python编程 MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 语 ...

  5. python控制小爱同学_神秘鸭,用Siri小爱同学语音助手控制你的电脑

    智能手机发展至今,智能可不仅是改变了沟通和上网形式,依据强大的算法核心,各种基于AI的智能语音助手屡见不鲜,其中苹果的Siri.小米的小爱同学.阿里的天猫精灵,极受欢迎.虽说现在的人工智能语音助手,仍 ...

  6. 爆肝一周,用Python在物联网设备上写了个智能语音助手

    1. 背景介绍 智能语音助手作为物联网领域的一个重要生态成员,是一种全新的交互方式,它能够解放双手,随时提供服务,无须借助任何按键.想必很多开发者都有玩过天猫精灵.小爱同学或者小度吧,看到这些炫酷的人 ...

  7. 单片机学习:第一篇 基于Python的树莓派语音助手

    title: 单片机学习:第一篇 基于Python的树莓派语音助手 tags: 树莓派,python,语音助手,百度AIP 目录 一.pyaudio录音 二.语音识别 三.与图灵机器人对话 四.语音合 ...

  8. Python语言打造智能语音助手——附完整源码

    Python语言打造智能语音助手--附完整源码 随着智能家居.智能办公等领域的逐渐兴起,实现语音控制与交互已成为了一种趋势.而Python语言是一门极具魅力的编程语言,其强大的库.简洁的语法以及易于学 ...

  9. 爆肝一周,用Python在物联网设备上写了个智能语音助手-阿里云智能语音交互

    基于HaaS云端一体框架,用Python打造HaaS EDU K1智能语音助手的过程中需要用到云端能力.本篇文章介绍如何开通阿里云智能语音交互,并创建配置语音识别及语音合成项目,获取Appkey.请参 ...

  10. 【小白教程】基于树莓派的智能语音助手-python

    [完整教程零基础]基于树莓派的智能语音助手-python 树莓派3b+.python3系统自带.百度语音识别与合成.调用图灵机器人(热词唤醒失败,可用snowboy) 1.Windows系统下[下载+ ...

最新文章

  1. Django1.6踩到的坑
  2. Python:python语言中与时间有关的库函数简介、安装、使用方法之详细攻略
  3. 43. ExtJs控件属性配置详细
  4. 代理模式中的静态代理
  5. 程序员幽默:年后上班综合症,你中了几招?!!
  6. 如何在java中实现小数点自增_java编个计算器怎么在加入小数点
  7. mysql初始化实例报错_初始化 mysql时报错
  8. 计算机信息机房,计算机信息中心机房建设标准
  9. 简单网页-------课程表
  10. Swift 接入LinkedIn登录
  11. 假货泛滥是淘宝的毒瘤
  12. CSS深入理解之absolute
  13. VMware Guided Consolidation
  14. 树莓派 4b 配置 USB 网络连接
  15. 电脑开机遇到二维码怎么办?
  16. 网站商务通使用总结:
  17. 关于graphql快速入门
  18. 操作系统存储器管理管理试验
  19. http://www.cnblogs.com/alcc/p/Allc.html
  20. 调起 手机中的 相机 和 图库 来设置头像

热门文章

  1. html输入框素材,html input 标签
  2. JAVA学习笔记之J2SDK主要包介绍 (马士兵 教学视频)
  3. HealthKit框架参考
  4. 机房收费系统可行性研究报告
  5. 看了B站上的这些Java视频,我飘了!
  6. vc开发记牌器的两种思路
  7. d6u android,天敏D6U_Android4.4.2_SONY BRAVIA_精简优化双启动版
  8. html设计效果图,网页效果图如何制作?
  9. ITween操作API
  10. unity开宝箱动画_Unity动画库插件iTween介绍