Python语音转文字、音频切割、语音识别

简介: 不知道你有没有录过自我介绍的视频,尤其是那种加上PPT播放的长时间视频可能因为说错一句话就得重来,又或者因为思考而暂停时间太久又得重来,以至于弄了两个小时才做好五分钟的视频


不知道你有没有录过自我介绍的视频,尤其是那种加上PPT播放的长时间视频

可能因为说错一句话就得重来,又或者因为思考而暂停时间太久又得重来,以至于弄了两个小时才做好五分钟的视频

所以就像为了答辩一样,为了让演讲流利不卡壳一遍过,不停的熟读稿子,又或者提前花费大量时间把稿子写好,在录屏的时候对着读

image.png

但是光写稿子也要花费了大量的时间啊

所以我想到的方法就是先对着照PPT说一遍并录下来,再将用代码自动将音频自动提取出来转成文字,然后第二遍正式录制视频的时候看着生成的讲稿就不用因为不熟练而卡壳,同时也省去了一个个码字的时间消耗

所以为了更好的去录制视频,这里将上述过程全部用代码流程化分享给大家

   视频提取音频

   音频频率转化、音频切割

   音频转成文字

1视频提取音频

如果你练习时是录的视频,那需要将视频里的语音提取出来,方便后期操作

当然这个过程目前在各个视频剪辑软件里都可以一键分割,例如剪映、必剪、Pr等等

但是当任务量增加的时候,操作就显得非常浪费时间,而用Python的话3行代码就可以提取出来,就算任务量增加最多再加个循环即可

代码如下

from moviepy.editor import AudioFileClip
# 导入视频
my_audio_clip = AudioFileClip("一行玩Python/1012 视频转文字/11.mp4")
# 提取音频并保存
my_audio_clip.write_audiofile("一行玩Python/1012 视频转文字/11.wav")

2音频转文字

提取音频之后就要把音频转成文字了,目前市面上有很多方式都可以快速的将视频里的音频内容转成文字

   科大讯飞、知意等付费平台

   剪映、Pr等剪辑如案件生成字幕

   百度云、腾讯云等国内接口

   GOogle、IBM、Bing等国外接口

   自己造轮子,语音识别训练

   自己一边听一边打字

虽然说有这么多方法可以去实现这个需求,但任务量增长后,想不花钱,又想不花时间造轮子,最好的办法就是用现成的接口

百度接口使用

申请百度接口

如果想用百度接口来批量处理,需要

百度语音API地址:https://cloud.baidu.com/doc/SPEECH/index.html

from aip import AipSpeech
""" 你的 APPID AK SK """
APP_ID = 'xxx'
API_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxx'
SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxx'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
# 读取文件
def get_file_content(file_path):
    with open(file_path, 'rb') as fp:
        return fp.read()
# 识别本地文件
result = client.asr(get_file_content('音频.wav' % i), 'wav', 16000, {
    'dev_pid': 1537  # 默认1537(普通话 输入法模型),dev_pid参数见本节开头的表格
})
print(result['result'])

如果你恰巧是用mac录的音频,那就得对音频进行降频处理

因为百度接口只能识别16 kHz的音频,而mac录的是48 kHz的音频,当然用ffmpeg重采样一下就可以

import ffmpeg
ffmpeg.input('输入音频.wav').output('输出音频.wav', ar=16000).run()

如果的你音频比较长,但是百度短语音识别接口支持1分钟以内的音频,这时候需要对音频进行分割处理

from pydub import AudioSegment
from pydub.utils import make_chunks
#blues文件30s
audio = AudioSegment.from_file("voice.wav", "wav")
size = 30000  #切割的毫秒数
chunks = make_chunks(audio, size)  ##将文件切割为59s一块
for i, chunk in enumerate(chunks):
    ##枚举,i是索引,chunk是切割好的文件
    chunk_name = "voice{0}.wav".format(i)
    print(chunk_name)
    ##保存文件
    chunk.export(chunk_name, format="wav")

