英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)

这篇具有很好参考价值的文章主要介绍了英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一步:安装配置环境,这一步重要介绍安装的环境依赖,可以看完第二章再来看一遍

(1)Whisper环境配置

可以参考以下博客的内容讲显卡驱动,CUDA和cudnn的安装比较详细,我建议能用GPU加速就尽量使用,Whisper速度有点慢如何在你的电脑上完成whisper的简单部署_Wayne_WX的博客-CSDN博客 Windows使用whisper前需要进行的一些环境配置https://blog.csdn.net/m0_52156129/article/details/129263703

我的ffmpeg是使用conda安装的,命令如下(注意:需要安装到自己创建的conda环境):

conda install -c conda-forge ffmpeg-python

激活创建的conda环境,这里我的环境名是whisper

conda activate whisper

检查ffmpeg是否安装成功 

ffmpeg -version

显示结果如下表明安装成功,ffmpeg非常重要,在我们的处理后续也有应用 

英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)

 (2)安装以下依赖

  可以将文件夹里mp4格式视频批量转换成mp3,多次测试发现Whisper处理mp3速度快些,缺啥安装啥,慢地话可以换个国内源

from moviepy.editor import *
import os
import filetype
import argparse

(3)Google翻译环境依赖

两种方法,可以使用googletrans

pip install googletrans==4.0.0rc1

或者requests

pip install requests

第二步:编写脚本主要有两步

(1)批量将MP4格式视频转换成MP3

这里其实可以使用ffmpeg来做,我一开始用的moviety库,后来发现ffmpeg也可以

参考了这里,代码很详细写地很好Python3 批量提取视频中的音频_python提取视频中的音频_流星蝴蝶没有剑的博客-CSDN博客Python3 批量提取 视频中的音频https://blog.csdn.net/qq_44009311/article/details/124818112

 转换好的Mp3文件便可以进行语音识别提取了

(2)使用Whisper进行语音转文字并制作srt文件

首先你可以在MP3文件所在的文件夹内打开cmd,conda激活环境,使用

whisper 文件名.mp3

也可以生成字幕文件,如果你只是要求英文字幕的话可以到此为止了,Whisper不支持翻译成中文,只支持转录源语言或者将源语言翻译成英文,如果获取纯中文字幕或者中英双语字幕,你需要继续看下去

1.了解Whisper的transcribe和Srt文件的格式

回想openai给出的官方python测试代码

import whisper

model = whisper.load_model("base")
result = model.transcribe("audio.mp3")
print(result["text"])

result具有众多属性,包括识别的文本,以及文本的开始时间start和结束时间end,其他的对于我们本次任务没有帮助故不介绍,那么我们这样就可以输出识别的每一句话的开始和结束时间以及内容

import whisper
model = whisper.load_model("base")
result = model.transcribe("13.mp3")
for segment in result["segments"]:
    print(segment['start'])
    print(segment['text'])
    print(segment['end'])

 这样,输出结果如上图所示

英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)

另外需要了解srt文件的格式

第一行:编号(从0开始)

第二行:起始时间,比我们常见的时分秒HH:MM:SS又多了一个逗号和三位数的毫秒单位

往后都是字幕部分,但是字幕到下一条字幕之间一定有空格。

英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)

 两者对比可知,我们可以通过Whisper获取字幕的文字内容以及起始时间,核心时起始时间格式的转换。然后可以使用f.write()的方法逐行写入srt文件即可

2.转换时间格式

Whisper输出的时间格式是带小数点的,我们可以这样来想:

第一步:使用字符串分割以小数点为分界点,小数点左边是秒,秒可以参考这里,转换成时分秒的格式

Python时间转换:X秒 --> 时:分:秒_python 时分秒_zhu6201976的博客-CSDN博客Python 秒转时分秒 思路实现https://blog.csdn.net/zhu6201976/article/details/126750272

第二步:小数点右边的不足一秒的部分换成三位数毫秒

第三步:然后二者再进行字符串相加即可

3.调用谷歌翻译的两种方法

参考这里即可,使用的时候要科学上网3种谷歌多语言翻译接口的调用方法(Python)_谷歌翻译接口_DooDoo~的博客-CSDN博客在日常的生活和工作中,我们经常会需要使用到翻译工具。在诸多翻译工具中,我个人更青睐谷歌翻译,因此在这里整理通过Python调用谷歌翻译接口的3种方式。https://blog.csdn.net/qq_40039731/article/details/126239369

有一个问题,多次尝试发现,对于长视频,翻译字幕需要调用google翻译非常多次,服务器会不稳定导致报错,建议使用ffmpeg或者SolveigMM Video Splitter软件裁剪,ffmpeg慢些但是方便,个人推荐

英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)

进入代裁剪视频文件夹内激活whisper环境,输入如下命令即可裁剪视频,-ss对应的是起始时间 

有时间的可以看下这个做下最基本的入门:

FFmpeg 最最强大的视频工具 (转码/压缩/剪辑/滤镜/水印/录屏/Gif/...)_哔哩哔哩_bilibili

有人说可以长视频转换成mp3使用ffmpeg裁剪,分别得到srt文件再合成一个,但是这样时间格式比较繁琐,建议长视频直接裁剪几个部分即可

4.写入文件存储以及一个批处理思路

批处理文件夹内众多mp3文件可以使用,前提是你的mp3都已经不太长,长的mp3可能在谷歌翻译时报错,导致循环无法继续执行

    #自己的Mp3文件所在的文件夹路径
    inpath = r'E:\MP3'
    #读取所有的mp3格式文件路径
    mp3folder = glob.glob(os.path.join(inpath, "*.mp3"))
    for mp3 in mp3folder:
        excute('small',mp3)

(3)字幕与视频合成或使用播放器打开外挂srt文件(推荐)

