批量为本地视频生成字幕文件,并可将字幕文件翻译成其它语言

VideoSubtitleGenerator

批量为本地视频生成字幕文件,并可将字幕文件翻译成其它语言

本项目基于 macOS, node 环境运行,暂未兼容 windows 环境

🌐Github地址
https://github.com/buxuku/VideoSubtitleGenerator

初衷

自己有一大批外文视频,没有字幕,希望能够添加字幕文件,同时也能够将字幕文件翻译成中文, 同时希望能够通过批量处理的方式来减轻工作量。

类似需求,有一批厂商已经提供到了支持,比如 讯飞听见, 网易见外 等,但这些在线服务都涉及到视频的上传动作,效率相对比较低下。

希望能够找一个客户端工具,在本地来生成,试用了一些工具,依然不理想

  • Buzz 非 Store 版本没有对 apple silicon 做优化,字幕生成速度比较慢,也不支持翻译
  • MacWhisper 免费版本只支持单个生成,不支持批量,不支持翻译
  • WhisperScript 可以批量生成,但字幕文件需要手动一个个地保存,不支持翻译
  • memo.ac 做了 mac 下的性能优化,可以使用 GPU ,也支持翻译功能,非常棒的一款软件,但目前批量模式 bug 太多,无法正常使用

最后想了一下,本地语音转文字,通常的做法就是使用目前最强的 whisper 模型来生成。那我的需求就比较简单了:

  • 通过 ffmpeg 从视频文件中提取出音频文件
  • 通过 whisper 模型将音频生成原语言的字幕文件
  • 调用翻译 API, 将原语言的字幕文件翻译成目标语言的字幕文件

基于以上简单的思路和流程,就可以简单写一个小工具来批量处理本地的视频了。

💥特性

  • • 源语言字幕文件和目标语言字幕文件放在视频同目录下,方便播放时任意挂载字幕文件
  • • 批量处理目录下面的所有视频文件
  • • 支持火山引擎翻译
  • • 支持百度翻译
  • • 支持 deeplx 翻译 (批量翻译容易存在被限流的情况)
  • • 自定义字幕文件名,方便兼容不同的播放器挂载字幕识别
  • • 自定义翻译后的字幕文件内容,纯翻译结果,原字幕+翻译结果
  • • 项目集成 whisper.cpp, 它对 apple silicon 进行了优化,有较快的生成速度
  • • 项目集成了 fluent-ffmpeg, 无须安装 ffmpeg

最近更新

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

    2024-05-16 13:00:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-16 13:00:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-16 13:00:05       82 阅读
  4. Python语言-面向对象

    2024-05-16 13:00:05       91 阅读

热门阅读

  1. 循环、使用dict和set

    2024-05-16 13:00:05       34 阅读
  2. 使用 Gradle 自定义任务生成初始化 SQL 文件

    2024-05-16 13:00:05       37 阅读
  3. 数学建模(科普)

    2024-05-16 13:00:05       38 阅读
  4. IT行业的现状与未来:技术驱动下的新世界

    2024-05-16 13:00:05       39 阅读
  5. js 数组filter使用

    2024-05-16 13:00:05       33 阅读
  6. RIP、OSPF、BGP等协议及华为路由器配置总结

    2024-05-16 13:00:05       37 阅读
  7. 40-2 了解与安装堡垒机

    2024-05-16 13:00:05       33 阅读
  8. Leetcode 404:左叶子之和

    2024-05-16 13:00:05       35 阅读
  9. 力扣:131. 分割回文串

    2024-05-16 13:00:05       31 阅读
  10. 力扣 72. 编辑距离 python AC

    2024-05-16 13:00:05       33 阅读
  11. 课时126:awk实践_进阶知识_内置函数1

    2024-05-16 13:00:05       32 阅读