ssnake
发表于 2020-10-27 08:15:44
vxzms 发表于 2020-10-27 07:09
libass 是挺好,但是分支过多,Aegisub、mpv、nPlayer 的 libass 渲染效果就可能不尽相同
按 ASS 规范来使 ...
这个问题 VSFilter 同样存在啊(
凭印象大致区分一下:
VSFilter 2.23 以前
VSFilter 2.24-2.28
VSFilter 2.29-2.33 (以及差不多这个时候进 guliverkli 的分支)
guliverkli / guliverkli2 的 VSFilter 2.34-2.37
guliverkli / guliverkli2 的 VSFilter 2.38-2.39
MPC-HC 项目的 VSFilter 2.40-2.41
clsid2 重新回来维护的 VSFilter 2.39-2.41
KMPlayer、PotPlayer 魔改的VSFilter(不知道是从哪个版本开始的)
xy-VSFilter (以及pfmod)
这些渲染效果都不一样(比如 \blur )
再加上 VSFilterMod 和其的几个分支……
vxzms
发表于 2020-10-27 09:34:11
ssnake 发表于 2020-10-27 08:15
这个问题 VSFilter 同样存在啊(
凭印象大致区分一下:
正常使用最新版本的话,观众会遇到的一般也就 MPC-HC / BE 的 VSFilter、PotPlayer 的 VSFilter 以及 xy-VSFilter(pfmod 和原版的渲染效果差别有多大我没仔细看过不太清楚,现在应该都换 pfmod 了吧,我下面说的 xy-VSFilter 也都默认为 pfmod),看似繁杂的 VSFilter 版本最后都可以统一用更换为 xy-VSFilter 来解决(这类教程多如牛毛也很简单,mod 不在讨论范围内)
现在字幕制作者使用的 Aegisub 的 xy-VSFilter、内嵌压制使用的 AviSynth / Vapoursynth 版 xy-VSFilter、观众使用的 xy-VSFilter / XySubFilter 是可以在最新版本的情况下保证渲染效果一致的,代价是牺牲了 libass 观众的部分体验,只能通过字幕制作者(目前不成体系)的经验、观众的反馈来不断对 ASS 标签、使用字体来进行取舍
libass 作为主体的话做到字幕制作、内嵌压制、外挂观看三者统一比 xy-VSFilter 更麻烦,所要付出的精力和代价也要更高(虽说我看国外字幕组很早就全线更换为 libass,但我不太清楚他们是怎么做到的),而造成这个问题的原因就是分支过多且没有一个简易普适的版本或者分支(虽说全平台同一渲染效果的愿景很棒
ssnake
发表于 2020-10-27 09:43:51
本帖最后由 ssnake 于 2020-10-27 09:53 编辑
vxzms 发表于 2020-10-27 09:34
正常使用最新版本的话,观众会遇到的一般也就 MPC-HC / BE 的 VSFilter、PotPlayer 的 VSFilter 以及 xy- ...
嗯说的没错,不过 VSFilter 统一成 xy 其实也不太现实,比如我印象中 tonyhsie 用的就是 MPC-HC (还是 BE ?)的 VSFilter 。
而 libass 之所以复杂一些,也是因为它跨平台,依赖库多(VSFilter 反正是 Windows GDI ,当然也只用考虑 Windows 的表现)。
不同版本的 FriBiDi 之类的,渲染效果确实也不一样。
另外还有在不同平台上用了特定平台的 API (比如 macOS 的 CoreText ),以及依赖库用到的特定平台 API 。
代码分支(fork)的意义上反而没什么问题,毕竟 libass 开发上是 DOTADIW 的 Unix 思维……
总之跨平台本身就是一个难事……
P.S. 外国字幕组的话,就我知道的范围,用 libass 的主要也是不考虑特效的。
当然复杂特效老实说内嵌就好了,考虑外挂(精简)、还要考虑兼容的话太心累。
P.S.2. 制作、内嵌、外挂三统一的话,我倒是觉得 libass 更合适。否则就必须要求字幕作者、内嵌压制者、观众都是 Windows 了。另外基于 libass 制作的代码兼容 VSFilter 的可能性,比基于 VSFilter 的代码兼容 libass 的可能性高(但前者也不是 100% )。
SweetSub
发表于 2020-10-27 10:08:09
我之前尝试在从字幕制作开始就只采用 libass,然后在发布的时候告诉观众用 libass 观看。
然后就有人留言问我,Windows 上除了 mpv、vlc 还有哪个播放器能用 libass 的。
我一下子被问倒了…
遂只有继续费心费事测试兼容性
vxzms
发表于 2020-10-27 10:46:21
ssnake 发表于 2020-10-27 09:43
嗯说的没错,不过 VSFilter 统一成 xy 其实也不太现实,比如我印象中 tonyhsie 用的就是 MPC-HC (还是 BE ...
播放器和渲染滤镜的统一是 VCB-S 这么多年来在极力推广的(嗯…可以坐享其成
libass 的可能性、兼容性还有可维护性的确要比 VSFilter 系要好得多,只能说未来很美好(以这个圈子的活力也不知道几年才能看到
(再说字幕作者、内嵌压制者一般都是同一人,压制用 Win 很难绕过去
Seekladoom
发表于 2020-10-27 11:16:54
中津静流口ω< 发表于 2020-10-27 06:48
这就是怎么说呢,类似那种“我可以不用,但你不能没有”的情况了,准确说这个效果是“你可以放不动,但我 ...
这问题得把TCAX的那堆特效脚本理一遍才行,以前TCAX的问题处理流程其实也不是很规范,导致用TCAX做特效时的自定义和灵活度不够。{:4_987:}
787633258
发表于 2020-10-27 12:01:31
vxzms 发表于 2020-10-27 10:46
播放器和渲染滤镜的统一是 VCB-S 这么多年来在极力推广的(嗯…可以坐享其成
libass 的可能性、兼容性还 ...
压制的话,vapoursynth的内建字幕滤镜用的是libass,也能跨平台。
tonyhsie
发表于 2020-10-28 04:00:10
本帖最后由 tonyhsie 于 2020-10-28 04:02 编辑
787633258 发表于 2020-10-27 12:01
压制的话,vapoursynth的内建字幕滤镜用的是libass,也能跨平台。
如果字幕檔案,只是要用來壓製內嵌,並不考慮釋出內掛或外掛字幕檔的話
那麼只要壓製跟字幕作者用同一個環境就好,不需要考慮 end user 的播放環境
這樣的情況相對單純很多,不管 user 端是使用 libass 系或是 vsfilter 系,都完全不影響播放結果
對於這類可能無法即時運算,或是可能有 libass/vsfilter 問題的字幕特效,如果要釋出內掛/外掛字幕的話
有些字幕組的作法,是對內/外掛字幕進行特效閹割
去除較為花俏複雜的部分,只留下不會造成播放負擔的特效
我想這也不失為一種不錯的妥協方案吧
小吉炖蘑菇
发表于 2020-10-28 13:04:15
本帖最后由 小吉炖蘑菇 于 2020-10-28 13:23 编辑
tonyhsie 发表于 2020-10-26 04:13
切了 OP 的部分給大家試試
mkv里的 俩字幕有什么区别吗?我对比了半天,没看出来
=========================================
我挑了一段简繁一样的对比了半天。。。
Jalapeño
发表于 2020-11-4 18:45:47
https://github.com/libass/libass/releases/tag/0.15.0
Libass 最新的 0.15.0 加入了大量的改动以使得字幕渲染效果尽可能与 vsfilter 相匹配