BingLingGroup / autosub

Command-line utility to transcribe/translate from video/audio/subtitles to subtitles
GNU General Public License v2.0
1.98k stars 244 forks source link

最近尝试过几次的翻译 但是翻译的结果偏差还是太大了 不是很理想 不是有什么办法改进吗 我取其中几段结果展示下 #141

Closed hermitcai closed 2 years ago

hermitcai commented 3 years ago

确保你已经看过 readme,也搜索并阅读过和你遇到的情况相关的问题。否则会被认为是重复的并被立刻关闭。 看过 描述问题 清晰并准确地描述问题。

复现问题 复现问题的步骤:

使用这个来显示你的命令行参数。
使用这个来显示你的输出。
使用这个来显示你的config文件。

期待的行为 清晰并准确地描述你本想做的事情。

截图 合适的话可以提供用以描述问题的截图。但是不推荐用截图来展示命令行输出,除非你真的认为这很有必要。 1 00:00:00,000 --> 00:00:04,720 是啊通过作为一种机制的话它避免写操作的阻塞就比如说现在

2 00:00:04,920 --> 00:00:06,630 你到碗里面写东西

3 00:00:07,320 --> 00:00:09,400 你到碗里面写东西的时候你

4 00:00:09,480 --> 00:00:11,630 你不能你不要别人去读

5 00:00:12,440 --> 00:00:17,050 那你的这个数据库的性能比较高并发的壮性能肯定是不行的

6 00:00:17,690 --> 00:00:19,210 但是我们通过去对吧我们

7 00:00:19,230 --> 00:00:22,780 我们是通过对MVC的一个流程的一个了解的话

8 00:00:22,910 --> 00:00:24,250 我们突然发现了它

9 00:00:24,390 --> 00:00:30,860 他如果说你完全按照mvcc等多种方式去进行操作技术你的对你发现一个问题

10 00:00:32,030 --> 00:00:32,690 你通过来玩

11 00:00:32,730 --> 00:00:35,350 完全通过多版本的任务控制你的制作

12 00:00:35,370 --> 00:00:36,700 得到效果

13 00:00:36,900 --> 00:00:39,200 得到数据不是我想要的数据

14 00:00:39,670 --> 00:00:42,740 那也知道说你还没提交我已经读到你的倡议后做主

15 00:00:42,830 --> 00:00:43,620 读到你

16 00:00:43,700 --> 00:00:45,730 不可重复读的这些数据

17 00:00:46,040 --> 00:00:47,740 那几个问题到底出在哪个地方

18 00:00:47,900 --> 00:00:50,200 那这个method行怎么去解决呢

19 00:00:50,350 --> 00:00:52,230 人家说当他发现你

20 00:00:53,030 --> 00:00:55,730 操作的数据如何说你先是做update

21 00:00:56,500 --> 00:01:03,190 那你肯定在这个数据区这条隧道你肯定是到了死我了但我发现你有这么一个锁的时候

22 00:01:03,290 --> 00:01:04,550 我这些都会到

23 00:01:05,380 --> 00:01:06,730 我就去读快照

24 00:01:07,120 --> 00:01:07,710 088

25 00:01:07,810 --> 00:01:11,730 都快分怎么来的快照的话那就是通过undo日子

26 00:01:11,930 --> 00:01:14,420 明天中午再说数据备份的时候

27 00:01:14,940 --> 00:01:17,370 我在做数据备份的时候数据一旦

28 00:01:17,510 --> 00:01:18,450 坦克每一个对吧

29 00:01:18,940 --> 00:01:23,900 我的肚子是恶意代我国只要做了一个每个操作啊

30 00:01:23,960 --> 00:01:26,690 那么A等于20个每个操作一旦你产生

31 00:01:26,860 --> 00:01:29,600 我就先把这个矩阵的这一行记录啊

32 00:01:29,800 --> 00:01:32,670 自行车什么所作记录可把拷贝出来

33 00:01:33,450 --> 00:01:34,920 我把它拷贝到一个地方

34 00:01:35,070 --> 00:01:35,900 这地方的话

35 00:01:35,980 --> 00:01:38,740 知道你就你这么差不多啊

36 00:01:38,780 --> 00:01:40,260 杭州万科里面去了啊

37 00:01:40,570 --> 00:01:41,550 儿歌了给你们去了

38 00:01:41,770 --> 00:01:44,250 然后呢我其他的塑料了毒

39 00:01:44,470 --> 00:01:46,080 要读的数据时候

40 00:01:46,200 --> 00:01:47,190 我就通过去吧

41 00:01:47,690 --> 00:01:50,070 也许是你比如说我现在不是查询

42 00:01:50,220 --> 00:01:51,850 那不是他觉得这孩子的

43 00:01:51,960 --> 00:01:53,500 我查询是整个表的

44 00:01:54,000 --> 00:01:58,250 哦他是整个表的那就是这一部分的内容加上这一个部分的内容

45 00:01:58,690 --> 00:02:03,240 就是在这里在这里住会里面所做内容的话我其实上的备份

