Closed CL-Jeremy closed 3 years ago
还是使用 https://github.com/rigaya/VCEEnc 尝试调用
是否必须使用 AviSynth 呢?先多谢
本仓库的vsfiltermod二进制文件为aegisub(avisynth)用 不保证vs兼容性,因为我不用vs
我测试是可以由 Vapoursynth R52
使用的,其中使用插件自动生成的vpy文件如下
import vapoursynth as vs
core=vs.get_core()
clip=core.lsmas.LWLibavSource(r"xxx.mkv")
clip=core.vsf.TextSub(clip,r"xxx.ass")
clip.set_output()
如楼上,可以试试新版本的vapoursynth
主要是因为 README.md 中与 https://github.com/sorayuki/VSFilterMod 比较,所以产生了一些误解 我现在的理解是,本分支并没有取自上述代码库,所以并没有任何 VapourSynth 支持,core.vsf 引用的是自带的 VapourSynth 版 VSFilter,并非 VSFilterMod 无论如何,感谢回复,以及分享新的标签。SSA/ASS 生态过于复杂,个人其实主要使用 macOS,而 libass 项目极为保守,实在十分不便
@CL-Jeremy
啊,抱歉,是我选错了,在Primary subs
中选择vsfiltermod
时产生的脚本如下。
import vapoursynth as vs
core=vs.get_core()
clip=core.lsmas.LWLibavSource(r"xxx.mkv")
clip=core.vsfm.TextSubMod(clip,r"xxx.ass")
clip.set_output()
其实也就是代码 https://github.com/qwe7989199/aegisub_scripts/blob/master/autoload/enc-hsub-VS.lua#L294-L295 中所写的那样。
经测试,可以使用 VSFilterMod_bin 中相应的vsfiltermod版本。但注意一定要根据你使用的vapoursynth版本来选择相应的版本,如64位对应x64
,32位对应Win32
,否则无法正常使用。
像我平时使用的aegisub就是32位的,就得使用32位的vsfiltermod,但vapoursynth是64位的,所以在vapoursynth的插件文件夹里放置的就是64位的vsfiltermod。
另外vapoursynth是可以兼容不少avisynth的插件的。我已经比对过vapoursynth插件文件夹里的相应dll的hash值了,就是 VSFilterMod_bin 中的,不会有错。