# ♉ 项目九（全新制作）：金牛座 · 慢慢来，也能抵达美好（taurus/）

> 一支 **约 4 分 10 秒** 的华丽网页动画，讲解黄道第二宫 **金牛座（Taurus）**：最古老的星座之一、如何在冬夜找到“公牛的眼睛”毕宿五、昴星团与斯巴鲁、北宋天文官记录的“天关客星”（蟹状星云）、宙斯化身白牛与欧罗巴的神话、♉ 符号的含义、占星文化中的金牛性格，
> 并在高潮处为金牛座观众颁发一张 **「金牛座 · 鎏金珍藏卡」**——像一张限量收藏卡：可以写上自己的名字，卡片会在视频中翻转亮相、盖上认证印章；也能单独保存为手机壁纸 / 头像 / 收藏卡图片。
>
> **理念**：不否认星座不是科学，但把它当作一份有趣、浪漫、值得骄傲的文化来讲，让金牛座的观众看完有 **归属感、认可感、荣耀感**。
>
> **全新制作**：文案、分镜、渲染架构、绘图库、配乐、音效、旁白、导出代码全部从零编写，**不参考** 仓库内任何旧目录（包括 `aries/`、`libra/`、`libra-scales/`），也 **不删除** 任何已有文件，只新增 `taurus/` 并在首页 / 根 README 增加入口。

---

## 0. 进度看板（每完成一个大动作推送一次到 Ethscriptions/POLS）

| # | 阶段 | 状态 |
|---|---|---|
| 1 | 计划 / 大纲 / 步骤（本文件） | ✅ 完成 |
| 2 | 旁白文案定稿（10 幕）+ 男声 TTS（云扬，沉稳）+ 字幕对齐 + 时间轴 | ✅ 完成（110 条字幕，总长 4:10） |
| 3 | 渲染引擎：水彩天幕纹理 + 散景 + 分层视差；10 个场景（横/竖屏） | ✅ 完成（逐幕横竖屏截图校对） |
| 4 | 鎏金珍藏卡：3D 翻转、镭射全息闪光、认证印章、个性化署名、单独导出 PNG | ✅ 完成（9:16 / 1:1 / 3:4） |
| 5 | 田园抒情配乐（F 大调 · 电钢琴 / 大提琴 / 八音盒 / 圆号）+ 音效，预渲染 | ✅ 完成（audio/film.mp3，−18.7 LUFS，旁白自动闪避） |
| 6 | 浏览器本地导出 MP4（24/30/60 fps，横/竖屏，1080p/720p） | ✅ 完成（WebCodecs H.264 + AAC/Opus；不支持时实时录制） |
| 7 | 四平台标题/描述/话题 + 8 张封面 | ✅ 完成（covers/） |
| 8 | 首页入口、全片自检、最终推送 | ✅ 完成 |

## 0.1 文件结构

| 文件 | 作用 |
|---|---|
| `index.html` · `style.css` · `js/main.js` | 页面：播放器、珍藏卡、导出、发布包 |
| `js/canvas-kit.js` · `js/backdrop.js` | 绘图库与水彩天幕 |
| `js/acts.js` · `js/film.js` | 十幕动画与合成器（画面 = 时间 t 的纯函数，播放与导出逐帧一致） |
| `js/card.js` | 鎏金珍藏卡 |
| `js/music.js` · `tools/mix.mjs` | 配乐合成与混音（`FF=ffmpeg路径 node tools/mix.mjs`） |
| `js/encoder.js` · `vendor/mp4-muxer.mjs` | 本地 MP4 导出 |
| `js/release.js` · `covers/` | 四平台文案与封面 |
| `tools/voice.py` · `js/script.js` · `audio/v01..v10.mp3` | 旁白与字幕时间轴 |
| `tools/align.mjs` | 字幕与旁白波形对齐（在 voice.py 之后、mix.mjs 之前运行）：起点吸附到真实发声点前 0.06 秒，终点延至本句最后一个有声帧 |

**v1.1 音画同步修正**：① 混音器曾把旁白放在“幕起点 + 绝对时间”上，导致第 2 幕起旁白整体错后，已改为按绝对时间放置（10 幕互相关校验偏差 0 ms）；② 字幕按波形重新对齐，110 条起点误差统一为提前 60 ms，有声帧 100% 有字幕覆盖；③ 播放器时钟扣除声卡输出延迟（蓝牙耳机）。

## 1. 美术与技术方案（区别于以往作品的新架构）