46 00:02:03,520 --> 00:02:05,520 他妈的会到里面去进行读

47 00:02:07,640 --> 00:02:08,330 明白了吗

48 00:02:11,310 --> 00:02:13,000 都是刚度的一个一样

49 00:02:13,160 --> 00:02:15,290 王都的话那最先的一个出现他

50 00:02:15,350 --> 00:02:18,060 它是为了解决事务的原子性

51 00:02:18,110 --> 00:02:23,760 人家说他把这个数据是吧数据备份到这个地方你要坐落败给你之后

52 00:02:24,370 --> 00:02:27,240 你要做什么办事或者说你10000产生错误要

53 00:02:27,400 --> 00:02:28,680 回滚的时候 操作环境(请提供以下完整数据):

额外信息(可选) 任何其他的能描述问题的信息。 整体看的话 阅读还是很有障碍的

BingLingGroup commented 3 years ago

可能谷歌翻译效果不太好,我现在基本都在用deepl了,不过deepl没有免费的接口,只有付费的,所以我是用某种半自动的方式,下个版本更新下readme你就知道怎么用了

hermitcai commented 3 years ago

好的 我看看deepi的方式 半自动我不太理解您的意思 您是说下一个版本可以使用半自动的方式优化翻译问题吗

On Sep 25, 2020, at 9:23 AM, BingLingGroup notifications@github.com wrote:

可能谷歌翻译效果不太好,我现在基本都在用deepl了,不过deepl没有免费的接口,只有付费的,所以我是用某种半自动的方式,下个版本更新下readme你就知道怎么用了

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BingLingGroup/autosub/issues/141#issuecomment-698669346, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKX7PKJTTIRV52CQPHVIWM3SHPWJJANCNFSM4RXWR6QA.

BingLingGroup commented 3 years ago

现在dev分支最新版代码里面已经支持半自动的方式了,只是我没写readme,所以估计你也不会用 一个典型的半自动翻译的命令

autosub -i 字幕文件 -tapi man -of bilingual -tdc -doc -mts 9850 -tf txt

这样会每次输出一段在deepl网页版翻译长度限制内的文字,txt格式,你需要打开,全选,复制下来,放到网页版里翻译,翻译好了以后,把结果复制出来,切回原先那个txt的窗口,全选(覆盖),并粘贴,回到命令行界面,回车继续执行,然后重复以上步骤,直至翻译完成,就会输出字幕。务必保证翻译结果行数和原文行数一致即可成功翻译。

建议使用notepad++之类的能自动识别原txt文件变动的文本编辑器,这样在autosub覆盖上一次翻译结果txt的时候,文本编辑器可以自动重新加载新的原文,方便你直接复制新原文进行翻译,就不需要反复打开那个txt文件了。

BingLingGroup commented 3 years ago

另外看起来你好像不知道deepl这个翻译工具,那我附一下官网的链接,这个翻译比谷歌翻译好用一些 https://www.deepl.com/translator

hermitcai commented 3 years ago

您的意思是每一行都要这要复制粘贴一次吗 但是我的视频文件里面一般都有上千行 视频长度也在1个小时左右

On Sep 25, 2020, at 9:36 AM, BingLingGroup notifications@github.com wrote:

现在dev分支最新版代码里面已经支持半自动的方式了,只是我没写readme,所以估计你也不会用 一个典型的半自动翻译的命令

autosub -i 字幕文件 -tapi man -of bilingual -tdc -doc -mts 9850 -tf txt 这样会每次输出一段在deepl网页版翻译长度限制内的文字,txt格式,你需要打开,全选,复制下来,放到网页版里翻译,翻译好了以后,把结果复制出来,切回原先那个txt的窗口,全选(覆盖),并粘贴,回到命令行界面,回车继续执行,然后重复以上步骤,直至翻译完成,就会输出字幕。务必保证翻译结果行数和原文行数一致即可成功翻译。

建议使用notepad++之类的能自动识别原txt文件变动的文本编辑器,这样在autosub覆盖上一次翻译结果txt的时候,文本编辑器可以自动重新加载新的原文,方便你直接复制新原文进行翻译,就不需要反复打开那个txt文件了。

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BingLingGroup/autosub/issues/141#issuecomment-698672371, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKX7PKKSMURFMC4LNUEGXVDSHPXZ3ANCNFSM4RXWR6QA.

BingLingGroup commented 3 years ago

如果你觉得批量麻烦的话就算了,这是目前没有免费接口的情况下方便使用deepl网页版免费翻译的方法。 按照这个字数限制,一般一次能翻译100-200行,上千行估计要重复大概5-10次左右。

hermitcai commented 3 years ago

5-10次完全可以接受 因为我以为是免费翻译只能一次一行 一次能到100行可以接受了 谢谢老铁 我用dev版本试试

On Sep 25, 2020, at 9:40 AM, BingLingGroup notifications@github.com wrote:

