如何将 ASS 转换为 SRT

如何将 ASS 转换为 SRT - 精选图片

SRT 是字幕制作的行业标准,与所有视频编辑工具广泛兼容。这种兼容性也是 ASS.SRT 等格式的原因、 SUP,以及 VTT 通常转换为 SRT。

与此同时,ASS 是一种非常小众的字幕格式,侧重于样式和格式,主要用于动画片。

因此,如果您有 ASS 格式的字幕文件,您可能需要将其转换为 SRT 格式,以便兼容。转换后,格式的样式会消失,但编辑、上传和在视频中刻录字幕会变得简单方便。

以下是一份简单易学的指南,可解决如何将 ASS 字幕文件转换为 SRT 格式的任何问题。

主要收获

  • SRT 是兼容性最强的字幕格式,因此比 ASS 更受媒体播放器和平台的支持。
  • ASS 到 SRT 的转换去除了高级样式,如颜色、字体和定位,但确保了编辑和可访问性。
  • 有多种转换方法,包括在线工具、Subtitle Edit 等软件和用于自动化的 Python 脚本。Sonix 虽然不是直接的文件转换器,但可提供准确的人工智能转录,并可格式化为字幕。
  • SRT 文件更简单,体积更小,因此非常适合流式传输、共享和嵌入视频,无需过多格式化。
  • Sonix 提供优质的人工智能转录服务,允许用户从多种语言和格式的音频中高精度地生成字幕。 试用 Sonix 30 分钟免费试用,无需信用卡。

如何将 ASS 转换为 SRT

为了确保不同视频播放器和平台之间更广泛的兼容性,通常需要将 ASS 转换为 SRT。ASS 支持高级样式、字体、颜色和定位,而 SRT 是一种更简单、受广泛支持的格式,可与大多数媒体播放器和流媒体服务无缝兼容。 

以下是将 ASS 转换为 SRT 的两种方法,但其中一种比另一种可靠得多。

方法 1:使用 Sonix 进行高精度转换

对于需要精确、可靠和专业字幕转换的用户,Sonix 提供了一个人工智能解决方案,确保文本格式干净、准确,没有不必要的错误。 

与基本的文件转换器不同,Sonix 不仅能转换字幕,还能通过自动调整时间戳和格式来增强字幕,使其与对话内容相匹配。字幕随后可以各种格式导出,包括 SRT。

用 Sonix 将 ASS 转换为 SRT 的步骤

  1. 转到 ǞǞǞ 并注册/登录。(Sonix 为新用户提供 30 分钟免费试用)。
  2. 上传视频或音频文件。Sonix 将处理文件并生成准确的誊本。大多数誊本的处理精度为 99%。
  3. 选择 "字幕 "并选择格式选项。您可以调整时间戳、编辑内容和删除不必要的样式。
  4. 将文件导出为 SRT。这样,一个简洁、适时的字幕文件就可以在各种平台上使用了。

这种方法非常适合需要精确度、准确性和自定义格式的内容创建者、专业人士和企业,无需手动修正。

方法 2:使用在线转换器 

在线字幕转换器看似可以快速解决问题,但往往有很大的缺陷。许多免费工具依赖于自动脚本,这些脚本会删除必要的格式,而不会对字幕进行适当的重组。 

不过,如果你想跳过下载,这可能是一个不错的选择。不过,你也应该注意一些风险:

  • 隐私问题:上传字幕文件,尤其是包含敏感内容的字幕文件,会将数据暴露给第三方服务器。
  • 广告和弹出窗口:许多免费工具会对用户进行广告轰炸,并可能要求用户进行不必要的点击或下载。
  • 自定义功能有限:与 Sonix 不同,在线转换器不允许编辑文字稿、识别发言者或进行微调。

虽然这些工具可能适用于基本的字幕转换,但它们缺乏专业或高质量项目所需的精确性和安全性。如果您需要一致、格式正确的字幕,像 Sonix 这样的专业服务是更好的选择。

方法 3:使用字幕编辑器(推荐)

Subtitle Edit 是一款免费的开源字幕编辑工具,可将 ASS 格式精确高效地转换为 SRT 格式。与基本的在线转换器不同,Subtitle Edit 保留了字幕的时序和格式,确保了格式之间的平稳过渡。 

它还允许用户在完成转换前审查、编辑和微调字幕,因此是要求准确性的视频编辑人员和专业人士的首选。

以下是使用字幕编辑器将 ASS 转为 SRT 的分步说明。

首先,你需要从官方网站下载最新版本的 Subtitle Edit。