| 模块 | 方案 |
|---|---|
| 美术风格 | **新艺术运动（Art Nouveau）× 植物鎏金**：祖母绿、玫瑰金、象牙白、樱粉；牡丹 / 玫瑰花枝、藤蔓花饰框、烫金描边 |
| 背景 | 启动时用“水彩晕染”算法把每种色调预绘成离屏纹理（数百个柔边色团 + 纸纹颗粒），播放时做 **慢速视差漂移 + 色调交叉溶解**，叠加散景光斑与星空层；纯 Canvas2D，手机也流畅 |
| 时间模型 | 每帧画面是时间 `t` 的纯函数 → 实时播放与逐帧导出完全一致 |
| 动画编排 | 每幕的动作锚定在 **字幕时间点**（`at(n)` = 第 n 句旁白开始），重新配音后动画自动对齐 |
| 旁白 | 中文神经网络 TTS（`zh-CN-YunyangNeural`，沉稳男声，契合“稳”的金牛气质），按标点切分字幕并按词边界对齐 |
| 配乐 | WebAudio 离线合成：F 大调田园抒情（F–Dm–B♭–C），电钢琴、温暖弦乐 Pad、大提琴旋律、八音盒、铃铛，高潮加入圆号与定音鼓；音效：蹄声、风铃、花瓣、超新星轰鸣、海浪、印章、镭射闪光；预渲染为 mp3 |
| 导出 | WebCodecs（H.264 + AAC，不支持时 Opus）+ mp4-muxer（第三方 MIT 库），**24 / 30 / 60 fps**，横屏 1920×1080 / 竖屏 1080×1920，也可 720p |
| 珍藏卡 | 输入名字 → 第 9 幕卡片署名同步；可单独下载 **9:16 壁纸 / 1:1 头像 / 3:4 收藏卡** PNG |
| 发布 | 小红书 / 抖音 / B 站 / 视频号 的标题、描述、话题（字数与数量实时校验 + 一键复制）与 8 张封面 |

## 2. 分镜大纲（10 幕）

| 幕 | 标题 | 画面 |
|---|---|---|
| 1 | 序章 · 繁花里的公牛 | 花枝从画面四角生长绽放，花瓣飘落；金色公牛从花海中缓步走来，蹄下开出小花；“金牛座 TAURUS 4.20–5.20”烫金标题与“No.2 黄道第二宫”徽章 |
| 2 | 最古老的星座 | 时间轴回溯五千年：春分太阳落在金牛座、播种的田野；美索不达米亚泥板“天上的公牛”；洞穴壁画中的公牛与小点 |
| 3 | 找到它 | 真实坐标星图：猎户座腰带三星 → 延长线 → 毕宿五；毕星团 V 字牛脸、两只牛角、昴星团 |
| 4 | 毕宿五与昴星团 | 红巨星与太阳的大小对比、约 65 光年；“追随者”；昴星团六七颗 → 望远镜中上千颗蓝星；斯巴鲁标志的六颗星 |
| 5 | 天关客星 | 北宋夜空、竹简记录“客星”，白昼可见 23 天；镜头推进到今天的蟹状星云与旋转的脉冲星 |
| 6 | 欧罗巴与白牛 | 海边花丛中的白色公牛、花环、公主坐上牛背踏浪而去、抵达克里特岛；地图上浮现“Europe”；公牛升空成为星座 |
| 7 | ♉ 的含义 | 圆（牛脸）+ 弧（牛角）合成 ♉；另一种解读：新月托起满月，麦穗与丰收 |
| 8 | 土象 · 金星 | 大地纹样、金星 ♀ 与玫瑰；六张品质卡（稳重 / 耐心 / 守信 / 懂生活 / 爱美好 / 忠诚）；“慢热，但认定了就守护到底” |
| 9 | 鎏金珍藏卡 | 卡背 ♉ 花纹 → 3D 翻转 → 卡面：玫瑰金花饰框、公牛徽章、守护星 / 元素 / 品质、镭射全息扫光、署名、“大地守护者”认证印章落下，花瓣雨 |
| 10 | 尾声 · 慢慢来 | 夕阳下的麦田与花海，公牛安静伫立，星座在天空连成；“慢慢来，也能抵达所有美好” |

