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

AssFilterMod: 基于libass的DirectShow滤镜

  • TA的每日心情
    慵懒
    2019-6-5 17:57
  • 签到天数: 22 天

    [LV.4]偶尔看看III

    49

    主题

    461

    回帖

    2581

    VC币

    星辰大海

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

    积分
    1781933

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

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

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

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-12-23 15:09
  • 签到天数: 42 天

    [LV.5]常住居民I

    5

    主题

    467

    回帖

    195

    VC币

    星辰大海

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

    积分
    365963
    苏辰汐 发表于 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?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-6-5 17:57
  • 签到天数: 22 天

    [LV.4]偶尔看看III

    49

    主题

    461

    回帖

    2581

    VC币

    星辰大海

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

    积分
    1781933

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

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

    你这个字幕里就是
    ScaledBorderAndShadow: yes
    啊…
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-12-23 15:09
  • 签到天数: 42 天

    [LV.5]常住居民I

    5

    主题

    467

    回帖

    195

    VC币

    星辰大海

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

    积分
    365963
    苏辰汐 发表于 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遇到这种字幕就抓瞎了(尤其老字幕这种遗留问题还挺常见的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-6-5 17:57
  • 签到天数: 22 天

    [LV.4]偶尔看看III

    49

    主题

    461

    回帖

    2581

    VC币

    星辰大海

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

    积分
    1781933

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

    菜姬  楼主| 发表于 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
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-12-23 15:09
  • 签到天数: 42 天

    [LV.5]常住居民I

    5

    主题

    467

    回帖

    195

    VC币

    星辰大海

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

    积分
    365963
    苏辰汐 发表于 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:懂了,你是说导致两种不同缩放行为的原因,把这茬给忘了(
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-7-23 19:50
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    2

    主题

    35

    回帖

    0

    VC币

    至尊会员

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

    积分
    258473
    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到
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-12-23 15:09
  • 签到天数: 42 天

    [LV.5]常住居民I

    5

    主题

    467

    回帖

    195

    VC币

    星辰大海

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

    积分
    365963
    苏辰汐 发表于 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 活跃度


    佩服大佬,下载来测试下。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2022-3-14 12:50
  • 签到天数: 25 天

    [LV.4]偶尔看看III

    17

    主题

    82

    回帖

    280

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    6118

    崭露头角BD!

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

    回帖奖励 +1000 活跃度

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

    使用道具 举报

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

    本版积分规则

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