- 环境配置:
- 安装【Node.js/npm环境】
- 安装【剪映桌面端】
- 安装【FFmpeg】
- 把原视频命名为
src.mp4
-
使用【剪映】生成字幕文件
src.srt
在【剪映】里导入原视频,使用剪映自带功能,自动生成英语字幕(菜单/文本/识别字幕),然后导出字幕文件,命名为src.srt
。
最新版本的剪映已经把字幕识别功能改为每月限免使用5次,可能不久的将来就要另寻他路了。剪映也已经能够直接对识别的字幕文件进行翻译,但这是VIP功能,使用后需成为VIP才能导出。 -
使用本工具生成待翻译文件
translation.xlsx
①
执行extract命令获取待翻译文件translation.xlsx
,路径在配置config.translation
里,默认是"下载"目录。 -
使用【Google Translate】获取翻译后的文件
translated.xlsx
②
用【Google Translate】对文字进行翻译。
打开 Google Translate,上传translation.xlsx
,把翻译后的Excel下载下来,命名为translated.xlsx
。
确保文件目录和config.translated
的一致,默认是"下载"目录。 -
使用本工具生成字幕文件
subtitle.srt
③
执行srt命令,生成subtitle.srt
,路径在配置config.translation
里,默认是"下载"目录。 -
使用
FFmpeg
合成字幕,压缩视频。生成整合字幕的最终视频dist.mp4
。 执行ffmpeg命令,生成dist.mp4
对应的命令行:
ffmpeg -y -i src.mp4 -lavfi "subtitles=subtitle.srt" -c:v h264 -qp 25 dist.mp4
npm环境npm run extract
(或者Node环境node extract.js
), 字幕文件会提取到待翻译文件translation.xlsx
。
npm环境npm run srt
(或者Node环境node srt.js
), 生成字幕文件subtitle.srt
。
npm环境npm run ffmpeg
(或者Node环境node ffmpeg.js
), 生成合成字幕后的视频文件dist.mp4
。
注:之所以选择内嵌字幕,是因为这样的格式兼容性好,可以在大多数浏览器内直接播放。