SuperAPI AI 工具集

subtitle-burner

通用与其它

查看项目

更新于 10-16 03:38

技能介绍

用途:将 SRT 字幕流烧入 MP4,视频重新编码(H.264 + faststart),音频原样复制。libass 按 ASS 风格覆盖标志渲染文本,中日韩字符通过托管的 Noto Sans CJK 字体呈现,字体目录由托管工具链通过 OPENSQUILLA_MEDIA_FONTS_DIR 提供。若 SRT 为空或仅含空白,则视为无字幕请求:探测输入视频后复制到指定输出,并报告 SUBTITLES_SKIPPED: empty,不调用 libass。

主要能力与参数:input(必填,源 MP4 路径)、subtitles(必填,UTF-8 的 .srt 路径)、output(必填,输出 MP4 路径,父目录缺失时自动创建)。font 默认 Noto Sans CJK SC,仅一个 libass FontName,逗号分隔的名称不构成回退链;fonts_dir 默认由环境提供;font_size 默认 42,play_res=auto 时以源视频像素为单位;margin_v 默认 80,底部边距以源视频像素计;play_res 默认 auto,会探测输入 MP4 分辨率,也可传入如 720x1280,设置后使字号/边距按源像素而非 libass 默认的 384×288 生效;crf 默认 20(0-51,越低画质越好);preset 默认 medium。默认样式为白字、2px 黑色描边、透明背景(BorderStyle=3)、底部居中、距帧边 80px,可通过 with.* 覆盖各 --* 标志改变外观。

使用方式与输出:stdout 打印带字幕 MP4 的绝对路径;空 SRT 先打印 SUBTITLES_SKIPPED: empty。两种路径都会在输出目录暂存结果,要求 ffprobe 确认存在可解码且时长为正的视频流,校验通过后才原子替换目标文件。任何编码、复制、探测或输出安装失败均返回非零退出码,stderr 会输出编码器日志最后 2.5 KB 用于诊断。Windows 路径转义由脚本处理:驱动器盘符冒号需反斜杠转义,路径统一使用正斜杠,路径内单引号需反斜杠转义。

依赖与限制:需要 ffmpeg ≥ 5.0(含 libass、libx264、AAC、xfade、zoompan 支持)、匹配发行版的 ffprobe、Noto Sans CJK Regular(由 OpenSquilla 托管,OFL-1.1)、Python 3.8+。脚本通过 PATH 自动定位 ffmpeg,Windows 下若 PATH 继承失败会回退到 winget Gyan.FFmpeg / scoop / chocolatey 安装路径。除上述外,其他功能、收费方式、价格或平台支持情况暂未提供。