安装百度语音识别sdk
安装百度-aip 库
pip install baidu-aip
使用ffmpeg命令

from pydub import AudioSegment
from pydub.utils import mediainfo
import os
from aip import AipSpeechos.remove(r'C:\Users\Administrator\Desktop\save\识别结果.txt')
input_filename = input(r'请将文件放入C:\Users\Administrator\Desktop\save\ 文件夹路径下!\n 请输入文件名*.mp3:')file_name = r'C:\Users\Administrator\Desktop\save/'+input_filenamedef sound_cut(file_name,cut_song_num):sound = AudioSegment.from_mp3(file_name)# 单位:msstat_time = 0end_time = 59for i in range(cut_song_num):if i == cut_song_num - 1 :   #判断如果是最后一次截断cut_song = sound[stat_time*1000:]   #截取到最后的时间else:cut_song = sound[stat_time*1000:end_time*1000]save_name = r"c:/Users/Administrator/Desktop/save/temp-"+ str(i+1) +'.mp3' #设置文件保存名称save_name_pcm = r"c:/Users/Administrator/Desktop/save/temp-"+ str(i+1) +'.pcm' #设置文件保存名称cut_song.export(save_name, format="mp3",tags={'artist': '李斯特', 'album': '最爱'})  #进行切割order_ffmpeg = 'ffmpeg -i {} -f s16le -ar 16000 -ac 1 -acodec pcm_s16le {}'.format(save_name,save_name_pcm)os.system(order_ffmpeg) #使用ffmpeg命令转化mp3为pcmcontext = baidu_Speech_To_Text(save_name_pcm)write_text(context)os.remove(save_name) #删除mp3文件os.remove(save_name_pcm)#切割完加入下一段的参数stat_time +=59end_time +=59print(save_name,'end_time=',stat_time,'end_time=',end_time)def get_sond_info(file_name):song = mediainfo(file_name)song_length = str(int(float(song['duration']))) #读取文件时长song_size = str(round(float(int(song['size'])/1024/1024),2)) + 'M'    #读取文件大小保留两位小数round(变量,2)song_filename = song['filename'] # 读取文件地址song_format_name = song['format_name'] #读取文件格式try:song_name = song['TAG']['title'] #读取标题song_artist = song['TAG']['artist'] #读取作家except:song_name = '暂无' song_artist = '暂无' print('歌名:',song_name,'\n作家',song_artist,'\n歌曲长度',song_length,'\n文件大小',song_size,'\n文件路径',song_filename,'\n文件格式',song_format_name)cut_song_num = int(int(song_length) / 59)  + 1  #每段59s,计算切割段数print('切割次数',cut_song_num)return cut_song_numdef get_file_content(filePath):with open(filePath, 'rb') as fp:return fp.read()def baidu_Speech_To_Text(filePath):  #百度语音识别path = r'C:\Users\Administrator\Desktop\save'os.chdir(path)APP_ID = '你的百度id'API_KEY = '你的key'SECRET_KEY = '你的secret'aipSpeech = AipSpeech(APP_ID, API_KEY, SECRET_KEY) # 初始化AipSpeech对象# 读取文件json = aipSpeech.asr(get_file_content(filePath), 'pcm', 16000, {'dev_pid': 1537,})print(json['err_msg'])if 'success' in json['err_msg']:context = json['result'][0]print('成功,返回结果为:',context)else:print('识别失败!')return contextdef write_text(text):file1 = open(r'C:\Users\Administrator\Desktop\save\识别结果.txt','a',encoding='utf-8')file1.write(text)file1.close()cut_song_num = get_sond_info(file_name)
sound_cut(file_name,cut_song_num)

最后结果:识别mp3文件,输出 识别结果.txt

