VoxScripts 字幕机是一款专注于自动化视频转录文本、字幕制作、字幕翻译和配音的桌面软件。借助最新的 AI (人工智能)技术组合,可以低成本并高效地将任意语言的视频、音频转录并翻译为目标语言,适用于多种学习、工作、娱乐场景,如英语学习、外语慕课视频观看、外语生肉剧集综艺抢先观看、视频翻译搬运。软件的视频文本提取使用了本地化模型,带来一些优势,例如更好的个人媒体隐私保护、可以应用自有设备的高性能显卡。
目前软件已经实现从视频到声音提取(基于 FFMPEG ),声音转录为文本(基于 Whisper 本地化模型),文本翻译为多语言(基于 ChatGPT ),文本的语音合成(基于 Edge-TTS )全套流程的自动化和批量化。 以上过程的每一步其实都有多种备选,例如翻译可以用 DeepL 、谷歌翻译,语音合成可以用 MyShell 开源的 TTS 。软件开发的初衷就是将这些组合尽可能低成本的包装交付到用户,未来也会增加各个步骤的替代选项供用户选择。
下面是一些软件截图和导出视频效果图
从去年下半年就有的软件想法,从调研到开发到最小可用版本的完成都踩过坑,解决一些通用问题。 在语音转录为文本方面,希望使用本地模型处理,所以使用了 OpenAI 开源的 Whisper 模型。由于软件是基于 Electron 开发的,最早选型了 C++编写的 Whisper 实现whisper.cpp,通过 NAPI 包装成 NodeJS 原生模块,直到开发跑通了流程,才发现一些不满足需求的地方,特别是必要的单词级别时间戳生成,所以又转向到了 Python 版本的 Whisper 实现fast-whisper。在解决跨语言调用方面,是通过 Pyinstaller 打包 fast-whisper 为一个可执行文件,通过 NodeJS 子进程调用以及 stdout 传输数据。当然 whisper.cpp 还是存在一些优势的,特别是 Mac 平台可以基于 coreML 实现加速。 Whisper 的模型基本来自国外的 HuggingFace ,在国内下载是基本下载不了的,所以这里采用了两种策略,一种是对于小模型,提供了基于 Cloudflare 的 Worker 写了一些中转下载脚本,下载几百兆以内的模型速度还比较不错。另一种是对于大模型,自己下载存到网盘供用户下载,软件提供模型导入的功能。
转录文本的断句方面,Whisper 本身很容易在一句话中间断句,这个很容易造成后续翻译因上下文不连贯而词不达意。在这里软件改进了一下 Whisper 原始转录语句的断句,同时基于单词级别的时间戳信息,在调整断句后仍然可保持精准的字幕时间戳信息。这里的断句优化主要基于句子结束符合的识别,例如中英文句号。在中文语音场景下,Whisper 又很容易不附加句号到语句结尾,导致断句优化方案失效,这里软件的解决方案是利用 Whisper 的 initial prompt ,附加一句语句风格案例,如"从现在开始,我们将讲述一些具体的案例。"( Whisper 的 prompt 和 GPT 的 prompt 不是一个类型的东西,前者是固定提供案例让后续去模仿,而后者可以在 prompt 中语义化赋予指令)。
ChatGPT 翻译上,采用了多句翻译的模式,通过 prompt 让 GPT 返回每一句翻译的数组,该 prompt 也来自推特博主宝玉。优势是省 token 、效率更高,上下文联系多会提高翻译质量,缺点是有时会出现翻译句子合并,比如英文是两句,但是中文一句就翻译完了。对于该问题我已做了一些策略优化,首先是前面提到的断句优化,能够减少翻译合句的几率,另外在有合句的情况下,调整翻译字幕的时间戳覆盖原始多句的开始和结束时间,这样在字幕展示时,翻译语句能够持续到原始语句结束,最后提供选项调整一次翻译的连句数量,降低数量比如调整到 1 可以避免该问题。
语音合成方面,由于不同翻译的句子文本长短不一和 TTS 说话人的语速不一,造成合成句子的播放时长比原始句子的时间范围要长,这在做视频的语音替换时,由于视频的长度不变,合成语音容易出现溢出时间范围和不对齐的问题。这里我采用了两个策略,一是尽量复用原始语句之间的空白,可以作为翻译语句的预留空间,二是通过计算原始语句的长度以及新翻译语句播放长度,调整合适的加速播放速率,确保播放总时长不超过原始可用时间空间。
虽然是半路前端出身,但我个人是一个偏向全栈的工程师。软件本身、授权服务、官方网站均独立完成设计、前后端开发。在技术栈上前端使用了 React/NextJS ,样式使用 tailwindcss ,以及 copy paste 理念的 shadcn ui 的组件库,开发网站的效率可以说是非常之高。接口基本使用 golang 编写,风格统一、没有语法糖,跨平台编译独立二进制文件,都非常适合我的胃口。
如果您对 VoxScipts 软件有任何兴趣、意见,可以访问软件官方网站 https://voxscripts.com ,或查看软件文档 https://voxscripts.com/docs ,欢迎体验分享以及提出建议反馈。如果您对媒体转录、语音合成、字幕制作、FFMPEG 、独立开发等主题感兴趣,可以扫码加入交流群。
软件官方下载地址: https://voxscripts.com/download
惯例,软件激活码福利附上:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.