#467 语音转字幕问题

104.194* Posted at: 2 months ago 👁537

我已经下载最新版本了,最大语音持续时间,LLM重新断句和本地重新断句完全没用,不知道这几个设置以什么样的逻辑来运行的。

勾选LLM和本地重新断句确实结果不一样,但是也不是按设置的最大语音持续时间来分段的。

字幕溢出始终是一个问题,我想到的解决办法是按单词数分段,设置说多少个单词进行分段,不知道能不能实现这种功能。

8 Replies

Admin

1. 断句仅针对faster-whisperr/openai-whispe这2个渠道起作用

2. 本地断句是按照标点符号进行断句,当句子时长超过设置的“最小语音时长”按照遇到的的第一个标点断句

3. 如果句子超过“最大语音时长” 1.5倍仍未遇到标点时,则强制在此断句

4. 或者单词距离下个单词时长大于设置的“最小静音片段”时也强制断句

Admin

按单词数量断句不合适,会大量出现句子中间强硬中断,你可以选择“均等分割”试试

1.按单词数可以和现有逻辑结合,按单词数可以设置15左右,一般不会触发,我只是想它在长句能触发,因为长句翻译成中文大概率会溢出屏幕。

2.嵌入字幕的单行字符数又是怎么回事呢,我极端设置为1,发现毫无变化。

image

如图,嵌入字幕单行字符数我试过了,没用

强行中断其实无所谓的,真的比这种情况好

软件很多设置都不是按实际设置来,调半天才发现内在逻辑不是完全按设置的来

我觉得可以放开设置,允许用户用默认的也允许用户调

在吗?

在吗?

文件太大了,我本地因为没有GPU服务,所以没用这个软件;下载了你们单独的处理字幕的软件,但是哪个软件只支持gemini api,使用gemini pro学生版的api,无法使用,想换成其他第三方模型,没有地方可以更换,这个解决一下吧,至少支持其他第三方模型才可以

根据您的描述和截图,您遇到的核心问题是字幕断句逻辑与预期不符,以及嵌入字幕单行字符数设置无效。结合官方回复和软件原理,为您梳理如下:

一、关于断句功能(LLM重新断句/本地重新断句)

  1. 作用范围:如开发者所述,断句功能仅对 faster-whisperopenai-whisper 这两个语音识别渠道有效。如果您使用的是其他识别渠道(如阿里FunASR或在线API),这些设置将不起作用。
  2. 本地断句逻辑

    • 主要依据:识别出的文本中的标点符号(如句号、逗号、问号等)。
    • 强制断句条件(满足任一即断):

      • 当一句话的时长超过您设置的 “最小语音时长”,并且遇到了第一个标点符号。
      • 当一句话的时长超过了 “最大语音时长”的1.5倍,即使没有遇到标点,也会强制在此处断句。
      • 当两个单词之间的静音间隔超过了 “最小静音片段” 的设定值。
  3. LLM断句逻辑:这是效果最好的方式。它会将原始识别文本发送给您配置的LLM(如ChatGPT、DeepSeek),由AI根据语义和语法进行智能分段。“最大语音持续时间”等参数对LLM断句影响较小,LLM主要依据语义。
  4. 您的诉求与解决方案

    • 按单词数断句:目前软件不支持此功能。开发者的考虑是避免在句子中间生硬切断影响语义。对于长句导致字幕溢出的问题,更有效的解决方案是:

      • 使用“均等分割”:在字幕编辑界面,可以使用此功能将长句均匀分割成多行。
      • 优化“嵌入字幕单行字符数”(见下文)。
      • 后续手动在字幕编辑器中调整:这是最精准的控制方式。

二、关于“嵌入字幕单行字符数”设置无效的问题

根据您的截图和描述,该设置可能仅在“嵌入硬字幕”时生效。如果您的字幕是“软字幕”(可关闭的字幕轨道),或者输出时选择了“不嵌入字幕”,那么这个设置不会起作用。

请按以下步骤检查和操作:

  1. 确认输出设置:在主界面第5行“字幕显示”中,确保您选择的是 嵌入硬字幕
  2. 检查高级选项

    • 进入 工具 -> 选项 -> 高级选项
    • 在“视频输出控制”部分,确认 视频字幕单行最多字数 的设置值(默认可能是20)。这个设置应该与主界面的“嵌入字幕单行字符数”联动或覆盖它。
  3. 测试:将“视频字幕单行最多字数”设置为一个较小的值(如10),然后重新处理一个短视频,观察生成的硬字幕是否按此字数换行。

三、关于单独的字幕处理软件(仅支持Gemini API)的问题

您提到的“单独处理字幕的软件”可能是一个功能模块或旧版本。在最新的 pyVideoTrans 主程序中,翻译功能支持大量第三方模型

解决方案:在 pyVideoTrans 主程序中更换翻译模型

  1. 在主界面第3行“翻译”设置中,点击下拉菜单,您会看到包括 Google、ChatGPT、DeepSeek、Claude、智谱AI、阿里百炼、字节火山 等众多选项。
  2. 选择您想要的模型(例如“DeepSeek”)。
  3. 然后点击右侧的 翻译设置 按钮。
  4. 在弹出的窗口中,填入对应模型的API Key和Base URL(如果需要)。
  5. 保存设置后即可使用。

如果您使用的确实是另一个独立软件且无法找到设置,建议直接使用功能更全面的 pyVideoTrans 主程序来处理字幕的翻译和配音。

总结与建议

  1. 断句问题:优先使用 LLM重新断句 并配置好您的LLM API,这是最智能的断句方式。理解本地断句依赖于标点和静音参数。
  2. 字幕换行问题:确保输出为 嵌入硬字幕,并检查 高级选项 中的 视频字幕单行最多字数
  3. 模型支持问题:使用 pyVideoTrans 主程序,它支持几乎所有主流AI翻译模型。

如果调整后问题依旧,请提供您在处理时选择的 具体识别渠道、输出格式 以及 logs 文件夹下的相关日志文件,以便进一步分析。

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Donate: https://ko-fi.com/jianchang512

Trending Questions