字幕结构与范围

云映 ASS 移动字幕:把条目绝对时刻与移动毫秒窗口分开

用四秒条目中的两秒移动,核对等待、移动与停留三个阶段,不把标签值当影片绝对时间。

一个字幕条目从第一秒出现,移动指令中的500却不是影片第五百毫秒的位置。本课在外部制作一份完整 ASS,让锚点先等待、再移动、最后停留,在云映记录当前路径是否呈现相应变化。格式预期、手工时间换算和真实播放观察分别填写,不把未执行的样式兼容写成通过。

一、固定十二秒素材和坐标参照

选择至少十二秒的自有视频,保留原片,确认片中没有本课提示。记录实际时长、方向和适应模式,在纸上画宽640高360的脚本矩形,把横轴向右、纵轴向下标清。脚本坐标属于字幕画布,不等于手机像素;影片上下黑边也不自动属于这个矩形。准备纯文本编辑器和两个不同文件名,不在播放器里寻找没有公开证据的字幕运动制作工具。

二、保存带静态对照的完整文件

下面第一条从一秒至五秒,使用中央锚点沿同一水平线移动;第二条六至十秒停在中点,作为普通定位对照。保留完整样式列与事件列,时间用 ASS 的百分秒写法,移动窗口用毫秒整数。Text字段的反斜线和花括号不要被编辑器改成全角符号。另存为 UTF-8 的 move-window.ass,重新打开核文件内容,再记录是否具有可选的外挂字幕路径。

[Script Info]
ScriptType: v4.00+
PlayResX: 640
PlayResY: 360

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,42,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,1,0,5,20,20,20,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:05.00,Default,,0,0,0,,{\an5\move(100,180,540,180,500,2500)}Track this anchor.
Dialogue: 0,0:00:06.00,0:00:10.00,Default,,0,0,0,,{\an5\pos(320,180)}A fixed anchor.

三、先换算相对窗口再判断画面

第一条生命周期四秒,移动从条目开始后500毫秒启动,到2500毫秒结束。因此影片一至一点五秒应处于起点,一点五至三点五秒为移动段,三点五至五秒为终点停留。把三个绝对时间区间手工列出来,再在旁边写相对毫秒;不能直接把500和2500当影片进度零点五和二点五秒,否则整段预测会提前一秒,和正确选择的视频观察混在一起。

四、用中点复算匀速直线位置

起点横坐标100,终点540,横向差440,纵坐标始终180。相对时刻1500毫秒位于移动窗口中间,锚点在320、180;对应影片二点五秒。这里计算的是锚点,不是句子左边缘。改变字体可能使文字宽度变化,却不改变本课纸面锚点值。不要为了让最左边字恰好经过320就改动位置,先核中央对齐设置,且一次只比较一个坐标或时间条件。

五、云映先顺播再回看运动阶段

在实际入口选择对应视频与字幕,从开头顺播超过十秒。第一条先核文字可读,再分别记开头是否等待、是否移动、末段是否停留。第二条核固定位置是否可见,作为基础加载对照。暂停和跳转可帮助观察一个位置,但顺播结果应单独保存;从中间跳入后看见的位置,不自动证明完整移动时序正确。控制栏和屏幕旋转也应保持一致,避免把界面重排当运动指令的效果。

六、制作只改变窗口的反例

复制原稿,把第一条窗口改为1000至3000毫秒,其他部分原样保留。纸面预期变为影片二至四秒移动,中点位于三秒,而起止位置仍相同。若具备可选路径,再重选副本检查观察是否随之变化。没有变化时先核是否仍选旧文件,不追加第二条move或pos来强迫出现差异。每行只留一套定位或移动命令,避免冲突本身成为新的未知变量。

七、把标签不支持与时间算错分开

文字能读但不动,先核标签格式与加载副本,再分别写静态文字通过、移动未知或未呈现;不能仅凭固定对照可见就宣布运动兼容。若运动全程错开一秒,检查是否漏加条目起始时间,再查实际视频身份。若字幕整体落到画面外,先查脚本尺寸与锚点,不通过调整音轨修复坐标。保存失败稿和所选名称,避免下一轮把正确的源文计算也误删掉。

八、复算非中点位置和终点停留

另外核条目开始后两千毫秒这一点:相对移动起点已过一千五百毫秒,占两秒移动窗口的四分之三,横坐标为一百加四百四十乘四分之三,即四百三十,纵坐标仍一百八十。对应影片第三秒,而不是第二秒。终点在影片三点五秒到达,距离条目五秒结束还有一点五秒停留。把这两个结果写到纸面时间线上,便于发现只算了运动段却忘记末段仍应存在的情况。若在四秒看见终点处的字幕,不应因为它没有继续前进就认定播放卡住;字幕停止运动与视频停止播放需要另外的画面或声音证据区分。

九、交付三段时间与恢复方法

退出并重新进入同一影片,重选原稿,检查第一条三个阶段和第二条固定对照。交付相对窗口、绝对区间、中点换算、实际结果与安装版本,清楚标未知项。恢复普通字幕时另存移除移动覆盖的文字副本,并核同一句仍可读。运动字幕不是影片物体的真实轨迹,本课只研究字幕锚点,不从它的位置推断视频中人物或摄像机是否移动。

相关教程与资料

固定定位、跳转后字幕。

Aegisub: ASS tags。

资料核对:2026 年 11 月 15 日,云映官方说明及Apple公开版本查询列出1.1.1,最低iOS / iPadOS 15.0。练习文件和计算在外部完成,云映用于选择实际来源并观察播放;没有声明真机或私人服务器逐项实测,具体选项以安装版本为准。