Remotion 进阶:一份代码,参数化批量出片
上一篇文章走完了 Remotion 的最小闭环。但要真正发挥 Remotion 的威力,关键在参数化——用 zod schema 定义参数,一份代码换不同数据,批量渲染出不同版本。
这篇文章用柱状图动画演示:同一个 <DataBars> 组件,给它换三组参数,渲染出三份不同内容、不同配色的视频。
上一篇文章走完了 Remotion 的最小闭环。但要真正发挥 Remotion 的威力,关键在参数化——用 zod schema 定义参数,一份代码换不同数据,批量渲染出不同版本。
这篇文章用柱状图动画演示:同一个 <DataBars> 组件,给它换三组参数,渲染出三份不同内容、不同配色的视频。
Remotion(github.com/remotion-dev/remotion,约 5.7 万 star)是一个用 React 写代码来制作视频的框架。它的核心心智模型是:React 代码就是视频的"源文件"——你写一个 React 组件,Remotion 会按时间轴把它一帧一帧渲染出来,最终编码成真正的 MP4 视频。
这篇文章不追求大片质感,只走一遍最小闭环:脚手架 → 理解代码 → 真实渲染 → 分享 MP4 → 嵌入博客。
如果你记得“有一个 Python 工具专门做数学动画、数学类视频动画”,大概率说的就是 Manim。它最早因为 3Blue1Brown 的数学解释视频而出圈,现在更推荐使用社区维护的 Manim Community Edition(Manim CE):包名是 manim,源码在 ManimCommunity/manim,定位是“用程序精确生成解释型数学视频的动画引擎”。
这篇文章不只回答“Manim 是什么”,还回答一个更工程化的问题:如果我们要真正做视频,应该怎么把 Manim 放进一条完整的视频生产流?
上一篇文章讲了 Manim 的定位:它是一个 Python-first 的数学动画生产工具,但完整视频生产并不是 pure Python-only,还会涉及 LaTeX、Cairo/Pango、FFmpeg/PyAV、素材、旁白、字幕和发布。
这篇换成一个更落地的问题:如果今天只想从零生成一条“能看的小视频”,最小闭环应该怎么走?
我们用一个 14 秒左右的“水滴入水后的圆形波纹”来演示。它不追求大片质感,只追求流程完整:先想清楚解释目标,再写代码,再真实渲染,再把 MP4 放到文章里。
如果不想从零写视频网页理解流水线,可以先试几个已经能跑起来的开源项目。这里按“能不能直接部署”“是否支持 B 站”“是否有 Web UI”“是否包含 ASR/VLM/知识库能力”来筛了一轮。
如果目标是“给一个 B 站视频链接,然后自动整理视频里讲了什么”,最稳的做法不是把网页 URL 直接丢给一个大模型,而是自己搭一条可观察、可缓存、可替换的 evidence pipeline:先拿到网页 metadata、字幕或音频,再用 ASR、抽帧、OCR/VLM 和 LLM 逐层补全证据。