一、说明

如果有一个工具能识别音视中的语音并转换成文字输出,由于可以复制粘贴而不需要逐字逐句地打,那我们进行为音频配字幕工作时将会事半功倍。

其中的关键点是音文转换,音文转换其实在很多地方都可以看到比如qq,百度搜索,讯飞输入法等等,具体到技术而言前述的三个场景其背后的技术都是一样的,都是利用AI进行语音识别。而且腾讯、百度、讯飞当前都开放了自家的语音识别接口免费使用,本文就是利用的百度语音识别接口实现的转换。

其实就配字幕这种工作而言,当前应该可以实现通过写代码自动给音频文件配上字幕,复制粘贴这步都可以省了,当然这不在本文的实现范围。

另外AI识别有一定的错误率,在我们自己使用qq、百度、讯飞时应该都有体会,更何况开放出来的接口一般都不会是公司产品百分百的能力,所以肯定还是要人工介入修正。

二、音文转换程序

2.1 程序说明

官方文档:http://ai.baidu.com/docs#/ASR-API/top

语音识别接口:http://vop.baidu.com/server_api

接口要求:只接受pcm格式音频,请求次数不限但每个音视不能超过60秒

系统环境:Windows-7 X64、Python-3.6.5 X64(miniconda)。minicoda安装可参见“PyCharm+Miniconda3安装配置教程”第二大点,如果直接安装python网上搜搜教程即可。另外需要requests模块所以装完python后需要执行pip install requests安装一下。

gihub地址:https://github.com/PrettyUp/BaiduAI。这里将程序和之前写的程序都放在了BaiduAI项目录,只管其中的vtt目录即可。

程序支持:仅支持mp3格式文件,仅支持英语(要支持普通话将post的dev_pid参数修改为1536即可,参见官方文档)

程序流程:获取video目录下的所有mp3文件并逐个进行处理----将当前要处理的mp3文件使用ffmpeg转换成pcm格式----将生成的pcm文件使用speech-vad-demo切割----将切割后的pcm文件逐个进行音文转换

运行操作:安装好系统环境----将压缩包解压到任意目录----将要转换的mp3文件复制到video文件夹下----使用python运行baiduvi.py文件----程序执行完后在video文件夹下会为各mp3文件生成其同名.srt文件其中即是语音转换成的文字。(首版代码生成的是txt文件,按建议改为直接生成.srt格式字幕文件,操作等使用方式都没改变)如下所示

2.2 程序代码

程序自己写的只有一个文件,我这里命名为baiduvi.py

import base64
import json
import os
import time
import shutil
import requestsclass BaiduVoiceToTxt():# 初始化函数def __init__(self):# 定义要进行切割的pcm文件的位置。speech-vad-demo固定好的,没的选self.pcm_path = ".\\speech-vad-demo\\pcm\\16k_1.pcm"# 定义pcm文件被切割后,分割成的文件输出到的目录。speech-vad-demo固定好的,没的选self.output_pcm_path = ".\\speech-vad-demo\\output_pcm\\"# 百度AI接口只接受pcm格式,所以需要转换格式# 此函数用于将要识别的mp3文件转换成pcm格式,并输出为.\speech-vad-demo\pcm\16k_1.pcmdef change_file_format(self,filepath):file_name = filepath# 如果.\speech-vad-demo\pcm\16k_1.pcm文件已存在,则先将其删除if os.path.isfile(f"{self.pcm_path}"):os.remove(f"{self.pcm_path}")# 调用系统命令,将文件转换成pcm格式,并输出为.\speech-vad-demo\pcm\16k_1.pcmchange_file_format_command = f".\\ffmpeg\\bin\\ffmpeg.exe -y  -i {file_name}  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 {self.pcm_path}"os.system(change_file_format_command)# 百度AI接口最长只接受60秒的音视,所以需要切割# 此函数用于将.\speech-vad-demo\pcm\16k_1.pcm切割def