## 3. 步骤
1. 写本计划并推送。
2. 旁白文案 → `tools/voice.py` 生成 `audio/v01..v10.mp3` 与 `js/script.js`（时间轴 + 字幕）→ 推送。
3. `js/canvas-kit.js`（绘图库）、`js/backdrop.js`（水彩天幕）、`js/acts.js`（十幕）、`js/film.js`（合成器）→ 横竖屏逐幕截图自检 → 推送。
4. `js/card.js` 鎏金珍藏卡 → 推送。
5. `js/music.js` 配乐音效 → 预渲染 `audio/music.mp3` → 推送。
6. `js/encoder.js` 导出（24/30/60）→ 实测 → 推送。
7. `js/release.js` 文案 + 封面 → 推送。
8. 首页卡片、根 README、全片扫描、线上验证 → 最终推送。

## 4. 旁白全文（第 2 步产出）

| 幕 | 开始 | 旁白 |
|---|---|---|
| 1 序章 · 繁花里的公牛 | 0:00 | 四月下旬，春天走到了最繁茂的时候。花开满山，麦苗拔节，连风都是甜的。夜空里，一头健壮的金色公牛，正从繁花中缓缓走来。它不急不躁，每一步都踏得很稳。它就是黄道第二宫，金牛座。四月二十日到五月二十日出生的朋友，都属于它。 |
| 2 最古老的星座 | 0:26 | 金牛座，可能是人类最早命名的星座之一。五千多年前，春分时节的太阳，就落在金牛座里，那正是播种的季节。古代美索不达米亚人，把它叫作“天上的公牛”。而在法国拉斯科洞穴里，一万七千年前的壁画上画着一头公牛，它身旁的几个小点，有人认为，就是昴星团。 |
| 3 找到它 | 0:53 | 想在夜空中找到金牛座并不难。冬天的晚上，先找到猎户座腰带上的三颗星，顺着它们往右上方延伸，就会遇到一颗橙红色的亮星，那是公牛的眼睛，毕宿五。它身边一群排成V字形的星星，是毕星团，组成了公牛的脸。两颗星向远处伸出，是长长的牛角。再往前，就是闪闪发光的昴星团。 |
| 4 毕宿五与昴星团 | 1:22 | 毕宿五是一颗红巨星，直径大约是太阳的四十多倍，距离我们约六十五光年。它的英文名，来自阿拉伯语，意思是“追随者”，因为它总是跟在昴星团后面升起。昴星团，西方叫它“七姐妹”。用肉眼能看到六七颗星，用望远镜看，却有上千颗年轻的蓝色恒星。日本把它叫作“昴”，汽车品牌斯巴鲁的标志，画的就是它。 |
| 5 天关客星 | 1:53 | 金牛座里，还藏着一段属于中国人的骄傲。公元一零五四年，北宋的天文官记录下，天关星附近，忽然出现了一颗“客星”。它亮到白天都能看见，一连二十三天。后来，天文学家在那个位置，找到了一团正在膨胀的星云，蟹状星云。它正是那次超新星爆发留下的遗迹，中心还有一颗每秒自转三十次的脉冲星。 |
| 6 欧罗巴与白牛 | 2:23 | 希腊神话里，众神之王宙斯，爱上了美丽的公主欧罗巴。他化身为一头雪白温顺的公牛，在海边的花丛中静静等待。公主为它编了花环，轻轻坐上了牛背。公牛便驮着她踏浪而去，一直游到了克里特岛。后来，欧罗巴的名字，成了“欧洲”一词的来源。而那头白色的公牛，被升上夜空，成了金牛座。 |
| 7 ♉ 的含义 | 2:52 | 金牛座的符号，是一个圆，加上一弯向上的弧线。圆是公牛的脸，弧线是一对牛角。也有人说，它像一弯新月，托起了一轮满月，象征着丰收与富足。 |
| 8 土象 · 金星 | 3:08 | 在星座文化里，金牛座属于土象星座，守护星是金星，象征着爱与美。所以人们常说，金牛座稳重踏实，有耐心，重承诺。他们懂得享受生活，爱美食，也爱一切美好的事物。看起来慢热，可一旦认定了，就会稳稳地守护到底。 |
| 9 鎏金珍藏卡 | 3:32 | 所以，如果你是金牛座，这张金色的珍藏卡，属于你。它镌刻着你的星座，你的守护星，还有你最珍贵的品质：坚定，温柔，可靠。因为这个世界，需要你这样稳稳的力量。金牛座，大地的守护者。 |
| 10 尾声 · 慢慢来 | 3:52 | 每年春末，当花开到最盛，太阳正缓缓走过金牛座。愿你按照自己的节奏，慢慢来，也能抵达所有的美好。 |

字幕：TTS 词边界时间回贴原文，按标点切句，过短的短句仅在逗号处与相邻短句合并（不跨句号），相邻字幕首尾相接避免闪烁。
