我在设置 bash 脚本来自动化某些操作时遇到了一些问题。
我的问题是什么:我翻录了所有蓝光光盘,为我的家人设置了一个个人媒体服务器(例如 Emby)。不幸的是,我的文件包含很多 VOBSUB 或 PGS 字幕,它们不太兼容。因此,我想将它们转换为 SUBRIP。
因此,我需要:
- 提取当前字幕 (MKVToolNix -> mkvextract
- 转换 PGS -> SUB (BDSup2Sub)
- 转换 SUB 到 SRT (VobSub2SRT)
对于第一点,我在 www 中找到了脚本,现在我正尝试通过第二点和第三点来扩展它。
这是我目前拥有的: https://pastebin.com/LVxWQ7QM
当文件夹中只有一个 SUP 文件时,脚本可以完美运行,一旦有第二个文件,第 273 行的检查将不再起作用。示例:文件夹中有 abc.ger.sup 和 xyz.eng.sup
在第 273 行 $SRTNAME= xyz.eng.sup 因此检查不起作用。
希望我的意思能让您清楚,如果不清楚,请告诉我。
任何提示都值得感激。谢谢!
问候
答案1
我使用非常简单有效的一行来转换字幕:
for i in *.ass ; do ffmpeg -i "$i" "$i.srt" ; done
只需根据您的需要进行ass
更改即可。srt