找回密码
 立即注册
查看: 71|回复: 1

【工具】ass-hanvert: ASS 字幕简繁体转换工具

  • TA的每日心情
    开心
    昨天 01:10
  • 签到天数: 544 天

    [LV.9]以坛为家II

    10

    主题

    42

    回帖

    1490

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    480775
    MingY 发表于 昨天 12:49 | 显示全部楼层 |阅读模式
    本帖最后由 MingY 于 2026-7-15 12:49 编辑

    ass-hanvert
    完整介绍见 GitHub

    简易 ASS 字幕简繁体转换工具

    关于
    动机
    目前主流的繁转换工具(如繁化姬)虽然转换精度尚可,且能检测字幕格式进行智能转换,但在处理带有标签的字幕时会出错。例如,苹{\k}果 会被错误地转换为 苹{\k}果,而正确的结果应该是 蘋{\k}果。
    而 OpenCC 则不支持识别字幕格式,容易造成不必要的转换(如转换到字体名称或日语文字等问题)。
    本项目旨在通过 Python 实现 ASS 字幕转换,支持多种转换器,以解决上述问题。

    功能特性
    • 跳过日文字幕(通过样式名识别,可自定义)
    • 跳过非中文文本
    • 转换时忽略标签和换行符,转换完成后恢复原始格式
    • 转换前后长度发生变化时显示警告
    • 内置多种转换器(见下方列表)
    • 转换结果缓存,减少重复工作
    • 支持通过 Effect 字段标记跳过特定行

    安装
    1. pip install ass-hanvert
    复制代码

    使用方法
    命令行(CLI)

    1. # 基本用法 - 转换单个/多个文件(默认:简转繁,繁化姬-台湾)
    2. ass-hanvert input1.ass input2.ass

    3. # 转换整个目录下的所有 .ass 文件,输出到指定目录
    4. ass-hanvert --output-dir ./output ./subtitles/

    5. # 指定转换器
    6. ass-hanvert -c OpenCC-TW input.ass

    7. # 使用缓存目录(省去重复转换)
    8. ass-hanvert --cache ./cache input.ass

    9. # 自定义输出文件后缀
    10. ass-hanvert --suffix traditional input.ass

    11. # 完整示例:指定转换器、参考转换器、字体名称映射及缓存
    12. ass-hanvert -c FHJ-TW --ref-converter OpenCC-T --font-mapping fonts.json --cache ./cache input.ass
    复制代码


    参数说明:

    参数说明默认值
    files要转换的 ASS 字幕文件、目录或通配符模式(支持多个)必填
    -c, --converter转换器名称,见下方列表FHJ-TW
    --ref-converter参考转换器,若省略则根据主转换器方向自动选择自动
    --suffix输出文件后缀,插入在 .ass 之前cht(简转繁)/ chs(繁转简)
    --output-dir输出目录,不指定则输出到各源文件旁源文件旁
    --cache缓存目录路径
    --no-skip-comment转换时不跳过注释行跳过
    --no-deduplicate转换时不去重去重
    --no-sort转换时不对事件排序按开始时间排序
    --font-mapping字体名称映射 JSON 文件路径
    --pre-replace前置替换列表 JSON 文件路径
    --post-replace后置替换列表 JSON 文件路径
    --protected-patterns保护模式 JSON 文件路径(正则表达式列表)
    --skip-styles跳过的样式名子字符串(逗号分隔)JP,JA
    --skip-styles-exact跳过的精确样式名(逗号分隔)
    --no-skip-inline-styles不跳过行内覆盖样式(\r 标签切换的样式)跳过

    内置转换器:

    简转繁:

    名称说明
    FHJ-T繁化姬 - 繁体
    FHJ-HK繁化姬 - 香港
    FHJ-TW繁化姬 - 台湾
    FHJ-WT繁化姬 - 维基繁体
    OpenCC-TOpenCC - 繁体
    OpenCC-HKOpenCC - 香港
    OpenCC-TWOpenCC - 台湾
    OpenCC-TWPOpenCC - 台湾(含台湾常用语)

    繁转简:

    名称说明
    FHJ-S繁化姬 - 简体
    FHJ-CH繁化姬 - 大陆
    FHJ-WS繁化姬 - 维基简体
    OpenCC-SOpenCC - 简体
    OpenCC-HKSOpenCC - 香港转简体
    OpenCC-TWSOpenCC - 台湾转简体

    致谢



    评分

    参与人数 1活跃度 +1000 收起 理由
    蒙太奇字幕组 + 1000

    查看全部评分

    MingYSub 译制的字幕作品(GitHub 仓库),若无特别标注,均基于 CC BY-NC-SA 4.0 协议共享,转载时请遵守共享协议。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2026-3-16 19:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    5

    主题

    100

    回帖

    0

    VC币

    白金会员

    Rank: 12Rank: 12Rank: 12

    积分
    78182
    蒙太奇字幕组 发表于 2 小时前 | 显示全部楼层
    我是小p,这个工具确实太棒了,其实我们组一直没有做繁中,就是因为不满意现有机器转换质量,我们倾向于要么不做,要么做就全力做那种二元选择。OpenCC之前没有听说过,不过确实一直希望引入繁化姬自动化,甚至还邀请了繁化姬作者,并有相关开发立项。

    既然有了楼主的工具,我想我们可以探索繁中了,让我先试试,谢谢你们字幕组。


    本账号目前由蒙太奇字幕组小p管理和使用。其他成员使用时会标注发言人身份。部分发言可能包含发言人的个人观点,并不一定代表字幕组官方立场。


    蒙太奇字幕组 · MontageSubs
    “用爱发电 ❤️ Powered by Love”
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表