avs2bdnxml 制作 SUP 格式字幕 | ASS/SSA/SRT 字幕转 SUP

当需要为混流视频生成 SUP 字幕文件时, 可以使用 avs2bdnxml 工具将 ASS/SSA/SRT 字幕转换为 SUP 格式, 以便在一些低级的高清播放机上播放特效字幕。

作者没有提供已经构建好的版本. 所以需要自行构建

下载与构建

首先下载源码 avs2bdnxml-2.09.tar.bz2, 备用下载址: avs2bdnxml-2.09.tar.bz2

在安装了 GCC 的 Linux 环境下, 执行以下命令构建程序

make

或者, 如果想要构建分发版本

make dist

准备字幕文件

准备字幕。可以使用 SRT 或 ASS/SSA 格式生成字幕, 也可以预先生成 RGBA 视频

创建 AviSynth 脚本

要生成 SUP 字幕, 可以参考以下 AviSynth 脚本

video=AviSource("video.avi")
# 需要至少 VSFilter 2.39
MaskSub("subtitles.ext", video.width, video.height, video.framerate, video.framecount)

实例 创建一个名为 srttosup.avs 的脚本, 内容如下

video=LWLibavVideoSource("X:\zip2\00800.1.hevc")
MaskSub("C:\Users\Desktop\Annihilation.2018.1080p.BluRay.x264.Atmos.TrueHD7.1-HDChina.ass", 1920, video.height, video.framerate, video.framecount)

如果创建 RGBA 视频, 脚本示例如下

AviSource("subtitles_RGBA.avi")
FlipVertical()

运行程序

avs2bdnxml -t Undefined -l und -v 1080p -f 23.976 -b1 -o output.xml input.avs

对于某些程序, 可能需要将 PNG 文件转换为 8 位 RGBA 调色板, 使用 -p 参数即可, 但 BDSupEdit 不需要此步骤

输出格式

生成的 BDN XML 格式示例

<?xml version="1.0" encoding="UTF-8"?>
<BDN Version="0.93"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="BD-03-006-0093b BDN File Format.xsd">
    <Description>
        <Name Title="Undefined" Content=""/>
        <Language Code="und"/>
        <Format VideoFormat="[ 480i / 480p / 576i / 720p / 1080i /1080p ]" FrameRate="[ 23.976 / 24 / 25 / 29.97 / 50 / 59.94 ]" DropFrame="false"/>
        <Events LastEventOutTC="00:00:00:00" FirstEventInTC="00:00:00:00" ContentInTC="00:00:00:00" ContentOutTC="00:00:00:00" NumberofEvents="[ number of encoded frames ]" Type="Graphic"/>
    </Description>
    <Events>
        <Event Forced="[ False / True ]" InTC="00:00:00:00" OutTC="00:00:00:00">
            <Graphic Width="0" Height="0" X="0" Y="0">000000.png</Graphic>
        </Event>
    </Events>
</BDN>

后续步骤

使用如 BDSupEditBDSup2Sub 的程序将 BDN XML 转换为 BD-SUP 文件。后续操作留给读者自行探索


原文

AviSynth rendered subtitles to BluRay SUP/PGS and BDN XML (v2.08)
AVS to BluRay SUP/PGS and BDN XML

最后更新于 2019-03-08
使用 Hugo 构建
主题 StackJimmy 设计