Skip to content

cc字幕工具: 从视频生成字幕,机翻字幕,bcc 转srt,合并字幕

License

Notifications You must be signed in to change notification settings

JerryZhou343/cctool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cctool

字幕工具:

  1. 翻译srt文件
  2. 合并srt文件
  3. 从视频生成srt文件
  4. bcc 文件转srt文件

依赖配置文件, 需要和程序放在同一目录

翻译功能

适用场景: 已经有了源语言字幕文件,但是没有目标语言字幕,这个时候可以使用翻译功能

设计

调用api 翻译英文到中文; 当前集成一下翻译工具:

  1. 百度翻译(需要注册百度开发者,获得对应的appid和key; 成为高级开发者可以获得每秒10次的并发能力)

  2. google 翻译

  3. 腾讯翻译(腾讯翻译需要填qtv 和 qtk 参数,如何获得请看faq)

使用

cctool translate -h
翻译字幕

Usage:
   translate [flags]

Flags:
  -f, --from string      源语言 (default "en")
  -h, --help             help for translate
  -m, --merge            双语字幕
  -s, --source strings   源文件
  -t, --to string        目标语言 (default "zh")

语言参数:

en : 英语

zh : 简体中文

使用示例

# 单个文件
cctool translate -f en -t zh -m -s e2Engish.srt

# 批量多个文件
cctool translate -s="1.en.srt,2.en.srt" -f en -t zh -m

字幕合并

适用场景,有两个字幕文件文件,需要合并为一个字幕文件方便校对

策略说明

  1. sequence 按照序号一一对应合并
  2. timeline 按照时间轴区间合并

使用

cctool merge -h
合并字幕

Usage:
   merge [flags]

Flags:
  -d, --destination string   目标文件
  -h, --help                 help for merge
  -s, --source strings       源文件
      --strategy string      merge strategy: [seq:以第一个源文件的序号主,timeline: 以第一个源文件的时间轴为主] (default "seq")

字幕转换功能

当前支持bcc 字幕转换成srt 字幕

使用

cctool convert -h
转换字幕;bcc 转 srt

Usage:
   convert [flags]

Flags:
  -h, --help             help for convert
  -s, --source strings   源文件

语音识别字幕

设计

  1. 利用ffmpeg 抽取视频中的音频
  2. 使用阿里云oss 或者google store 存储抽取的音频
  3. 使用阿里云的语音识别服务 或者google speech识别获得结果
  4. 输出srt 字幕

使用

./cctool generate -h
生成字幕

Usage:
   generate [flags]

Flags:
  -c, --channel int      音频声道
  -h, --help             help for generate
  -s, --source strings   源文件

FAQ:

Q: 使用腾讯翻译的时候 如果获取qtk, qtv

A: 打开fanyi.qq.com;按F12 调出控制台;选择网络选项卡,清空请求列表;发起一次翻译请求;在网络请求列表中找到translate;选中,点击出现的header选项卡,下拉找到qtv,qtk值

示例图

Q: 没有使用全局代理的情况下如何让cctool 能够访问google

A: 设置环境变量 https_proxy=http://127.0.0.1:18080 端口根据使用者自己代理情况设置

Q: 阿里云和google 的识别有啥区别

A: 阿里云在识别英语的时候没有标点符号,没有手动断句;google在识别英文的时候有标点,会根据 , . 自动断句;识别制作英文字幕建议google

Q: google.json 是什么文件,怎么获得

A: google.json 是google的认证文件,通过google云的项目控制台下配置获得

Q: 如何获得人工支持

A: VX 联系我

vx

About

cc字幕工具: 从视频生成字幕,机翻字幕,bcc 转srt,合并字幕

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages