杂志撕纸风 Motion Graphics · 制作流程手册(Magazine Collage MG)
适用对象:需要按统一规范批量制作「杂志撕纸风」竖屏短视频的创作者与自动化制作 Agent。
目标:依据旁白文案,产出规格、风格、质量与本手册一致的成片。
验收基准:1080×1920 / 30fps / 片长与旁白时长对齐(误差 ≤1 帧)/ 无烧录字幕 / 无顶栏制作标题 / 无分镜序号 / 语义元素零遮挡(定格帧包围盒间隙 ≥24px,或分时互斥)/ 内容不越出安全区 / 字号与道具使用真实像素尺寸 / 成片整体响度 -11.5 ~ -13 LUFS、真峰 < 0 dBTP / 关键帧读图抽检通过。中文全称:杂志撕纸风 Motion Graphics
英文名:Magazine Collage MG配套资源:magazine-collage-mg-template.zip(文末可下载)。手册规定流程与硬性标准;实现细节以模板包内引擎与工具为准。
1. 成品风格
- 形态:1080×1920 竖屏 分镜拼接式 Motion Graphics——每镜独立渲染,再按旁白时间轴拼接。它不是一镜到底的长卷漫游,也不是「上半字卡、下半实拍」结构。
- 视觉:
- 底色奶油纸感
#E8DAC8(约(232,218,200)) - 牛皮纸 / 奶油纸 撕边拼贴,带轻投影
- 点缀朱红
#BE0C20(约(190,12,32)) - 正文墨黑
#0E0C0A - 使用开源图标(如 Lucide、Tabler)与撕纸贴图;禁止用纯色几何块冒充纸材质感
- 底色奶油纸感
- 信息结构:以 场景化演示 为主(工位、迷你界面、招聘墙、关系轴、入口等);文字只承担 标签与结论句(punchline),避免整屏变成「撕纸字卡墙」。
- 安全区:见第 2 节;所有语义内容必须落在内容容器内。
- 字体与尺寸:PingFang SC(苹方)。禁止用全局字号倍率或定格缩放「凑大小」——生成素材时就按目标像素绘制,定格贴图比例为 1.0。
- 音频:火山引擎 TTS 小天 2.0 旁白,再按第 3 节参数混入 BGM。禁止在成片中烧录硬字幕。
- 成片禁用:
- 仅供制作参考的顶栏标题(如「Bot中心」「同一错误」「收束」)
- 画面角落的分镜序号
- 宗教、光环、膜拜类意象(旁白若出现相关隐喻,画面改用抽象的「统一智能层 / 意图入口」)
- 语义元素互相遮挡
2. 画布与安全区
| 项目 | 规范 |
|---|---|
| 分辨率 | 1080 × 1920(9:16) |
| 帧率 | 30 fps |
| 成片封装 | H.264 + AAC,.mp4 |
| 片长 | 等于旁白时长(拼接后与旁白对齐,误差 ≤1 帧) |
2.1 安全区内边距
| 边 | 常量 | px | 说明 |
|---|---|---|---|
| 左 | SAFE_L | 64 | 避免贴边被裁 |
| 右 | SAFE_R | 128 | 为平台右侧互动栏预留更宽边距 |
| 上 | SAFE_T | 220 | 状态栏、账号信息行 |
| 下 | SAFE_B | 360 | 文案条、音乐栏、底栏控件 |
2.2 内容容器
SAFE_BOX = (64, 220, 952, 1560)
SAFE_W = 888
SAFE_H = 1340
- 分镜内容在
SAFE_W × SAFE_H图层内完成后,再贴回全帧坐标(SAFE_L, SAFE_T)。 - 容器外只保留奶油底色,不要放置关键文字或图标。
- 软阴影可略微溢出约 24px;实心色块与文字轮廓必须留在容器内。
2.3 模板引擎接口(摘要)
new_frame():创建全帧背景与空白内容层safe_blit(...):在内容层坐标系内贴图commit_frame(...):将内容层合成回安全区位置
3. 配音与混音
3.1 旁白
| 项目 | 规范 |
|---|---|
| 引擎 | 火山引擎 TTS |
| 音色 | 小天 2.0(本模板锁定音色) |
| 文稿 | 使用项目提供的旁白原文,不擅自改写或删句 |
| 输出 | build/audio/narration.m4a(或 .mp3)整段文件 |
| 时间对齐 | 使用 faster-whisper(或同等词级 ASR)导出词级时间戳 |
| 分镜时长 | 以真实旁白时间轴为准,禁止仅按文案字数估算后硬切 |
3.2 BGM 与混音参数
将选定的背景音乐命名为 bgm.mp3,放到项目或模板约定的 BGM 目录(见模板说明)。混音参数固定如下,不随曲目更改:
| 步骤 | 规范 |
|---|---|
| 旁白响度 | loudnorm 归一到 -14 LUFS |
| 旁白再增益 | +2 dB(约 -12 LUFS,并做峰值限幅) |
| BGM 音量 | ffmpeg volume=0.22(约 -21.3 LUFS) |
| 闪避 | 不使用侧链闪避 |
| 淡入 / 淡出 | BGM 1.5s / 5.5s |
| 成片整体 | -11.5 ~ -13 LUFS,真峰 < 0 dBTP |
| 人声相对 BGM | 约保持 9 LU 优势 |
具体命令封装在模板 template/tools/mix.py。
3.3 字幕
- 成片母带不烧录 ASS/SRT。
- 信息由旁白、场景演示与少量关键词标签共同承担。
- 平台分发若需字幕,使用发布端自动字幕即可,不写入母带画面。
4. 画面内容规范
4.1 场景化,而不是字卡墙
| 推荐 | 避免 |
|---|---|
| 具象道具:待办堆、助手堆、居中的用户、专家工位、迷你 App、招聘墙、入口、关系轴、网络节点 | 整镜只有一张大号标题撕纸 |
| 文字作标签、印章、结论句 | 同一句口号叠两层重复出现 |
| 结论句进场时,会遮挡的场景先淡出 | 定格时文字压文字、卡片压卡片 |
4.2 零语义遮挡
- 带文字或语义图标的元素,在定格帧上包围盒 不得相交;推荐间隙 ≥24px(标题与印章等关键组合可 ≥56px)。
- 空白装饰牛皮纸可以垫在一组元素后方,但牛皮纸上 不能再写字,也不能裁切上层语义内容。
- 需要结论句时,优先采用 时间互斥(场景淡出后再出句),而不是叠在未退场的界面上。
- 交付前对每镜中间帧、3/4 帧与末帧做重叠检测,并对关键帧做人工读图。
4.3 字号与尺寸(真实像素)
禁止使用全局字号倍率或道具倍率;禁止在定格状态用 0.55~0.85 的缩放硬塞过大素材。入场动画(约 0.2–0.4 秒)允许短暂缩放,定格必须为 1.0,素材在生成阶段就按目标像素准备。
| 角色 | 最小字号(px) |
|---|---|
| 标签 / 道具说明 | ≥42 |
| 英文次级标签 | ≥36 |
| 结论句 / 条幅 | ≥52 |
| 中心节点标题 | ≥48 |
| 中心节点副标题 | ≥36 |
| 招聘条 / 标签页 / 面包屑 | ≥40 |
| 装饰性微字 | 尽量不用;若保留 ≥36 |
字体文件路径约定为工程内 assets/fonts/PingFang.ttc。模板包不附带苹方字体文件,需在运行环境中自行放入合法授权副本。
4.4 动效与停留
- 关键信息建议停留 不少于约 1.5 秒(旁白节奏紧时,可提前引入元素以累积可见时间)。
- 演示节奏跟随词级时间戳,避免结论句早于旁白出现。
- 动效语汇以纸片滑入、印章落下、标签撕离、元素收敛成轴为主,保持 Motion Graphics 质感,避免简单翻页感。
4.5 色彩与材质
| 名称 | 值 |
|---|---|
| 奶油底 | (232, 218, 200) |
| 朱红 | (190, 12, 32) |
| 墨色 | (14, 12, 10) |
| 撕纸材质 | 模板 assets/paper(完整素材包,见包内说明与授权文件) |
| 图标 | Lucide / Tabler 等可商用线标 |
5. 模板包与目录
下载并解压 magazine-collage-mg-template.zip:
magazine-collage-mg-template/
├── README.md
├── template/ ← 引擎与工具
│ ├── engine/ ← 安全区、道具与参考渲染
│ ├── tools/ ← 新建项目 / 旁白对齐 / 混音
│ └── assets/ ← 纸张、图标、BGM 目录、字体说明
└── example/ ← 示例分镜纲要与配置
每个新视频对应一个独立项目目录(由 new_video.py 创建):
<视频项目>/
├── script.txt ← 旁白原文
├── config.json ← 画布、安全区、混音与路径
├── storyboard.md ← 分镜场景说明
├── assets/ ← 字体、BGM、可覆盖素材
└── build/
├── audio/ ← 旁白、时间戳、混音中间文件
├── shots/ ← 各分镜成片
├── out/ ← 拼接后的仅旁白审片
├── stills/qa/ ← 抽帧质检
└── final.mp4 ← 成片
6. 制作流程
Step 0 · 创建项目
cd magazine-collage-mg-template/template/tools
python3 new_video.py ../../my-mg-video
将旁白原文写入 script.txt。
确认点 1:分镜纲要——完成 storyboard.md(每镜场景、对应旁白、预计时长)并确认后再进入配音与渲染。
Step 1 · 配音(小天 2.0)
使用火山引擎小天 2.0 生成整段旁白,保存为 build/audio/narration.m4a。
确认点 2:试听——确认音色、断句与读法无误。
Step 2 · 词级时间轴
python3 align_vo_whisper.py ../../my-mg-video
导出词级时间戳,并据此生成各镜起止时间。用真实旁白时长覆盖文案估算。
Step 3 · 制作分镜画面
在安全区内按本手册的杂志撕纸风规范完成场景演示(可参考 example/storyboard.md)。每镜导出到 build/shots/。
每镜自检:
- 无制作向顶栏标题、无分镜序号
- 定格无语义遮挡
- 字号满足第 4.3 节下限;定格贴图比例为 1.0
- 内容位于安全区内
- 关键信息停留充足,并与词级拍点对齐
Step 4 · 拼接
按时间表裁切或补帧后拼接(模板示例入口为 assemble_full_v6w.py),得到 仅旁白 审片:build/out/FULL_cut_v6w_vo_only.mp4。
Step 5 · 画面质检
每镜抽取中间帧与末帧(及关键拍点):
- 检查安全区、遮挡、字号与场景是否足够具象
- 不通过则回到 Step 3
确认点 3:画面审片——确认场景表达清楚、规范满足后再混音。
Step 6 · 混音出片
确认项目内已放置 bgm.mp3 后执行:
python3 mix.py ../../my-mg-video --mux ../../my-mg-video/build/out/FULL_cut_v6w_vo_only.mp4
得到项目下的 build/final.mp4,并校验整体响度与真峰。
确认点 4:成片终审——通过后即可发布。
7. config.json 字段说明
{
"title": "my-mg-video",
"width": 1080,
"height": 1920,
"fps": 30,
"safe": { "l": 64, "r": 128, "t": 220, "b": 360 },
"voice": { "provider": "volcengine", "speaker": "小天2.0" },
"mix": {
"narration_lufs": -14,
"narration_gain_db": 2,
"bgm_volume": 0.22,
"bgm_fade_in_s": 1.5,
"bgm_fade_out_s": 5.5,
"program_lufs_range": [-13, -11.5]
},
"rules": {
"burn_subs": false,
"masthead": false,
"shot_index": false,
"min_label_px": 42,
"min_punch_px": 52,
"min_overlap_gap_px": 24,
"min_dwell_s": 1.5,
"settle_blit_scale": 1.0,
"type_scale": 1.0,
"prop_scale": 1.0
}
}
8. 分镜表达示例
具体文案随项目变化;下列句式用于避免退回「纯字卡」:
| 类型 | 画面怎么演 |
|---|---|
| 对比问题 | 左侧任务堆、右侧助手堆、中间用户,箭头指向用户 |
| 助手中心 | 多专家工位环绕,用户站在岔路,印章提出「找哪个专家?」 |
| 任务中心 | 迷你 App 窗口分层叠放,路径面包屑逐渐变长 |
| 常见误区 | 招聘墙,强调「按角色寻找 AI」 |
| 转折 | 旧标签撕离,留下统一网络节点(避免宗教意象) |
| 意图举例 | 气泡旁配合日历、计划卡、幻灯片、提醒或入库箭头 |
| 关系与收束 | 碎片收敛成连续关系轴;中心节点与轨道词收束主题 |
更完整的示例见模板包 example/storyboard.md。
9. 发布前检查清单
- 1080×1920 @ 30fps;时长与小天 2.0 旁白一致
- 无烧录字幕;无制作向顶栏标题;无分镜序号
- 安全区 L64 / R128 / T220 / B360;语义内容未出界
- 零语义遮挡(检测通过 + 关键帧目视)
- 未使用全局尺寸倍率;定格比例为 1.0;字号下限满足
- 画面以场景演示为主,仅看画面也能理解旁白重点
- 抽象概念不用宗教化视觉;统一智能表现为节点或入口
- 混音:整体 -11.5~-13 LUFS,真峰 < 0 dBTP;BGM
volume=0.22,淡入 1.5s / 淡出 5.5s - 四个确认点均已完成
10. 与同系列其它短视频模板的区别
本站另有黑板长卷、字卡影等模板。选型时可按结构区分:
| 杂志撕纸风 MG | 黑板长卷 | 字卡影 | |
|---|---|---|---|
| 结构 | 多镜 MG 拼接 | 一镜到底无限画布 | 上半文字卡、下半影像 |
| 常见技术栈 | Python + Pillow + ffmpeg | HyperFrames | Remotion |
| 旁白 | 小天 2.0 | 其它 TTS 方案 | 视项目而定 |
| 字幕策略 | 母带不烧录 | 打字机即正文 | 字卡即正文 |
| 安全区 | L64 / R128 / T220 / B360 | 上下 300、左右 100 | 左右 100,垂直居中 |
模板工程包
下载 magazine-collage-mg-template.zip
解压后先阅读包内 README.md,再按本手册第 6 节执行。更换背景音乐时,只需替换约定路径下的 bgm.mp3;请勿修改混音脚本中的响度与淡入淡出参数。