国语视界

 找回密码
 立即注册
查看: 9550|回复: 11

[字幕技术] Aegisub脚本运用4:Font Resize篇 特效防抖

[复制链接]

31

主题

1324

帖子

1813

积分

营长

大洋
102549
阅读权限
50
发表于 21-7-12 21:31 | 显示全部楼层 |阅读模式
本帖最后由 zhanglangcn 于 21-7-14 14:03 编辑

前期回顾
Aegisub脚本运用1:Merge Bilingual SUBS篇 合并中英字幕https://cnlang.org/thread-86347-1-1.html
Aegisub脚本运用2:Utilities篇1 SDH字幕处理与对白检查https://cnlang.org/thread-86368-1-1.html
Aegisub脚本运用3:Utilities篇2 我想给特效换个位置https://cnlang.org/thread-86620-1-1.html


前言
想了好久,还是决定用几篇教程介绍以下我写的脚本的使用方法以及能够实现的功能。
首先先声明以下这一系列教程将不会包括:
1. 什么是脚本,脚本是用来干嘛的
2. Aegisub脚本要如何安装
3. 脚本快捷键如何设置
4. Yutils是什么,要怎么安装,(但其是实现脚本功能的一个非常重要的库,请自行按照https://cnlang.org/forum.php?mod=viewthread&tid=85654或百度教程安装)

所有我的脚本都保存在我的GitHub仓库内,地址https://github.com/zhang-changwei/Automation-scripts-for-Aegisub喜欢的大佬可以为我加star,遇到问题可以直接issue中提出,我在GitHub的回复肯定比在论坛提问回复及时。我会在7月上旬发布一次release,在此之前请直接下载源码

这一节将会介绍C Font Resize的原理以及它的使用方法。这个脚本是我的正式项目中的第一个脚本,无交互界面,使用起来非常方便,它也是我制作特效中使用频率最高的脚本

使用前的一点说明:脚本生效的作用域
使用过这个脚本的各位大佬想必已经非常了解这个脚本想要实现的功能了,它的设计用意就是用来解决特效字幕的抖动问题的。
脚本所能解决的抖动由以下原因造成:vsfilter mod无法以浮点数精度展现字幕的fs,fscx,fscy属性,导致字幕缩放在整数百分数间跳变,即使mocha数据为fscx=99.0->99.3->99.5->99.9->100.1,实际的显示缩放效果为fscx=99->99->99->99->100,这种在不同缩放大小下的反复跳变被特效字幕制作者称为抖动。识别这种抖动的一种简单有效方法即为观察字幕有无突然变大变小的现象。
对其他原因造成的字幕抖动,本脚本无效。


基础用法
静态字幕不存在上述的抖动问题,故而脚本最典型的应用场景即在需要进行mocha追踪的字幕行上。
使用步骤为:
1. 正常确定字幕时间轴,制作特效并使用mocha软件追踪。
2.(在导入mocha数据前)选中该行字幕,运行脚本一次,若观察到fs值减小约10倍,fscx,fscy值增大约10倍,脚本运行成功
3.应用mocha数据(apply),完成。
下面这张图展示了未使用脚本的效果,可以发现方块横向放大有很明显的不连续现象

下面这张图展示了使用脚本后的效果,可以发现方块的横向放大明显平滑



其他用法
因为脚本是支持多行操作的,因而若在应用mocha数据前未应用该脚本,也可以通过对mocha的生成行操作实现防抖。
使用方法:选中该特效点所有mocha生成行运行脚本即可。
选中

运行脚本后



切勿水贴!!!

评分

参与人数 3威望 +50 大洋 +3500 收起 理由
开心兔 + 500 厉害了我的神!
bobo + 2000 厉害了我的神!
why1812 + 50 + 1000 厉害了我的神!

查看全部评分

20

主题

5287

帖子

1280

积分

营长

大洋
23539
阅读权限
50
发表于 21-7-13 07:47 | 显示全部楼层
学习了,追踪抖动是一个挺讨厌的问题。感谢大佬分享。
回复 支持 反对

使用道具 举报

61

主题

3870

帖子

2931

积分

营长

大洋
90480
阅读权限
50
发表于 21-8-18 01:04 | 显示全部楼层
本帖最后由 kevenbjx 于 21-8-18 01:05 编辑

C:\Users\xjb\Desktop\QQ图片20210818010208.png
你好,请问这个防抖脚本载入失败是什么原因,谢谢!
回复 支持 反对

使用道具 举报

61

主题

3870

帖子

2931

积分

营长

大洋
90480
阅读权限
50
发表于 21-8-18 01:07 | 显示全部楼层
你好,请问一下,这个脚本在载入时,提示失败是什么原因?谢谢!
回复 支持 反对

使用道具 举报

4

主题

1454

帖子

362

积分

排长

大洋
22381
阅读权限
30
发表于 21-9-13 03:58 | 显示全部楼层
总算找到解决方法了
不过这个问题应该是娘胎里带来的,老版本的VSFilter(v2.39)也有同样的问题,但3.0版本的OK,所以VSFilterMod应该是基于老版本VSFilter制作的
楼主有精力的话,要不要考虑做个基于3.0版本的VSFilterMod
回复 支持 反对

使用道具 举报

10

主题

122

帖子

208

积分

排长

大洋
526
阅读权限
30
发表于 21-11-14 12:14 | 显示全部楼层
本帖最后由 JAJOO 于 21-11-14 21:35 编辑

请问这个脚本只能在ass转sup之后起效果吗?我刚才用了一下,用potplayer播放视频载入ass字幕仍然会抖

并且在大金中导入使用防抖脚本的sup字幕时会报错

The Decoded Object Buffer(DB) overflows. limit size=4194304, occupancy size=4288691
回复 支持 反对

使用道具 举报

1

主题

79

帖子

13

积分

列兵

大洋
150
阅读权限
10
发表于 22-9-7 20:39 | 显示全部楼层
我还以为这些是AE做的呢
回复 支持 反对

使用道具 举报

9

主题

534

帖子

925

积分

连长

大洋
736
阅读权限
40
发表于 22-11-11 23:53 | 显示全部楼层
还有学习中.确实很强大.
回复 支持 反对

使用道具 举报

2

主题

343

帖子

52

积分

列兵

大洋
4200
阅读权限
10
发表于 23-2-2 01:29 | 显示全部楼层
感谢大佬,解决了我一大难题
回复 支持 反对

使用道具 举报

0

主题

23

帖子

3

积分

列兵

大洋
50
阅读权限
10
发表于 23-8-13 19:08 | 显示全部楼层
非常棒的脚本,可惜提示载入失败

19:07:06: A script in the Automation autoload directory failed to load.
Please review the errors, fix them and use the Rescan Autoload Dir button in Automation Manager to load the scripts again.
19:07:06: 一个自动化脚本载入失败,文件名: 'C:\Program Files (x86)\Aegisub\automation\autoload\C Font Resize.lua',错误报告:
[string "C:/Program Files (x86)\Aegisub\automation\aut..."]:7: unexpected symbol near '<'
回复 支持 反对

使用道具 举报

0

主题

55

帖子

7

积分

列兵

大洋
302
阅读权限
10
发表于 23-12-20 16:44 | 显示全部楼层
感谢大佬,慢慢学习
回复 支持 反对

使用道具 举报

114

主题

7657

帖子

1805

积分

营长

大洋
2002
阅读权限
50
发表于 24-2-1 12:14 | 显示全部楼层
学习学习使人进步
回复 支持 反对

使用道具 举报

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

本版积分规则

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