importwaveimportpyaudiofrom aip importAipSpeechimportwin32apidefrecord():#定义数据流块

CHUNK = 1024FORMAT=pyaudio.paInt16#想要百度识别,下面这两参数必须这样设置,使得比特率为256kbps

CHANNELS = 1RATE= 16000

#录音时间

RECORD_SECONDS = 8

#要写入的文件名

WAVE_OUTPUT_FILENAME = "output.wav"

#创建PyAudio对象

p =pyaudio.PyAudio()#打开数据流

stream = p.open(format=FORMAT,

channels=CHANNELS,

rate=RATE,

input=True,

frames_per_buffer=CHUNK)print("* recording")#开始录音

frames =[]for i in range(0, int(RATE / CHUNK *RECORD_SECONDS)):

data=stream.read(CHUNK)

frames.append(data)print("* done recording")#停止数据流

stream.stop_stream()

stream.close()#关闭PyAudio

p.terminate()#写入录音文件

wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')

wf.setnchannels(CHANNELS)

wf.setsampwidth(p.get_sample_size(FORMAT))

wf.setframerate(RATE)

wf.writeframes(b''.join(frames))

wf.close()defASR():#录音

record()"""你的 APPID AK SK"""APP_ID= '****'API_KEY= '****'SECRET_KEY= '****'client=AipSpeech(APP_ID, API_KEY, SECRET_KEY)#读取文件

defget_file_content(filePath):

with open(filePath,'rb') as fp:returnfp.read()#识别本地文件

res=client.asr(get_file_content('output.wav'), 'wav', 16000, {'dev_pid': 1536,

})if not res.get("err_no"):return res.get("result")[0]return res.get("err_no")defcontrol(order):#命令对应的程序路径

