视频翻译保留原音色pyvideotrans+clone-voice

剪映的视频翻译时长限制5分钟以内,需要积分2700首次有减免大概21.6元(1秒=9积分/1元=100积分)

img

视频翻译配音工具pyvideotrans

将视频从一种语言翻译为另一种语言,并添加配音

打包链接:夸克网盘分享

升级补丁:解压直接覆盖之前版本

声音克隆工具

clone-voice声音克隆工具开源项目地址

打包下载:夸克网盘分享

将压缩包内的文件夹复制到 tts 文件夹内,解压后该tts文件夹内会新增3个文件夹,分别是

Bash tts_models--multilingual--multi-dataset--xtts_v2 voice_conversion_models--multilingual--vctk--freevc24 wavlm

设置原音色克隆API

img

clone-voice地址:http://127.0.0.1:9988/

img

建议配置:

img

01、文字识别:

视频翻译配音pyVideoTrans | 视频翻译配音pyVideoTrans

01-1faster 和 openai 和 GoogleSpeech 模式的区别

这3个模式都是用于将视频中的人类说话声识别为字幕。

• openai-whisper更稳定、对环境要求更低使用简单,但速度慢消耗GPU显存多。

• faster-whisper速度快、消耗GPU更少,但安装麻烦,除了cuda还需要安装cudnn cublasxx.dll。

• GoogleSpeech 模式使用google的免费识别接口进行语音识别转为字幕,无需本地模型,但需要填写网络代理

当然这一切的前提是拥有英伟达显卡,如果计算机压根没有英伟达显卡,或者有,但不想或不会安装cuda,那么faster和openai两者使用任意一个都可以,因为不使用cuda加速的情况下,仅在cpu上运算,二者对环境没啥要求,下载即用,速度也都是一样的慢。

GoogleSpeech 模式免费使用,但效果不佳,并且无法区分标点符号,在要求不高并且有代理的情况下可以使用

01-2模型选择:

模型下载:夸克网盘分享

从 base模型、small模型、medium模型到large-v3模型,识别精度越来越好,但消耗计算机资源也越来越多,如果你的计算机拥有性能较好的英伟达显卡,并且显存大于等于8G,同时配置好了CUDA和cuDNN环境,可以尝试使用 large-v3 模型,将能显著提高文字字幕识别准确度。

如果视频中有较多的背景音乐或背景噪声,肯定会干扰文字识别效果。可以尝试选中“保留背景音”,会在识别之前先将背景声音分离出来,只使用里面人类说话声去识别,效果会好很多。

02、文字翻译

首选 ChatGPT/DeepL, 再次Google,再次 Microsoft,最后腾讯翻译百度翻译。

当然也可以使用DeepLx白嫖DeepL,但不稳定,容易被封IP。

视频翻译配音pyVideoTrans | 视频翻译配音pyVideoTrans

同样,在翻译完成后,也会出现暂停按钮,点击暂停,右侧字幕区可手动核对修改翻译结果

为何会出现声音、字幕、画面不同步

在不同种类的语言互相翻译后,句子长度是会变化的,发音时长一般也是会变化的,比如从中文翻译为英文,句子长短肯定有所不同,而读出这句中文所用时长和读出这句英文所用时长,一般也是不同的。

中:有多远滚多远

英:Get out of here as far as you can!

中:滚远点

日:ここから出て行け。

原始视频中文发音用时2s,翻译为英文并配音后,时长可能是4s,这必然导致不同步。

如何让它们同步,不在意效果,只要同步

建议不勾选“配音自动加速”,勾选“视频自动加速”,通过后期处理变速

像上面所说,翻译前时长2s,翻译后时长4s,如果仅仅只需要它们能同步即可,不在乎语速快慢或视频画面快慢,可以直接让音频加速2倍,4s的时长就能缩短为2s,自然实现了同步对齐。或让视频慢放,延长原2s片段到4s,也可实现对齐。

音频加速实现对齐具体操作方式:

  1. 软件界面中选择“自动音频加速” ,取消“视频自动慢速”

img

  1. videotrans/set.ini 中,设置audio_rate=100

即可实现同步,但弊端显而易见,语速忽快忽慢。