如果你觉得批量麻烦的话就算了,这是目前没有免费接口的情况下方便使用deepl网页版免费翻译的方法。 按照这个字数限制,一般一次能翻译100-200行,上千行估计要重复大概5-10次左右。

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BingLingGroup/autosub/issues/141#issuecomment-698673421, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKX7PKLJRDH5W5DQW7R4BHTSHPYJNANCNFSM4RXWR6QA.

hermitcai commented 3 years ago

另外看起来你好像不知道deepl这个翻译工具,那我附一下官网的链接,这个翻译比谷歌翻译好用一些 https://www.deepl.com/translator

太棒了 谢谢指导

hermitcai commented 3 years ago

现在dev分支最新版代码里面已经支持半自动的方式了,只是我没写readme,所以估计你也不会用 一个典型的半自动翻译的命令

autosub -i 字幕文件 -tapi man -of bilingual -tdc -doc -mts 9850 -tf txt

这样会每次输出一段在deepl网页版翻译长度限制内的文字,txt格式,你需要打开,全选,复制下来,放到网页版里翻译,翻译好了以后,把结果复制出来,切回原先那个txt的窗口,全选(覆盖),并粘贴,回到命令行界面,回车继续执行,然后重复以上步骤,直至翻译完成,就会输出字幕。务必保证翻译结果行数和原文行数一致即可成功翻译。

建议使用notepad++之类的能自动识别原txt文件变动的文本编辑器,这样在autosub覆盖上一次翻译结果txt的时候,文本编辑器可以自动重新加载新的原文,方便你直接复制新原文进行翻译,就不需要反复打开那个txt文件了。

image 我使用这个命令 似乎翻译有些问题

BingLingGroup commented 3 years ago

这是因为你输入的参数太少了,我这个参数是给你直接翻译字幕文件用的,不是给你用来翻译视频文件的

hermitcai commented 3 years ago

嗯嗯 请教下 我如果需要翻译视频文件的内容 语言都是中文的 我应该在哪里去查命令或者使用具体什么命令

On Sep 27, 2020, at 9:56 AM, BingLingGroup notifications@github.com wrote:

这是因为你输入的参数太少了,我这个参数是给你直接翻译字幕文件用的,不是给你用来翻译视频文件的

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BingLingGroup/autosub/issues/141#issuecomment-699572456, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKX7PKPFY5MR4WYLPOPP673SH2LVHANCNFSM4RXWR6QA.

BingLingGroup commented 3 years ago

你应该在语音转文字的参数基础上增加翻译的参数,不过我建议分两步走,最好先校对语音转文字的结果,再翻译,这样更准确

BingLingGroup commented 3 years ago

https://github.com/BingLingGroup/autosub/blob/dev/docs/README.zh-Hans.md#语音转录为字幕 这里是语音转文字的参数使用说明

hermitcai commented 3 years ago

我这个主要是视频转文字 我本身就都是中文的 我需要的就是中文

On Sep 28, 2020, at 9:32 AM, BingLingGroup notifications@github.com wrote:

你应该在语音转文字的参数基础上增加翻译的参数,不过我建议分两步走,最好先校对语音转文字的结果,再翻译,这样更准确

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BingLingGroup/autosub/issues/141#issuecomment-699722982, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKX7PKIIJVGYODZL3YMR7CLSH7RSFANCNFSM4RXWR6QA.

BingLingGroup commented 3 years ago

那为什么还要翻译呢?那不需要翻译啊

从语音到文字的过程,叫语音转录文字,从文字到另一种语言的文字,叫翻译

patui commented 3 years ago

那为什么还要翻译呢?那不需要翻译啊

从语音到文字的过程,叫语音转录文字,从文字到另一种语言的文字,叫翻译

这个issue说的应该是语音识别的效果不好,autosub现在的原理很难从根本上解决这个问题,自己切分音频的算法除非可以做到剪映APP那么好,我测试了,目前阿里,讯飞,腾讯都做不到剪映那么好,即便解决了断句问题,语意理解也无法根据上下文环境智能纠错,我个人建议开发者也把思考角度转到文件转写上,而不是一句话识别上,这样才能超越autosub的原分支,真正提高用户体验。

patui commented 3 years ago

中文领域,剪映APP应该是目前语音识别断句和识别做的最好的,没有之一,目前中文识别最大的挑战应该是同音词识别,也就是语意理解这一块,这块是大多数语音引擎出错的地方,相信通过机器学习,大量积累数据,解决也只是时间问题。

BingLingGroup commented 3 years ago

@patui 我知道,但是人家剪映是正规军,做这个有工资拿的。我写工具首先考虑我自己用,目前我的用途主要是处理youtube有自动字幕的视频,目前这个流程已经很流畅了。最近一直很忙所以没时间维护这边的代码,我写代码又不是做公益

idontknownl commented 3 years ago

If I have Deepl Pro I still would have the same limitation or it would translate everything?

BingLingGroup commented 3 years ago

@idontknownl Currently autosub isn't adapted to Deepl Pro and I don't have a Deepl Pro account to test it. But Pull Request is welcomed.