Skip to content

为什么识别出的字幕长短不一乱七八糟-如何优化调整?

在视频翻译过程中,经语音识别阶段自动生成的字幕,效果常常不理想。要么字幕过长,几乎占满屏幕;要么只显示两三个字符,显得七零八落。为什么会出现这种情况呢?

语音识别的断句标准

语音识别:

即人类说话声音转换为文字字幕时,通常是根据静音区间来切割句子。一般来说,静音片段的时长设定在200毫秒到500毫秒之间。假设设定为250毫秒,当检测到静音持续达到250毫秒时,程序就会将其视为一句话的结束点。此时,从上一个结束点到这里生成一条字幕。

影响字幕效果的因素

  1. 说话速度

如果音频中讲话速度很快,几乎没有停顿,或者停顿时间不足250毫秒,切割出的字幕会很长,可能持续十几秒甚至几十秒,嵌入视频时会占满屏幕。

图片

  1. 不规则停顿:

相反,如果说话时出现了不该有的停顿,例如本是连贯的一句话中间却停顿几次,切割出来的字幕会非常零碎,可能一条字幕只显示几个字。

图片

  1. 背景噪声

背景噪声或音乐也会干扰静音区间的判断,导致识别不准确。

  1. 发音清晰度:这个显而易见,发音不清时连人类都无法听清

如何应对这些问题?

  1. 减少背景噪声:

如果背景噪声较大,可以在识别前进行人声与背景声的分离,去除干扰声,以提高识别效果。

  1. 使用大体积的语音识别模型:

计算机性能允许的情况下,尽量使用大模型进行识别,比如 large-v2 或 large-v3-turbo

  1. 调整静音片段时长:

软件默认将静音片段设为200毫秒。根据音视频的具体情况,可以调整这个值。如果你想识别的视频说话速度较快,可以降低到100毫秒;如果停顿较多,可以增加到300或500毫秒。设置方法是打开菜单中的工具/选项,然后选择高级选项,在faster/openai语音识别调整部分修改最小静音片段值。

图片

  1. 设置字幕最大持续时长:

可以设定字幕的最大时长,超出该时长的字幕会被强制断句。该设置同样在高级选项中。

图片

如图所示,超过10秒的字幕会被重新切割。

  1. 设置一行字幕的最大字符数:

可以设置每行字幕的字符数上限,超出字符数的字幕将自动换行或断句。

图片

  1. 开启重新断句功能:开启此选项后,结合上面提到的第4条和第5条设置,程序会自动重新断句。

图片

经过以上 3、4、5、6 设置,程序会先根据静音区间生成字幕,遇到超长字幕或字符数过多时,程序会通过重新断句来分割字幕。重新断句分割字幕时,程序使用了 nltk 自然语言处理库,结合静音区间时长、标点符号、字幕字符数量等综合判断后分割。