- 环境配置:
- 安装【Node.js/npm环境】
- 安装【剪映桌面端】
- 安装【FFmpeg】
-
把原视频命名为
src.mp4
如果不修改文件名,也可以修改最后的ffmpeg命令。 -
使用【剪映】生成字幕文件
在【剪映】里导入原视频,使用剪映自带功能,自动生成英语字幕(菜单/文本/识别字幕),然后退出剪映。
剪映的文件路径:
Win:${Users}\AppData\Local\JianyingPro\User Data\Projects\com.lveditor.draft
Mac:${Users}/Movies/JianyingPro/User Data/Projects/com.lveditor.draft
确保bin/config.js
里的config.jianyin
正确指向了剪映项目目录,程序会自动读取数据文件:draft_info.json
-
生成待翻译文件
translation.xlsx
①
执行extract命令获取待翻译文件translation.xlsx
,路径在配置config.translation
里,默认是"下载"目录。 -
获取翻译后的文件
translated.xlsx
②
用 Google Translate 对文字进行翻译。
打开 Google Translate,上传translated.xlsx
,把翻译后的Excel下载下来,重命名为translated.xlsx
。
确保文件目录和config.translated
的一致,默认是"下载"目录。 -
生成字幕文件
subtitle.srt
③
执行srt命令,生成subtitle.srt
,路径在配置config.translation
里,默认是"下载"目录。 -
使用
FFmpeg
合成字幕,压缩视频。src.mp4
是源文件,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
。
注:之所以选择内嵌字幕,是因为这样的格式兼容性好,可以在大多数浏览器内直接播放。