利用百度语音识别接口将语音转换成文字教程相关推荐

  1. python语音输入转化成文字_利用百度语音识别接口将语音转换成文字教程

    importbase64importjsonimportosimporttimeimportshutilimportrequestsclassBaiduVoiceToTxt():#初始化函数 def ...

  2. 利用python将长视频、长语音转换成文字教程 ,非常好用

    原本自己想弄一个语音转文本的,但是发现很多博客都说的不是自己想要的,原因有以下几点:1.因为百度接口支持的语音是pcm格式,而自己的是.mp3格式的文件. 2.百度只支持60s内的文件格式,而自己想要 ...

  3. 使用百度AI将语音转换成文字(JAVA)

    使用百度AI将语音转换成文字--JAVA 1.安装ffmpeg 2.使用百度AI翻译语音 1.引入dependency 2.将音频转换成文字并写入到文件中. **遇到的问题:** 4.因为需要切割长语 ...

  4. 语音识别(Speech recognition)的核心内容是将语音转换成文字

    https://www.bilibili.com/video/av16198207?from=search&seid=16570566229872205850 语音识别,又称为自动语音识别(A ...

  5. 实用系列1 —— 视频中的语音转换成文字

    实用系列1 -- 视频中的语音转换成文字python版本 背景说明 疫情原因,家里的老师亲戚需要对着电脑上网课,晋升为十八线小主播- 备课的内容来源都是当地教育局的公开课,为了学习公开课的上课方法,只 ...

  6. 语音转换成文字要怎么做呢?

    通常说,当我们不想打字时,我们会向他人发送语音.但是要把自己说过的一段话转换成文字,怎么做呢?这里小编将和你分享一个快速将语音识别转文字的技巧.无论是写文章,还是做会议记录,都可以整理笔记,做好日常笔 ...

  7. 教你如何将语音转换成文字

    语音识别是一种将人的语音转换为文本的的技术.语音识别可以直接把你说的话直接转换成文字, 使用起来也比较方便,不用动手,就可以输入你想要的文字.下面小编就来教大家如何将语音转换成文字. 工具:迅捷PDF ...

  8. 如何将语音转换成文字?转换方法介绍

    语音转换成文字方简单,只需要借助到转换工具就可以了,转换工具有着强大的转换功能,可以轻松实现你想要的转换,不知道转换方法的话,来看看下面的介绍你就会知道! 转换的具体方法如下: 1:打开语音转文字转换 ...

  9. 如何把视频语音转换成文字呢?

    视频语音转换成文字操作实际上是将视频中的音频语言转换成文本形式.如果正常要实现这种操作,我们一般需要先了解视频在讲解什么,然后再手动整理内容.但其实这个操作是需要时间的.而现在我们只需要一些转换工具就 ...

最新文章

  1. 物联网行业网络解决方案_2021物联网趋势:有望从物联网传感器网络中受益的5大行业...
  2. 基于服务器端保存用户的查询参数
  3. java层 android_Android开发实践:Java层与Jni层的数组传递
  4. Git报错解决:OpenSSL SSL_read: Connection was reset, errno 10054 错误解决
  5. 30. 确保目标空间足够大
  6. matlab官方中文网站
  7. 123457123457#0#----com.MC.konglongtianse222----前拼后广--恐龙填色mc-mc1111
  8. 2课:单片机引脚介绍
  9. 世纪佳缘php查学历吗,爬了世纪佳缘后发现了一个秘密,世纪佳缘找对象靠谱吗?...
  10. SpringBoot 获取 Yml 配置 信息 Environment
  11. VUE3使用keep-alive页面切换时报错:parentComponent.ctx.deactivate is not a function
  12. mysql 父子结构排序_mysql 父子结构排序_MySQL
  13. 【css】表格单元格td元素设置最大高度
  14. 黑苹果(Hackintosh)简单步骤教程
  15. Facebook借足球影响力推广直播:与俱乐部和球星合作分成
  16. 50个最有价值的数据可视化图表(推荐收藏)
  17. 原来RA是Router Advertisement的意思
  18. python turtle 库绘制简单魔法阵
  19. 深入浅出DDR系列(一)—— DDR原理
  20. 关于Wii的软件制作

热门文章

  1. React-Fragments
  2. 计算机怎么游戏教学,物质世界新手全面教学图文攻略 Outward游戏怎么玩?
  3. c语言智能车跑道检测程序,基于单片机的智能循迹避障小车(附电路原理图,程序清单)...
  4. 三菱FX5U与西门子S7-1200通过简单CPU通信设置实现以太网通信功能的具体方法步骤
  5. 【WEB漏洞】【低级】【部分账号信息泄露】总结
  6. 【vue-seamless-scroll bug问题记录以及解决】
  7. 【Python自查手册】之存储文件csvopenpyxl模块的用法
  8. VSCode登录Microsoft账户无效
  9. 【嗜血GO笔记】操作符及一些写法汇总
  10. Android-中国象棋-实时识别-实时AI