从官方下载最新的安装程序 字幕编辑网站.

步骤 1:打开 ASS 文件

  1. 单击字幕编辑器顶部菜单中的文件 > 打开。
  2. 找到并选择要转换的 .ass 文件。
  3. 现在将加载字幕内容,显示 ASS 文件中的时间戳、文本和格式样式。

步骤 2:将 ASS 转换为 SRT

  1. 单击菜单栏中的文件 > 另存为。
  2. 在保存类型下拉菜单中,选择 SubRip (.srt) 作为所需格式。
  3. 单击 "保存 "转换文件。

在此阶段,Subtitle Edit 会去掉 ASS 格式特有的高级样式元素(如字体颜色和定位),留下一个干净、标准的 SRT 文件。

第 3 步:审核并修正格式

转换后,检查字幕内容的准确性非常重要。

  1. 检查时间戳,确保它们与对话正确一致。
  2. 查看是否有需要调整的断行、文字缺失或间距问题。
  3. 如有必要,可使用 Subtitle Edit 的内置编辑工具调整字幕时间和文本对齐方式。

满意后,您的 SRT 文件就可以在大多数视频播放器、编辑软件和流媒体平台上使用了。

方法 4:使用 Python 进行转换

步骤 1:安装 Python

  • 访问 Python 官方网站:https://www.python.org/
  • 单击 "下载 "部分,为您的操作系统(Windows、macOS 或 Linux)下载最新版本的 Python。
  • 运行下载的安装程序。
  • 在安装过程中,确保勾选 "将 Python 添加到 PATH "复选框。
  • 按照安装说明完成设置。

步骤 2:准备 Python 脚本

  • 打开文本编辑器(如记事本、VS Code 或其他代码编辑器)。
  • 将提供的 Python 脚本复制到编辑器中。

再输入

