语音识别转文字python
# -*- coding: UTF-8 -*-
'''参考
https://blog.csdn.net/qq_43280079/article/details/99684389
https://www.cnblogs.com/nightcatcher/p/11195068.html
https://blog.csdn.net/qq_40550296/article/details/84639380
https://ai.baidu.com/docs#/ASR-API-PRO/top
https://console.bce.baidu.com/ai/?fromai=1#/ai/speech/app/detail~appId=1311671
130xx-----456
pip install baidu-aip
pip install wave
pip install pyaudio
pip install numpy
http://ai.baidu.com/
'''
#从百度AI开放平台创建应用处获取
APP_ID = '17xxx03'
API_KEY = 'UNxxxxxxxxxxxxxxMc'
SECRET_KEY = '9snWxxxxxxxxxxxxxxTvrbusBLU60s'
#--
from aip import AipSpeech
import datetime
import wave
import pyaudio
import numpy
import os
import time
def wave_data1(wf):
p = pyaudio.PyAudio()
stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
channels=wf.getnchannels(),
rate=wf.getframerate(),
output=True)
nframes = wf.getnframes()
framerate = wf.getframerate()
# 读取完整的帧数据到str_data中,这是一个string类型的数据
str_data = wf.readframes(nframes)
wf.close()
# 将波形数据转换为数组
# A new 1-D array initialized from raw binary or text data in a string.
wave_data = numpy.fromstring(str_data, dtype=numpy.short)
# 将wave_data数组改为2列,行数自动匹配。在修改shape的属性时,需使得数组的总长度不变。
wave_data.shape = -1, 2
# 将数组转置
wave_data = wave_data.T
# time 也是一个数组,与wave_data[0]或wave_data[1]配对形成系列点坐标
# time = numpy.arange(0,nframes)*(1.0/framerate)
# 采样点数,修改采样点数和起始位置进行不同位置和长度的音频波形分析
N = 44100
start = 0 # 开始采样位置
df = framerate / (N - 1) # 分辨率
freq = [df * n for n in range(0, N)] # N个元素
wave_data2 = wave_data[0][start:start + N]
return wave_data2
def record(time): #录音程序
CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 16000 #百度语音接口只提供16000和8000两种采样率在此采样16000采样,如果要8000把下面shibie()第7行16000改成8000
RECORD_SECONDS =time
WAVE_OUTPUT_FILENAME = "output.wav"
p = pyaudio.PyAudio()
stream = p.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True,
frames_per_buffer=CHUNK)
print("* Recording...")
print('开始说话或者播放声音文件(一分钟),录音为同一个文件夹output.wav')
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()
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()
def shibie1():
APP_ID = '1xxx3'
API_KEY = 'UNAxxxxxxrFnMc'
SECRET_KEY = '9snWxxxxxxxusBLU60s'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
file_handle = open('output.wav', 'rb')
file_content = file_handle.read()
result=client.asr(file_content, 'wav', 16000, {'dev_pid': '1936',})
if result['err_no'] == 0:
print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + " >> " + result['result'][0])
else:
print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + " >> " + "err_no:" + str(result['err_no']))
answerlog = str(result['result'][0])
with open("wenzilog.txt", "wt") as rbfile:
rbfile.write(answerlog)
time.sleep(2)
os.startfile('wenzilog.txt')
record(60)#定义录音时间,单位/s
print('录音结束,30秒后为你录音变成文字,文字输出wenzilog.txt,你也可以此时马上覆盖其他现有音频,名字用output.wav')
time.sleep(30)
shibie1()
#
'''
————办公学习——
robin-office2022-322b链接:https://pan.baidu.com/s/1bOFJkeZJQLG6W2TIg2b-qg 码:0322
内容:(Rogabet-note)老罗云笔记旗舰(md支持)+思源字+libreoffice+ ofd+wps+mso修复及pdf-abbyy+特快找文件,办公格式转化,文件管理,作文搜索+大学各种科目题目 vpw向日葵等
Rogabet-note老罗笔记高级2022322链接:https://pan.baidu.com/s/1wFnI-T6g-NB5ZcC6Vxkmrg 码:0322
功能: 微信对话和收发zip文件,文字转二维码,可存md\txt\log\xlsx\html\note加密,定时保存防丢失,云保存,插入机器硬件信息,提取csv docx pdf pptx excel里文字插入,朗读,加密,收发邮件且可查记录,pdf双向转化多格式,导出xlsx,下网页或zip等,计时和批量录音转文字 切割wav 不定长录音,批量word\ppt转pdf,并割txt、批量发微信,多表合并 拆分 ,表格数据对比,找文件(关键词\像素),批量提取图中文字,中日英翻译,思维图,数据图表,日历行程,各种解方程, 股票k线数据,网址收藏管理 地图,csv/xlsx转图-数据可视化 网页长图截取 批量表求和,抽取制定行,傻瓜出图表,批量ppt2jpg 批量改多个表格单元格等.
————开发学习——
psy-py-jdk.tools2022-324链接:https://pan.baidu.com/s/1cyAF6OMwlDrHzTIY7FnWew 码:0324
内容:python模块库和工具文档代码,mysql redis vscode-文本加工py-人脸识别 爬虫笔记 django3-drf-md笔记代码样本 postman navicat jdk8 高中各种科目笔记 xmind w11-7style等
————维修系统——
yolan-pack207链接:https://pan.baidu.com/s/1UNTTbzUT9nsET0j3naYkTA 取码:8888
内容:装机ji活 运行库 必备插件 win11tools,火绒安全,pe, 垃圾屏蔽+优启通37py版,加强数据恢复,装机源txt,mac+装win10指南等
————媒体处理——
Bofey-media209链接:https://pan.baidu.com/s/1kGubk5ciT17LVyE7s7Zr6A 码:0209
内容:VLC,pot播放 驱动精灵 键盘钢琴录音,媒体加工+格式转化,多网络远程vpw系统办公 邮箱,mac-tools 电影歌曲下载工具 python书+维基 路线查询和度盘神器等
————综合———
网址rogabet.xyz点黑图获所有链接,
阿里址www.aliyundrive.com/s/HGft9JyRuDA
以后网站 rogabet.xyz左下角点击src有阿里云装机资源.
综合以上所有的百度链接:https://pan.baidu.com/s/1a_-_M9j7V_lgTI4ZSQBp2Q 码:8888
'''
语音识别转文字python相关推荐
- python 实现语音转文字_python3实现语音转文字(语音识别)和文字转语音(语音合成)...
话不多说,直接上代码运行截图 1.语音合成 -------> 执行: 结果: 输入要转换的内容,程序直接帮你把转换好的mp3文件输出(因为下一步–语音识别–需要.pcm格式的文件,程序自动执行格 ...
- python离线录音转文字_python3实现语音转文字(语音识别)和文字转语音(语音合成)...
话不多说,直接上代码运行截图 1.语音合成 -------> 执行: 结果: 输入要转换的内容,程序直接帮你把转换好的mp3文件输出(因为下一步–语音识别–需要.pcm格式的文件,程序自动执行格 ...
- 语音识别实战(python代码)(一)
语音识别实战 (python :pyttsx.SAPI.SpeechLib实例代码)(一) 本文目录: 一.语音识别的基本原理 (1).语音识别的起源与发展 (2).语音识别的基本原理 (3).语音识 ...
- java自制语音识别,老司机搞定java使用语音识别将文字转换成语音
电脑现已成为我们工作.生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到java使用语音识别将文字转换成语音的问题,如果我们遇到了java使用语音识别将文字转换成语音的情况,该怎么处理怎么才能 ...
- 免费语音识别成文字_免费在线语音识别成文字_语音识别文字免费软件 - 云+社区 - 腾讯云...
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 腾讯云语音识别(asr) 为开发者提供语音转文字服务的最佳体验. 语音识 ...
- 微信小程序录音 第一篇 (基于微信小程序及百度AI的 人员语音识别转文字显示小程序)
基于微信小程序及百度AI的 人员语音识别转文字显示小程序 基于微信小程序及百度AI的 人员语音识别转文字显示小程序主要分3篇 1.微信小程序录音篇(小程序基于wx.startRecord()微信语音录 ...
- python 语音识别_带有Python的AI –语音识别
python 语音识别 带有Python的AI –语音识别 (AI with Python – Speech Recognition) In this chapter, we will learn a ...
- python提取微信聊天语音_GitHub - dennischancs/wechat-asr: 微信语音批量转文字 python编写 用百度智能云短语音识别API实现 windows下的使用...
WeChat-ASR 微信语音批量转文字 调用百度智能云短语音识别API 目前仅支持安卓手机+Windows 简介 最近线上办公,很多小会议或者讲座等也在微信群里,有时需要记录保存会议讲话内容,也可能 ...
- 开源python语音识别_5 款不错的开源语音识别/语音文字转换系统
语音文字转换(speech-to-text)(STT)系统就像它名字所蕴含的意思那样,是一种将说出的单词转换为文本文件以供后续用途的方式. 语音文字转换技术非常有用.它可以用到许多应用中,例如自动转录 ...
最新文章
- 一行代码:你的纯文本秒变Markdown
- 三菱fb功能块手册中文_技成周报33期 | 三菱、西门子全系列这34个问题值得一看!...
- 这款多线程中间件,吊打 Redis!
- KVM(Keyboard、Video、Mouse)
- WPF DatePicker 默认显示当前时间
- 福州java培训哪里好_广州java学习哪里好?需要学多长时间
- CodeForces 1096D(线性dp)
- c语言入门中冒泡排序的例题,选择排序和冒泡排序例题解析(c语言)
- 第三次学JAVA再学不好就吃翔(part9)--基础语法之键盘录入
- CF924D. Contact ATC
- Fabric 报错:java.lang.IllegalArgumentException: UserContext user‘s name missing.
- 5.4shell编程3
- python爬取网页文字和图片_简单的爬虫:爬取网站内容正文与图片
- 如何在页面显示json数据
- Python基础--01
- 【nginx流程分析之初始化cycle】
- 画象棋棋盘c语言程序设计教程课后答案,绘制中国象棋棋盘(c语言)
- python自动化框架搭建过程我们同在_python webdriver 从无到有搭建混合驱动自动化测试框架的过程和总结...
- 常山浙西计算机学校,常山这所最早的学校你上过吗?历经三个世纪,他依然在最初的地方等你……...
- 技术领导力 程序员如何才能带团队 文摘 (一)
热门文章
- ITIL V3 Foundation考试通过心得
- Memblaze明年进军全闪存阵列市场
- Flink安装及运行说明
- idea找不到依赖库
- 百度网页搜索要改版了(z)
- html页面左侧广告悬浮窗
- Mybatis中XML的文件SQL语句与动态sql标签(trim|where|set|foreach|if|choose|when|otherwise|bind)
- 集成AD域,前端实现免登录
- 承德石油高等专科学校计算机20019年,承德石油高等专科学校2019年高职扩招录取人数...
- 银行数字化转型导师坚鹏:商业银行对公业务数字化风控