Git Product home page Git Product logo

anto's Introduction

ANTO-不专业字幕翻译的Windows桌面应用

作为一名临时搬运工,搞个字幕翻译工具,一点也不过分~是吧

写在前面

我是21年底才接触到油管搬运。不知出于什么原因,看了UP主@神经元猫搬运翻译的Cherno C++ 中文,感觉TheCherno挺有趣的,就萌生了搬运他的OpenGL教程,然后就是游戏引擎等。刚开始,特别费人,使用剪映的智能字幕进行音频识别并导出SRT字幕。

由于分段很乱,需要人工调整,然后挨个翻译。遇到陌生单词,还要去查一下。但是吧,后来觉得效率低得令人发指。既然有智能字幕,那么就有智能翻译,然后,就了解到了各种机器翻译。看着每月的免费额度,完全可以操作一下。那么,就开始着手这款应用的研发。并不复杂,初版几天就搞定了,主要还是对框架不太熟悉,而且有些场景不太了解,大多都是后面慢慢完善。

用,是能用了,但是,应该还有很大提升的空间。比如,有朋友提到的AI翻译,以及通知和托盘等。

加油~

框架目录

主要采用lxn/walk框架实现的,受限于框架仅支持Windows,最近试过用fyne重写,其实主要功能都写完了,但是,有很多小问题,还是弃了。以下是项目的整体目录(可能有变动):

├─.idea 	# Goland的项目记录,已忽略                     
├─.run  	# Goland的Run/Debug配置,其中包含一个运行的配置,我日常开发使用的
├─bin   	# 编译目录,已忽略                     
│  ├─assets	# 依赖的静态资源目录
│  └─logs	# 运行日志目录
├─bootstrap	# 一些初始化安装实现目录
├─cfg		# 配置目录,采用spf13/viper加载yml配置文件(默认是可执行文件同级目录下的cfg.yml)
├─common 	# 公共目录,现在放了一些数据结构定义
├─cron		# 内置任务
│  ├─detector 	# SRT检测
│  ├─reader 	# SRT读取
│  ├─translate 	# SRT翻译
│  └─writer 	# SRT写入
├─dependency 	# 依赖目录
│  ├─repository # 服务管理仓库
│  └─service 	# 依赖的服务
│      └─translator 			# 翻译服务
│          ├─ali_cloud_mt    	# 阿里云翻译
│          ├─baidu 				# 百度翻译
│          ├─caiyunai       	# 彩云小译 
│          ├─deepl 				# DeepL翻译
│          ├─huawei_cloud_nlp 	# 华为云翻译
│          ├─ling_va 			# LingVA翻译
│          ├─niutrans 			# 小牛翻译
│          ├─openapi_youdao 	# 有道智云翻译
│          ├─tencent_cloud_mt 	# 腾讯云翻译
│          └─youdao 			# 有道翻译
├─lib 		# 核心库
│  ├─log 	# 日志类实现, 二次包装zap
│  ├─nohup 	# 常驻进程模拟
│  ├─srt 	# SRT解析等
│  └─util 	# 工具函数
└─platform 		# 平台
    └─win 		# windows
        ├─page 	# 页面
        └─ui 	# UI包装
            ├─handle 	# 操作包装
            ├─msg 		# 弹窗
            └─pack 		# 组件包装

任务列表

  • 集成lxn/walk桌面GUI库(才把fyne清理了,那个编译运行太慢了,而且Win下,依赖环境有点。。。),这个要抽一波,不然用起来,小难受;
  • 实现静态界面(还是不大会多窗口模式,估计会照旧采用Widget的显示来模拟多页面,也可能还是单页);
    • 常用配置本地缓存(文件),就我最近的使用体验来看,不想再输密钥了;
    • 增加全量和增量翻译模式区分,防止重复翻译,浪费资源;
    • 增加批量翻译模式(挂机,一直跑),那个列表有点小烦,后面没有单独放置操作的列;
  • 实现srt文件解析和压缩(这块好搞,我感觉都写了好几次了);
  • 接入上游翻译服务(如果有什么好的免费的服务,也可以给我说);

应用预览

应用启动

设置界面

anto's People

Contributors

speauty avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

anto's Issues

百度翻译 api 无法使用

投递完以后就不动了,然后 cpu占用一直 20%-30%,关闭才好。彩云是可用的。

api测试过是对的。

【建议】网易见外接口

我见过翻译效果最好的是 网易见外,其它的不管是 AI,百度,微软,deeplx,都有浓浓的机器味
不过网易见外并没有放出接口

一个错误反馈+一个建议

  1. 使用腾讯云翻译时显示“当前每秒请求‘6’次,超过每秒频率上限‘5’ ”
  2. 对不同服务商增加后缀区分

腾讯云设置问题

3.4.2版本设置腾讯云密钥并重启后腾讯云的设置仍为空。打开cfg.yml发现tencent_cloud_mt下为初始配置,而tencent_mt里是输入的密钥。将tencent_mt里的内容复制到tencent_cloud_mt后重新打开应用,即可正确显示腾讯云

翻译几行后停止了?

当前时间: 20230406151411, 来源: SRT翻译程序, 信息: [字幕文件(C:\Users\Administrator\Desktop\privsub\20170116カンパチの簡単な捌mp4-subs.srt)翻译完成, 引擎: Lingva, 耗时(s): 1]
当前时间: 20230406151410, 来源: SRT翻译程序, 信息: [翻译异常, 引擎: Lingva, 解析报文出现异常, 错误: invalid character 'B' looking for beginning of value]
当前时间: 20230406151410, 来源: SRT翻译程序, 信息: [翻译异常, 引擎: Lingva, 解析报文出现异常, 错误: invalid character 'B' looking for beginning of value]
当前时间: 20230406151410, 来源: SRT翻译程序, 信息: [翻译异常, 引擎: Lingva, 解析报文出现异常, 错误: invalid character 'B' looking for beginning of value]
当前时间: 20230406151410, 来源: SRT检测程序, 信息: [检测到文件: C:\Users\Administrator\Desktop\privsub\20170116カンパチの簡単な捌mp4-subs.srt, 耗时: 0]

使用百度翻译api的时候 内容没有被完全翻译

我把日语的srt放到软件里处理
然后完成出来后的中文srt里面翻译到了200行之后就断了
下面是报错

时间: 2024-03-03 20:06:15, 来源: SRT翻译程序, 信息: 翻译异常, 引擎: 百度翻译, 翻译异常, 代码: 54003, 错误: Invalid Access Limit

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.