def ass_to_srt(ass_filename, srt_filename):

    def ass_time_to_srt_time(ass_time):

        h, m, s = ass_time.split(':')

        s, cs = s.split('.')

        ms = str(int(cs) * 10).zfill(3) # 将厘秒转换为毫秒

        return f"{h.zfill(2)}:{m.zfill(2)}:{s.zfill(2)},{ms}"

    with open(ass_filename, 'r', encoding='utf-8′) as ass_file:

        lines = ass_file.readlines()

    dialogue_lines = [line for line in lines if line.startswith('Dialogue:')] (对话行中的行)

    srt_lines = []

    指数 = 1

    for line in dialogue_lines:

        parts = line.split(',', 9)

        start_time = ass_time_to_srt_time(parts[1].strip())

        end_time = ass_time_to_srt_time(parts[2].strip())

        text = parts[9].strip().replace('\\N', '\n').replace('\\n', '\n')

        text = re.sub(r'{.*?}', ", text) # 移除 ASS 样式标记

        srt_lines.append(f"{index}")

        srt_lines.append(f"{start_time} -> {end_time}")

        srt_lines.append(text)

        srt_lines.append("")

        index += 1

    with open(srt_filename, 'w', encoding='utf-8′) as srt_file:

        srt_file.write("\n".join(srt_lines))

# 使用示例

ass_too_srt('example.ass', 'example.srt')

  • 以 .py 扩展名保存文件,例如 convert_ass_to_srt.py。

步骤 3:运行 Python 脚本

在运行脚本之前,将 ASS 文件放到与 Python 脚本相同的位置,并在代码的最后一行将 "example.ass "改为 ASS 文件的实际名称。否则,代码会出错,如下所示。

如果要修改生成的 .SRT 文件的名称,可以修改同一行中的 "example.srt "文本。否则,保持原样将生成名称为 "example.srt "的最终文件。

  • 打开命令提示符或终端:
  • Windows:按 Win + R 键,输入 cmd,然后按 Enter。
  • macOS/Linux:打开终端应用程序

使用 cd 命令导航到保存 Python 脚本的目录。例如

cd path/to/your/script

  • 将 path/to/your/script 替换为该目录的实际路径。

步骤 4:运行脚本

  • 确保您的 .ass 文件位于同一目录下,或提供其完整路径。
  • 使用 Python 解释器运行脚本:

python convert_ass_to_srt.py

  • 脚本将把 example.ass 转换为 example.srt,并保存在同一目录下。

步骤 5:验证输出

  • 检查输出文件:
  • 找到目录中的 example.srt 文件。
  • 用文本编辑器打开,验证转换是否正确。

什么是 ASS 至 SRT 转换?

ASS 至 SRT 转换包括将 Advanced SubStation Alpha (.ass) 字幕文件转换为更广泛支持的 SubRip (.srt) 格式。这一过程可确保您的字幕可用于各种设备和媒体播放器,从而提高受众的可访问性。

下面是《怪物史莱克 1》前几行的 ASS 字幕格式示例。

为什么要将 ASS 转换为 SRT?

虽然 ASS 文件提供了先进的样式和定位选项,但它们也有局限性,因此转换为 SRT 是一个明智的选择:

兼容性

SRT 文件广泛支持各种媒体播放器、设备和平台。将 ASS 转为 SRT 可确保您的字幕能在更广泛的系统上播放。时至今日,Windows 和 MacOS 上最常用的媒体播放器 VLC Media Player 在不切换到 OpenGL 的情况下仍无法原生支持 ASS 字幕。

简约

SRT 文件采用简单明了的纯文本格式,易于阅读和编辑。这种简洁性使您更容易管理和修改字幕,而无需处理复杂的格式标签。

简化工作流程

将 ASS 转换为 SRT 可帮助简化字幕工作流程,尤其是在使用多个平台或与他人合作的情况下。SRT 文件更容易被普遍认可和共享。

缩小文件尺寸

SRT 文件通常比 ASS 文件小,因为它们不包含大量的样式信息。这对分发 在线字幕 或将其嵌入视频中。

虽然 ASS 文件在某些情况下也有其用武之地,但转换为 SRT 通常是确保字幕工作流程具有最大兼容性、简单性和高效性的最佳选择。

ASS 与 SRT:选择哪种格式?

在 ASS 和 SRT 格式之间做出选择取决于您的具体需求和使用字幕的环境。

特点ASS  SRT
样式和格式支持高级样式设计(颜色、字体、定位)纯文本格式;无高级样式设计
兼容性 兼容性有限;主要用于动漫和专用媒体播放器广泛支持各种媒体播放器和平台
易于编辑由于使用了样式标签,因此更加复杂编辑简单方便
文件大小由于嵌入了样式数据,文件尺寸较大文件尺寸更小 
最佳使用案例最适合视觉增强字幕(动画、风格化字幕)最适用于具有广泛兼容性的通用字幕
  • ASS 提供更多功能:如果您需要高级样式和定位功能,ASS 将是您的不二之选。它非常适合字幕的视觉元素能增加观众体验的项目。
  • SRT 带来更广泛的兼容性:如果您优先考虑的是各种平台的兼容性和简易性,SRT 是首选。它支持广泛,易于编辑。

了解每种格式的优势和局限性后,您就可以根据项目要求做出明智的决定。

ASS 比 SRT 更好吗?

ASS(Advanced SubStation Alpha)是否优于 SRT(SubRip Subtitle)取决于您的具体需求。

如果需要高级样式,包括自定义字体、颜色、定位和动画,ASS 会更好。它常用于动漫、卡拉 OK 字幕和风格化字幕等对视觉呈现非常重要的场合。

如果您需要最大的兼容性、简洁性和易编辑性,SRT 会更好。几乎所有媒体播放器、流媒体平台和视频编辑工具都支持 SRT,因此它是大多数专业项目的首选。

结束语

将 ASS 转为 SRT 是任何希望提高视频内容的可访问性和专业性的人都必须要做的工作。字幕对于吸引更多受众(包括聋人或听力障碍者),以及让您的内容更吸引人、更易懂至关重要。 

对于那些寻求可靠的字幕创建转录工具的人来说,Sonix 是最佳选择。Sonix 能以 99% 的准确度转录 39 种以上的语言,确保您的转录精确无误,使您能更轻松地格式化字幕并将其整合到视频中,只需最少的手动调整。

立即尝试 Sonix 的免费试用版,并获得 30 分钟免费转录.无需信用卡。

如何将 ASS 转换为 SRT:常见问题

能否将 ASS 转换为其他格式,如 VTT?

是的,使用正确的工具可以将 ASS 转换成各种格式,包括 VTT 格式,从而满足各种项目需求。

ASS 转 SRT 是免费的吗?

虽然许多在线工具提供的免费转换功能有其局限性,但投资付费选项可以获得高级功能并支持更大规模的项目。

转换过程需要多长时间?

转换时间因文件大小和复杂程度而异,但大多数工具都能在几分钟内完成转换过程,提供快速周转时间。

准确、自动转录

Sonix使用最新的人工智能,在几分钟内产生自动转录。
抄写35种以上语言的音频和视频文件。

今天就免费试用Sonix

包括30分钟的免费转录

zh_CNChinese