# !/usr/bin/env python3
# -*- coding: utf-8 -*-
# 文件名称 :recaudio.PY
# 开发工具 :PyCharm
'''
识别mp3语音时如何转换为采用16K采样率的wav文件
'''
from aip import AipSpeech
import os
import uuid
import time
APP_ID = '自己的百度云应用APPID' # 设置自己创建百度云应用时的ID
API_KEY = '自己的百度云应用APIKey' # 设置自己创建百度云应用时的APIKey
SECRET_KEY = '自己的百度云应用SECRETKey' # 设置自己创建百度云应用时的SECRETKey
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY) # 创建语音识别对象
filepath=input('请输入要识别的音频文件:') # 记录用户输入的音频文件地址
# # 直接识别,会出现3301错误,表示音频采样率不符合,或者音质不清晰
# with open(filepath, 'rb') as f: # 以二进制形式打开文件
# # 识别音频文件内容
# result=client.asr(f.read(), 'wav', 16000, {'dev_pid': 1536,})
# print(result) # 输出识别结果
path=os.path.splitdrive(filepath)[0] # 得到原视频的路径
if not path.endswith('\\'): # 判断路径是否以\结尾
path=path+'\\' # 为路径结尾增加\
newaudio = uuid.uuid1() # 随机生成临时文件名
newfile=os.path.join(path,str(newaudio) + ".wav") # 新的文件(包含路径和扩展名)
# 定义使用ffmpeg转换视频的命令,将mp3格式转换为采用16K采样率的wav文件
cmd = "ffmpeg -i " + str(filepath) + " -ar 16000 -ac 1 -f wav " + newfile
os.popen(cmd) # 执行格式转换命令
time.sleep(0.1) # 休眠0.1秒,这里主要是为了执行上面的转换操作
if os.path.exists(newfile): # 判断是否存在新转换的文件
with open(newfile, 'rb') as f: # 以二进制形式打开文件
# 识别音频文件内容
result=client.asr(f.read(), 'wav', 16000, {'dev_pid': 1536,})
print(result['result']) # 输出识别结果
else:
print('没有该文件')
Python代码源码-实操案例-框架案例-识别mp3音频时如何转换为采用16K采样率的wav文件.zip
版权申诉
186 浏览量
2024-02-22
18:47:41
上传
评论
收藏 15.82MB ZIP 举报
徐浪老师
- 粉丝: 6256
- 资源: 6880
最新资源
- 服务器概述服务器概述服务器概述服务器概述.txt
- 华中农业大学python实验题.txt
- 海康威视相机采图交叉编译示例程序,c++
- DETR-基于Tensorflow实现DETR目标检测算法-附流程教程+项目源码-优质项目实战.zip
- 3d激光slam地图发布程序,3d地图点云处理,c++程序
- 送给妈妈的一束鲜花.zip(母亲节祝福HTML源码)
- 稀疏化DETR-基于Pytorch实现稀疏化DETR-SparseDETR-附流程教程+项目源码-优质项目实战.zip
- 人工分类:SLTM的微博评论二分类数据集
- (自适应手机端)响应式房产合同知识产权网站pbootcms模板 企业管理类网站源码下载.zip
- (自适应手机端)响应式动力刀座pbootcms网站模板 五金机械设备类网站源码下载.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