找回密码
 立即注册
楼主: 菜姬

AssFilterMod: 基于libass的DirectShow滤镜

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬  楼主| 发表于 2021-5-3 12:00:32 | 显示全部楼层
苏辰汐 发表于 2021-5-3 11:47
我知道0.15.1合并按需请求字体的pr了,不过好像还是不支持那个按需加载字体的hook轮子?https://bbs.vcb-s ...

我倒是没试 不过大佬提那个PR的一个原因之一就是这个轮子 所以按理说应该是能用的
回复

使用道具 举报

5

主题

492

回帖

215

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
368961
苏辰汐 发表于 2021-5-3 12:12:31 | 显示全部楼层
菜姬 发表于 2021-5-3 12:00
我倒是没试 不过大佬提那个PR的一个原因之一就是这个轮子 所以按理说应该是能用的
...

有空可以测试看看,我昨天用最新编译的mpv就没有实现按需加载字体,今天用这个libass的xysub测试也没有成功,不清楚什么原因。另外我刚才提的内封ass阴影边框不正常也需要排查下,mpv里是写sub-ass-force-style=ScaledBorderAndShadow=no 的参数之后无论内封外挂ass都正常了,libass应该是ScaledBorderAndShadow=0?
回复

使用道具 举报

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬  楼主| 发表于 2021-5-3 12:24:51 | 显示全部楼层
苏辰汐 发表于 2021-5-3 12:12
有空可以测试看看,我昨天用最新编译的mpv就没有实现按需加载字体,今天用这个libass的xysub测试也没有成 ...

你这个字幕里就是
ScaledBorderAndShadow: yes
啊…
回复

使用道具 举报

5

主题

492

回帖

215

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
368961
苏辰汐 发表于 2021-5-3 13:07:48 | 显示全部楼层
菜姬 发表于 2021-5-3 12:24
你这个字幕里就是
ScaledBorderAndShadow: yes
啊…

我发的那个字幕是外挂的啊,是用来测试字体是否能够按需加载的,它的阴影边框显示没问题(,我两个楼说的不同的问题,18#才说的阴影边框问题,你应该知道有些人做字幕不指定ScaledBorderAndShadow值(特别老字幕遗留问题,VSFilter对此默认不缩放,libass默认缩放,也就导致了libass下重墨风格,比如11#提到的就是。现在比较迷惑的就是libass版xysub加载11#那个字幕时它的阴影边框模仿了VSFilter系行为不缩放,我又测试了个内封字幕后发现又是ibass默认缩放行为,这两种不同的行为给搞糊涂了。把内封字幕抽出来看下果然也没指定ScaledBorderAndShadow值,然而这字幕外挂下还是ibass默认缩放的重墨风。这种本质是制作字幕时的不规范导致的问题,然而手动一个个去改字幕或者内封抽出来改掉再封是不太现实的,工作量也大,实际在xysub里加个ScaledBorderAndShadow的开关选项更为合理方便,像mpv就可以写sub-ass-force-style=ScaledBorderAndShadow=no 参数来处理对应情况,不然libass遇到这种字幕就抓瞎了(尤其老字幕这种遗留问题还挺常见的。
回复

使用道具 举报

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬  楼主| 发表于 2021-5-3 13:22:30 | 显示全部楼层
苏辰汐 发表于 2021-5-3 13:07
我发的那个字幕是外挂的啊,是用来测试字体是否能够按需加载的,它的阴影边框显示没问题(,我两个楼说的 ...
Default ScaledBorderAndShadow to 0 (like VSFilter), except for subtitles that were produced by old FFmpeg/Libav
0.15.0 已经设置默认的ScaledBorderAndShadow为0了,只是检测到是老版本FFmpeg/Libav生成的才会默认设置为1
回复

使用道具 举报

5

主题

492

回帖

215

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
368961
苏辰汐 发表于 2021-5-3 13:32:32 | 显示全部楼层
本帖最后由 苏辰汐 于 2021-5-3 13:50 编辑
菜姬 发表于 2021-5-3 13:22
0.15.0 已经设置默认的ScaledBorderAndShadow为0了,只是检测到是老版本FFmpeg/Libav生成的才会默认设置 ...

Release里是这么写的,但实际测试中这种会被缩放导致阴影边框不正常的情况较为频繁,毕竟高发区本身就是不规范的老字幕,ScaledBorderAndShadow=0并不会生效(值为1),还是要手动指定ScaledBorderAndShadow值才能决定缩放行为,mpv下之前就有过相应issue反馈,这个一度困扰了我很久,还是前不久在vcb论坛的那个mpv教程里找到的解决方案。

PS:懂了,你是说导致两种不同缩放行为的原因,把这茬给忘了(
回复

使用道具 举报

2

主题

35

回帖

0

VC币

至尊会员

Rank: 16Rank: 16Rank: 16Rank: 16

积分
262369
Apache553 发表于 2021-5-3 13:34:06 | 显示全部楼层

回帖奖励 +1000 活跃度

苏辰汐 发表于 2021-5-3 11:47
我知道0.15.1合并按需请求字体的pr了,不过好像还是不支持那个按需加载字体的hook轮子?https://bbs.vcb-s ...

因为只hook了CreateFont*那一套函数 libass用的是directwrite那一套 并没有hook到
回复

使用道具 举报

5

主题

492

回帖

215

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
368961
苏辰汐 发表于 2021-5-3 13:40:02 来自手机 | 显示全部楼层
Apache553 发表于 2021-5-3 13:34
因为只hook了CreateFont*那一套函数 libass用的是directwrite那一套 并没有hook到

原来如此,怪不得测试libass 0.15.1版本也没法使用大佬的那个按需加载字体的轮子,残念,多谢解惑。
回复

使用道具 举报

1

主题

12

回帖

0

VC币

中级会员

Rank: 3Rank: 3

积分
2155
lanchuyu 发表于 2021-5-3 13:54:49 | 显示全部楼层

回帖奖励 +1000 活跃度


佩服大佬,下载来测试下。
回复

使用道具 举报

17

主题

85

回帖

280

VC币

中级会员

Rank: 3Rank: 3

积分
6155

崭露头角BD!

LzNO_Hentai 发表于 2021-5-3 16:57:26 | 显示全部楼层

回帖奖励 +1000 活跃度

当初知道这个字幕渲染滤镜还是因为某个特效字幕xy subfilters性能不够才尝试的,确实性能更高,不过原作者很久没更新了也有一些bug所以后来放弃了,有人接手帮大忙了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表