视频慢放实现对齐操作:

  1. 取消软件界面中的“自动音频加速”,选中自动视频慢速

  2. videotrans/set.ini中,设置为video_rate=50

这样也可实现对齐,语速保持不变,视频慢放,但同样视频变的忽快忽慢。

如果你只是想要单纯的对齐,不在意效果,可以采取这两种方式。

更好的可接受的同步方法

很显然上面的同步方式没有实用性,音频太快或视频太慢都难以接受,体验太差。为了更好的效果,可以同时启用 “自动音频加速”、“语音前后扩展”、“自动视频慢速”,这三项内容。

具体操作:

  1. 软件界面中选中“自动音频加速”、“语音前后扩展”,同时设定一个较小的总体加速值,比如 10%

img

  1. videotrans/set.ini中通过变量audio_rate为音频加速设置一个最大值,防止加速太快,默认是1.8,audio_rate=1.8,即最大语速加速到正常的1.8倍,你可以手动修改为2或1.5等大于1的数值。

  2. videotrans/set.ini中通过变量video_rate为视频慢速设置一个最大值,防止慢放太慢,默认是20,video_rate=20, 即慢放到正常的0.05倍。你可以改为 2或5等大于1的数值。

  3. 在上述1-3的操作后,仍然可能不对齐,因为限定了最大值,当达到最大值还未对齐,就会放弃而直接后延,那么可以继续通过将变量 remove_silence=true设为 true,变量remove_srt_silence=false改为 true,变量remove_white_ms=0设为 100 或 200,来进一步对齐。

remove_silence:涵义是去除配音的前后静音,以缩减配音时长remove_srt_silence :是当原始字幕时长大于当前配音时长时,移除多余的静音,比如原时长5s,配音后3s,是否移除这2s静音remove_white_ms:移除2条字幕间的静音长度ms,比如100ms,即如果两条字幕间的间隔大于100ms时,将移除100ms上述3个变量的共同作用都是去除静音片段,缩减配音时长,以避免配音后延,尽量使配音对齐。

在进行上述1-4步操作后,效果应该会好很多,当然这也会引入新的问题,例如: remove_srt_silence=true 和 remove_white_ms=100 的使用,使原本的字幕静音间隔缩短,后边语音的开始时刻提前,可能导致语音已经播放了,说话人还未张嘴。

有没有完美同步方法

除了人工参与手动处理,比如精简翻译、添加过渡画面等,目前尚未找到可以程序自动化实现的完美方法。

要同时保证在很长或很短的视频中,在任意语言翻译配音中,通过程序自动化实现 “音频加速范围可接受”、“视频慢速范围可接受”、“张嘴闭嘴时刻和语音起始时刻吻合” 这几个目标,目前看来似乎是个不可能完成的任务。除了人工参与调整,并无完美方法。

相关链接:https://pyvideotrans.com/guide.htmlhttps://github.com/jianchang512/pyvideotranshttps://github.com/jianchang512/clone-voice

相关推荐

  1. OpenAI 生成视频模型 Sora 论文翻译

    2024-07-21 18:30:02       43 阅读
  2. bgzip解压.gz文件并保留文件

    2024-07-21 18:30:02       26 阅读
  3. LeetCode 7题:整数翻转创)

    2024-07-21 18:30:02       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-21 18:30:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-21 18:30:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-21 18:30:02       45 阅读
  4. Python语言-面向对象

    2024-07-21 18:30:02       55 阅读

热门阅读

  1. 前端面试 vue 接口权限控制

    2024-07-21 18:30:02       21 阅读
  2. Leetcode热题100 Day3

    2024-07-21 18:30:02       13 阅读
  3. SQL Server查询计划阅读及分析

    2024-07-21 18:30:02       15 阅读
  4. 【整理了一些关于使用swoole使用的解决方案】

    2024-07-21 18:30:02       14 阅读
  5. Vue中如何封装接口

    2024-07-21 18:30:02       18 阅读
  6. happens-before

    2024-07-21 18:30:02       14 阅读
  7. 如何实现宝塔面板免手机号登录?

    2024-07-21 18:30:02       16 阅读
  8. 自动化炒股:券商交易接口API调用方法

    2024-07-21 18:30:02       18 阅读
  9. Redis的过期删除策略与内存淘汰机制

    2024-07-21 18:30:02       20 阅读