可以使用Potplayer播放器,我都放在了下载链接里,安装即可可以打开srt文件并方便地调整字幕的颜色、字体大小,位置等,到这里我们的工作就完成啦!

英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)

 注:下载内容包括

(1)MP4文件批量转换MP3文件代码

(2)读入MP3文件获取SRT文件的代码(两个分别对应两种调用谷歌翻译的方法)

(3)视频剪辑SolveigMM Video Splitter软件和Potplayer播放器文章来源地址https://www.toymoban.com/news/detail-486699.html

到了这里,关于英文视频添加中英双语字幕(基于Whisper语音识别和Google翻译)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于whisper和whisperx的语音视频和字幕对齐

    创建py310虚拟环境,需要安装Anaconda的Python环境。 Python初学者在不同系统上安装Python的保姆级指引 Win10+Python3.9+GPU版pytorch环境搭建最简流程 Python虚拟环境的安装和使用 还需要提前安装FFmpeg用于音频操作,并添加到环境变量中。 创建一个名称为 whisper 的虚拟环境。 激活虚拟环

    2024年02月16日
    浏览(39)
  • 基于whisper模型的在线添加视频字幕网站(持续更新)

    Whisper 是一个自动语音识别(ASR,Automatic Speech Recognition)系统,OpenAI 通过从网络上收集了 68 万小时的多语言(98 种语言)和多任务(multitask)监督数据对 Whisper 进行了训练。OpenAI 认为使用这样一个庞大而多样的数据集,可以提高对口音、背景噪音和技术术语的识别能力。除

    2024年02月03日
    浏览(33)
  • 基于Whisper语音识别的实时视频字幕生成 (一): 流式显示视频帧和音频帧

    Whistream(微流)是基于Whisper语音识别的的在线字幕生成工具,支持rtsp/rtmp/mp4等视频流在线语音识别 whishow(微秀)是python实现的在线音视频流播放器,支持rtsp/rtmp/mp4等流式输入,也是whistream的前端。python实现原理如下: (1) SPROCESS.run() 的三个子线程负责:缓存流数据,处理音

    2024年04月13日
    浏览(42)
  • 持续进化,快速转录,Faster-Whisper对视频进行双语字幕转录实践(Python3.10)

    Faster-Whisper是Whisper开源后的第三方进化版本,它对原始的 Whisper 模型结构进行了改进和优化。这包括减少模型的层数、减少参数量、简化模型结构等,从而减少了计算量和内存消耗,提高了推理速度,与此同时,Faster-Whisper也改进了推理算法、优化计算过程、减少冗余计算等

    2024年02月06日
    浏览(67)
  • 《AI上字幕》基于openAI研发的whisper模型,语音(视频)一键转文本/字幕/带时间轴/支持多语言/自带翻译《桌面版教程》

    OpenAI的chatGPT非常火爆,其实OpenAI旗下的另一个模型实力也十分强大,它就是开源免费的Whisper语音转文本模型,目前为止它是较为顶尖的语音转文本模型 当前github上也有许多出色的开发者根据此模型开发出桌面版语音转文字应用。较为出色的分别是Buzz和WhisperDesktop 支持将多种

    2023年04月19日
    浏览(43)
  • 下载YouTube中英文视频,使其在下载的视频中显示中文字幕

    一. 复制YouTube中视频链接,如下所示。 1.任选油管中某个视频 2.点击视频右下角分享,复制视频链接。 3.打开网站(https://yt5s.com)下载油管视频(下载的视频是无字幕的) 把链接复制到搜索框,然后点击Download Mp4,下载并保存。 5.下载该视频的SRT格式文件,打开网站(downsub.co

    2024年04月23日
    浏览(93)
  • Windows 下融合使用开源组件进行视频内容分析,shotcut ,autocut 剪辑 whisper智能化编辑双语字幕等

    下面以这个黄仁勋访谈视频为例简要介绍分析的步骤 https://youtu.be/lXLBTBBil2U https://github.com/openai/whisper 提升: 安装如果需要在conda 中使用 ffmpeg 的话,也是可以直接用 conda install ffmpeg https://github.com/openai/whisper/discussions/1172 We are thrilled to introduce Subper (https://subtitlewhisper.com), a f

    2024年04月09日
    浏览(39)
  • 【开源工具】使用Whisper提取视频、语音的字幕

    运行 WhisperDesktop.exe , 启动后加载模型“load model,please wait…”,等待其将模型加载到内存。 2.1 下载模型 刚开始是没有模型的,需要到Hugging Face 2 的仓库里面下载模型并配置相关路径 2.1.1 进入Hugging Face 2 的仓库 点击 ggerganov/whisper.cpp 进入Hugging Face仓库 2.1.2 选择需要下载的模型

    2024年02月09日
    浏览(32)
  • 【开源工具】使用Whisper将提取视频、语音的字幕

    运行 WhisperDesktop.exe , 启动后加载模型“load model,please wait…”,等待其将模型加载到内存。 2.1 下载模型 刚开始是没有模型的,需要到Hugging Face 2 的仓库里面下载模型并配置相关路径 2.1.1 进入Hugging Face 2 的仓库 点击 ggerganov/whisper.cpp 进入Hugging Face仓库 2.1.2 选择需要下载的模型

    2024年02月08日
    浏览(36)
  • whisper实践--基于whisper+pyqt5开发的语音识别翻译生成字幕工具

    大家新年快乐,事业生活蒸蒸日上,解封的第一个年,想必大家都回家过年,好好陪陪家人了吧,这篇文章也是我在老家码的,还记得上篇我带大家基本了解了whisper,相信大家对whisper是什么,怎么安装whisper,以及使用都有了一个认识,这次作为新年第一篇文章,我将介绍一

    2024年02月01日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包