python百度ai语音识别-音频分割-ffmpeg mp3转pcm - 生成txt文件相关推荐

  1. 微信小程序实现图林机器人聊天和百度AI语音识别的简单人工客服

    用微信小程序实现简单的人工客服 最近在做软件工程的课程设计,选择性的做了微信小程序的简单的人工客服.在这里对该课程设计的原理和实现进行一个讲解,也算做一个总结和笔记,方便自己以后查看.复习和帮助大家的 ...

  2. 微信小程序-百度AI语音识别——(一)

    微信小程序-百度AI语音识别--(一) 一.百度AI 某天闲来无事在CSDN上看到有大神用百度语音识别+图灵机器人做了一个可以语音聊天(调戏人工智障 )的小demo,觉得挺有趣的,也想着实现一下. 百 ...

  3. python 语音识别_带有Python的AI –语音识别

    python 语音识别 带有Python的AI –语音识别 (AI with Python – Speech Recognition) In this chapter, we will learn a ...

  4. Qt实践|HTTP知识点-使用百度AI语音识别服务

    目录 基本概念 代码与实例 基本概念 这里来简单介绍下百度的REST API文档,首先是获取Access Token 获取到了后,再发送请求,进行语音识别. 这里我采用Raw方式上传 这个就是百度AI ...

  5. Python百度ai识别图片表格

    Python百度ai识别表格 通过借助百度ai的接口实现含表格图片的识别,并将表格内容返回为Excel文件. 获取Access Token (1)有百度账号的直接登录百度ai,没有的注册在登录. (2 ...

  6. Java工具类之音频播放与mp3转pcm

    Java工具类之音频播放与mp3转pcm 小程序通过科大讯飞或百度语音识别,由于无法识别mp3文件,需要将mp3文件转换为pcm文件(mp3的音频包含文件头描述啥的,而pcm的音频格式就纯音频了,没有 ...

  7. python 百度ai批量识别_Python基于百度AI的文字识别的示例

    Python基于百度AI的文字识别的示例 使用百度AI的文字识别库,做出的调用示例,其中filePath是图片的路径,可以自行传入一张带有文字的图片,进行识别. 下载baidu-aip这个库,可以直接 ...

  8. python+百度AI 文字转换成语音

    进入百度AI官网,依次点击:开放能力-> 语音技术 -> 语音合成-> 短文本在线合成-> 立即使用-> 登录 创建应用 先去领取免费的接口,选择语音合成,然后将需要的接 ...

  9. [python]百度AI接口实现人像抠图换背景色

    目录 前言 最终效果 一.注册百度AI账号.创建人像分割应用 二.代码实现 1.引入库 2.获取Access Token 3.核心代码 4.图片底色填充 5.图片压缩 6.获取图片大小 7.png格式 ...

最新文章

  1. python的质量控制模块_10.11. 质量控制
  2. 《Linux From Scratch》第三部分:构建LFS系统 第六章:安装基本的系统软件- 6.47. Gawk-4.1.1...
  3. Python字符串格式化之format方法详解
  4. triplet loss 在深度学习中主要应用在什么地方?有什么明显的优势?
  5. 【Java】辨析jvm.dll、java.exe、javaw.exe、javaws.exe
  6. linux查看火狐进程,Firefox 终于用上多进程技术了
  7. verilog学习记(verilog翻译成c)
  8. HDU-1172 猜数字 广搜
  9. 用友U8对账不平,对账错误简单处理方法
  10. python元组可以修改吗_python元组元素可以修改吗
  11. HR常用的人力资源系统软件有哪些?
  12. Selenium2+python自动化6-八种元素元素定位(Firebug和firepath)
  13. 如何下载高程地图并处理
  14. java knn kd树_KD树实现KNN
  15. 【阿里云产品使用教程】1. 阿里云VPC ECS SLB NAT初体验 - 上
  16. 利用D盘内存给C盘扩容
  17. openCV 出现 0x770413C5 (ntdll.dll) 第一机会异常: 0xC0000005: 读取位置 0x00000008 时发生访问冲突 解决办法
  18. shiro+jwt登录认证anon配置无效
  19. 华大MCU-----进入深度睡眼不能下载程序
  20. ngx-markdown 安装和使用

热门文章

  1. 如何使用Bootstrap 5从jQuery切换到Vanilla JavaScript
  2. SQL Server Express下載地址
  3. iPhoneX的faceID到底是一种怎样风骚的操作?
  4. Knockoutjs官网翻译系列(二) Observable 数组
  5. 2021年网站不备案还会有收录排名吗
  6. SuperMap iServer常见问题解答集锦(十五)
  7. win7各种插件的下载与使用
  8. 文件指针的运用 : 计算文件wj.txt内容的字节数
  9. linux怎么滑动命令行窗口_如何在Linux命令行界面愉快进行性能测试
  10. XILINX Ultrascale/Ultrascale+ 高速收发器时钟MGTHREFCLK原语调用