open_order={"打开QQ":r"C:Program Files (x86)TencentQQBinQQScLauncher.exe","打开记事本":r"D:Notepad++

otepad++.exe","打开浏览器":r"C:Usersffm11AppDataRoaming360se6Application360se.exe"}

res=open_order.get(order)ifres:#参数1:用于指定父窗口句柄。当函数调用过程出现错误时,它将作为Windows消息窗口的父窗口

#参数2:用于指定要进行的操作。

#“open”操作表示执行由lpFile参数指定的程序,或打开由lpFile参数指定的文件或文件夹;

#“print”操作表示打印由lpFile参数指定的文件;

#“explore”操作表示浏览由lpFile参数指定的文件夹。

#参数3:用于指定要打开的文件名、要执行的程序文件名或要浏览的文件夹名。

#参数4:若lpFile参数是一个可执行程序,则此参数指定命令行参数,否则此参数应为NULL.

#参数5:若lpFile参数是一个可执行程序,则此参数指定程序窗口的初始显示方式,否则此参数应设置为0。

#这个参数常用的常数:

#SW_HIDE 隐藏窗口,活动状态给令一个窗口

#SW_MINIMIZE 最小化窗口,活动状态给令一个窗口

#SW_RESTORE 用原来的大小和位置显示一个窗口,同时令其进入活动状态

#SW_SHOW 用当前的大小和位置显示一个窗口,同时令其进入活动状态

#SW_SHOWMAXIMIZED 最大化窗口,并将其激活

#SW_SHOWMINIMIZED 最小化窗口,并将其激活

#SW_SHOWMINNOACTIVE 最小化一个窗口,同时不改变活动窗口

#SW_SHOWNA 用当前的大小和位置显示一个窗口,不改变活动窗口

#SW_SHOWNOACTIVATE 用最近的大小和位置显示一个窗口,同时不改变活动窗口

win32api.ShellExecute(0, 'open', res, '', '', 1)else:print("语音命令失败")if __name__ == '__main__':

order=ASR()

control(order.rstrip("。"))

python开发语音录入_python实现语音录入识别相关推荐

  1. python开发的前景_python开发前景怎么样

    随着近几年Python的飞速发展,应用范围逐步趋于广泛,后端开发.前端开发.爬虫.金融量化分析.人工智能.自动化运维.自动化运维.大数据,Python都有涉及.Python相对其他编程语言来讲,语法较 ...

  2. python开发工具管理系统_Python开发桌面软件文档及网址管理工具,强迫症的福音...

    原标题:Python开发桌面软件文档及网址管理工具,强迫症的福音 写在前面 这两天用python鼓捣开发了一个软件,分享给同事,觉得很实用,可以大大提高工作效率,想通过平台分享出来给大家 希望给爱好p ...

  3. python开发效率怎样_Python 的开发效率真的比 Java高吗?

    真的比Java高很高. 几个例子. 爬虫领域,几年前就用Scrapy抓百度,新浪,股吧等各种东西. 五分钟写好一个小爬虫,爽到暴有没有?当年我就是靠教人写爬虫...才骗到小妹妹跟我约会的. 文本处理, ...

  4. python 开发视频播放网站_python开发微电影视频网站教程附源码

    做为一个合格的Pythoner,只掌握一个框架是不够,如果你有过其它Python框架(例如django)的使用经验,对比不同框架的特性来学习,你将收获更多 当前信息若含有黄赌毒等违法违规不良内容,请点 ...

  5. python开发桌面时钟_python基于Kivy写一个图形桌面时钟程序

    Kivy 是一个开源的 Python 第三方库,可以用来快速开发应用程序. 它有如下三个特点: 跨平台 Kivy 编写的程序可在 Linux,Windows,OS X,Android,iOS 和 Ra ...

  6. python开发webservice服务_Python开发WebService系列教程之REST,web.py,eurasia,Djan

    在Bioinformatics(生物信息学)领域,WebService是很重要的一种数据交换技术,未来必将更加重要.目前EBI所提供的WebService就分别有SOAP和REST两种方式的服务,不管 ...

  7. python开发工程师工资_Python开发工程师工资一般多少钱

    Python工程师工资多少钱,相信每一个想要踏入Python开发行业的人都想知道这样一个问题,一个行业的薪资标准代表了它繁荣与否也代表了自己职业的未来的发展.下面就让我们来看一下一般Python开发工 ...

  8. 能够支持python开发的环境_python集成开发环境哪个好?老男孩Python

    python是非常热门的编程语言,当我们通过python进行编程的时候,需要借助一些工具来完成,接下来老男孩教育为大家介绍五款python集成开发环境,你更喜欢哪一款呢? 1. PyCharm PyC ...

  9. python开发游戏教程_Python开发星际游戏实例教程

    这篇文章主要为大家详细介绍了Python外星人入侵游戏编程完整的实现思路,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 PYTHON游戏编程外星人入侵的完整实现思路,具体内容如下 准备工作:下载p ...

  10. python开发游戏流程_python开发游戏的前期准备

    python开发游戏的前期准备 本文章面向有一定基础的python学习者,使用Pygame包开发一款简单的游戏 首先打开命令行,使用PyPI下载Pygame包(输入命令pip install pyga ...

最新文章

  1. 使用指针字符串查找字串的个数
  2. 让你提升命令行效率的 Bash 快捷键 [完整版]
  3. 那些方式可以合并php数组,php中数组合并的几种方法
  4. ICSharpCode.SharpZipLib 开源压缩库使用示例
  5. 按比例切分组合数值(洛谷P1008、P1618题解,Java语言描述)
  6. 参考信息 - 云原生(Cloud Native)
  7. go 判断切片是否存在某元素_Golang基础之切片
  8. Java基础学习总结(152)——JDK 1.7和 JDK 1.8中HashMap的实现有什么不同?
  9. facebook 广告目标详解
  10. 【虚拟化实战】存储设计之二LUN Sizing
  11. 优秀的弹窗插件 jquery.lightbox_me.js
  12. Drools workbench kie-server部署和简单使用(全流程
  13. Android 存储学习之SQLite数据库的基本操作 (使用API操作数据库)
  14. 不洗袜子的高文博_那个孩子在夏天中旬用高袜子大笑?
  15. 软件测试——selenium环境搭建及自动化测试
  16. Traffic Shifting
  17. uni-app的发展和应用
  18. 大数据Hadoop之——EFAK和Confluent KSQL简单使用(kafka listeners 和 advertised.listeners)
  19. 01- NumPy 数据库 (数据库)
  20. 队列----循环队列

热门文章

  1. linux网络存储备份,备份基础:Linux异构网络共享光盘刻录(下)
  2. 深度估计软件DERS6.1使用方法
  3. linux驱动模块probe,linux 驱动之 probe 调用
  4. 如何在 Windows 10 上永久禁用 Microsoft Defender 防病毒软件
  5. 中国石油大学(北京)-《软件工程》-答案
  6. android组件化数据生命周期,Android组件化开发实践(五):组件生命周期管理
  7. 西门子PLC三个按钮点亮三个小灯
  8. Android笔记:invalidate()和postInvalidate() 的区别及使用
  9. 用matlab生成跳频信号,用MATLAB实现一种快跳频通信系统
  10. 如何给黑白照片上色?这些实用技巧分享给你