《AI时代漫游指南》第 88 章「软件考古学」记载:「当程序员面对人生大事时,他们的第一反应不是打开剪映,而是问自己——这个能不能用代码写?」
最近用 Remotion 为家人制作了一部纪念视频。
整个过程通过 Claude Code 交互式完成——AI 负责写代码,我负责创意决策。
编者注:是的,在需要处理情感的时刻,程序员选择了写代码。但这不是逃避,是用自己最擅长的方式表达爱。
什么是 Remotion?
一句话:用 React 写视频。
你写的是 React 组件,输出的是 MP4。
编者注:传统剪辑软件需要你拖来拖去对齐时间线,而 Remotion 只需要改个数字。程序员狂喜。
我和 AI 的协作流程
整个项目通过对话完成:
我:添加一个开场过渡页,显示"永远怀念"AI:[生成代码]我:照片需要 Ken Burns 效果AI:[实现 4 种动画]我:家人说宗教元素太明显AI:[改成中性文案]AI 擅长:代码实现、批量修改、逻辑检查 人类把控:内容决策、情感把控、最终审核 这种分工很舒服——我专注于「要什么」,AI 负责「怎么做」。
视频结构设计
通过与 AI 多轮讨论,确定了「章节式」结构:
核心代码解析
场景数据结构
用数组定义所有场景,这是与 AI 协作的核心:
constscenes= [ {type:"transition",duration:8,text:"永远怀念",text2:"XXX",icon:"chrysanthemum",goldText:true }, {duration:10,image:"老照片.jpg",subtitle:"一生吃苦耐劳",filter:"sepia",effect:"zoomIn" },// ...];改一个场景? 改数组里的一个对象。 改全部时长? 让 AI 批量修改 duration。 加个新效果? 加个字段,写个组件。 Ken Burns 效果
让静态照片有生命力:
// 缓慢放大constscale=interpolate(frame, [0, durationInFrames], [1, 1.15]);4 种效果:zoomIn(放大)、zoomOut(缩小)、panLeft(左移)、panRight(右移) 滤镜处理
// 老照片用 sepia(复古棕色)// 黑白遗照用 grayscale// 彩色生活照用 noneconstfilterStyle=filter==="sepia"?"sepia(60%)":filter==="grayscale"?"grayscale(100%)":"none";
设计经验总结
时长控制
视觉风格
动画原则
与 AI 协作的技巧
✗ "帮我改一下过渡页"✓ "过渡页加个菊花图标,文字改成金色"✗ "这张照片配什么字幕"✓ "这是吃草莓的照片,悼词里说'对孩子有爱心',帮我精简成两行"我:先列出分镜逻辑,确认后再改代码AI:[列出分镜]我:好,改吧
渲染与后期
GPU 加速渲染
npxremotionrender--codec=h264-nvencout/video.mp4GTX 980Ti 实测:6 分钟视频渲染约 3-4 分钟。(预览版)
添加背景音乐
Remotion 输出无音乐视频,用剪映添加:
项目统计
写在最后
「用代码写视频,听起来很极客。但当你用它来纪念一个人的时候,代码就有了温度。」— 《AI时代漫游指南》
用 Remotion + AI 做视频,把创意工作和技术实现分离。
我专注于「要什么」,AI 负责「怎么做」。
本文基于为家人制作纪念视频的真实项目经验。愿逝者安息。🕯
关注「AI时代漫游指南」,一起探索 AI 时代的效率方法论。 如果你也在用代码做有温度的事,欢迎留言分享。