然后重采样、剪切好的音频循环调用百度API接口就可以完成了~

exe

当然,也有前辈利用百度API直接写成了一个exe来使用

只需要在刚才百度智能云注册申请账号即可使用image.png

3最后

而现在互联网的大趋势是视频内容,了解视频相关的应用对于做内容也非常有帮助

之前有前辈分享过如果做短视频创作秘籍,就是把互联网上最火的内容下载个1、200个,然后拿来翻拍,毕竟火过的内容很大概率还会再火

当然有些人会向我过去一样质疑,这tm不是抄袭嘛,但是很多内容本来就可以同主题多形式的,例如别人拍的炒蛋炒饭,那你同样可以翻拍炒蛋炒饭,这有什么不好的吗

而批量下载抖音之前介绍过,现在又可以把这些的视频内容提取出来,下一步就可以进行批量翻拍,离实现一个小目标岂不是越来越近了

技术永不眠,下期见~


相关实践学习
一键创建和部署高分电影推荐语音技能
本场景使用天猫精灵技能应用平台提供的技能模板,在2-5分钟内,创建一个好玩的高分电影推荐技能,使用模板后无须代码开发,系统自动配置意图、实体等,新手0基础也可体验创建技能的乐趣。
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
1月前
|
数据挖掘 数据安全/隐私保护 开发者
使用Spire.PDF for Python插件从PDF文件提取文字和图片信息
使用Spire.PDF for Python插件从PDF文件提取文字和图片信息
75 0
|
6天前
|
机器学习/深度学习 自然语言处理 安全
《Python 语音转换简易速速上手小册》第9章 特定领域的语音处理(2024 最新版)
《Python 语音转换简易速速上手小册》第9章 特定领域的语音处理(2024 最新版)
44 0
|
6天前
|
机器学习/深度学习 自然语言处理 API
《Python 语音转换简易速速上手小册》第4章 语音到文本的转换(2024 最新版)(上)
《Python 语音转换简易速速上手小册》第4章 语音到文本的转换(2024 最新版)
20 0
|
6天前
|
机器学习/深度学习 数据采集 自然语言处理
《Python 语音转换简易速速上手小册》第3章 文本到语音的转换(2024 最新版)(上)
《Python 语音转换简易速速上手小册》第3章 文本到语音的转换(2024 最新版)
22 0
|
6天前
|
机器学习/深度学习 自然语言处理 语音技术
《Python 语音转换简易速速上手小册》第1章 Python语音处理概述(2024 最新版)(下)
《Python 语音转换简易速速上手小册》第1章 Python语音处理概述(2024 最新版)
28 0
|
9天前
|
缓存 算法 Python
python算法对音频信号处理Sonification :Gauss-Seidel迭代算法
python算法对音频信号处理Sonification :Gauss-Seidel迭代算法
|
1月前
|
文字识别 数据挖掘 网络安全
Python实现avif图片转jpg格式并识别图片中的文字
在做数据分析的时候有些数据是从图片上去获取的,这就需要去识别图片上的文字。Python有很多库可以很方便的实现OCR识别图片中的文字。这里介绍用EasyOCR库进行图片文字识别。easyocr是一个比较流行的库,支持超过80种语言,识别率高,速度也比较快。
29 2
|
1月前
|
机器学习/深度学习 搜索推荐 语音技术
个性化语音生成:五种基于Python的方法
个性化语音生成:五种基于Python的方法
41 0
|
1月前
|
机器学习/深度学习 文字识别 数据安全/隐私保护
Python实现从PDF和图片提取文字的方法总结
Python实现从PDF和图片提取文字的方法总结
54 0
|
1月前
|
自然语言处理 API 语音技术
Python加百度语音API实现文字转语音功能
Python加百度语音API实现文字转语音功能
52 0

热门文章

最新文章