博文一键成片 · 写稿这一步

整条链路把一篇写完的博文变成一支带配音、逐句字幕和文内配图的 1080p 视频。这个网页只开放其中的第一步:写稿。贴一篇文章进去,出一份 90–150 秒的中文口播稿 + 分镜表,可直接导出 SRT 字幕。

粘贴即用 90–150 秒口播稿 分镜表 + SRT 导出 有限试用

这是有限试用,不是免费服务。模型调用花的是作者本人的 Claude 订阅额度: 每个 IP 每天 8 次、单次输入上限 4000 字符、全站每天 300 次。 额度用完页面会原样告诉你还能怎么办。想不受限制地用,请在下面填你自己的 API key —— 那条通道由你的浏览器直连模型厂商,key 不经过我的服务器。

1 · 它替你解决什么

你花一整天写完一篇几千字的长文,发在自己的博客上。同一份内容搬到视频平台能多让几倍的人看到 —— 但"搬"这个动作的实际含义是:把书面语重写成能念出口的稿子、找个安静地方录五六分钟、剪掉口误、逐句对字幕时间、把文内插图按"讲到哪儿"切进画面、导出、起标题、写简介。一篇下来半天没了,写十篇就是一周。所以绝大多数人写完文章就算了,视频那条腿一直空着。

整条链路把上面这些压成一条命令。而其中最费脑子、也最需要你亲自把关的一步就是写稿 —— 后面的配音、排图、渲染都是机械劳动,写稿这一步决定这支片子讲得对不对、有没有人看得下去。所以把它单独拆出来放在网页上:你贴一篇文章,当场拿到稿子和分镜,读一遍改对,再决定要不要走本地那条链路出片。

2 · 一条命令里发生了什么(网页只做第 2 步)

  1. 取原文 —— 按 slug 从博客内容库定位这篇文章与它的配图。
  2. 写口播稿 —— 把全文改写成一份完整的口播稿:开场钩子、背景、核心论证、关键数字、方法论提炼、收尾。← 网页版做的就是这一步,且改成了短片口径(90–150 秒,分镜到句)。
  3. 配音 + 字幕时间轴 —— 语音合成边出音频边抛逐词边界事件,每个词的起止毫秒直接写进字幕,不跑语音识别,也就没有识别误差。
  4. 收配图 —— 封面图打头,再按正文里插图出现的先后顺序排队;一张图都没有则中止,不出纯文字视频。
  5. 渲染 —— 标题、品牌行、配图清单、音频、字幕写进一个 JSON,交给渲染引擎逐帧出 mp4,成片再用探针验一次时长。
为什么网页版只到第 2 步。渲染一支视频要占用几分钟满载 CPU,并在磁盘上堆出几百 MB 中间文件。 这台服务器上同时住着十几个站点,让匿名访客占住一个渲染进程,等于拿其他所有服务的可用性去换一个便利入口。 写稿是纯文本进纯文本出、几秒钟就完,才适合放公网。配音 / 配图 / 渲染 mp4 是本地那条命令行链路的事,见页面下半部分。

3 · 试一下:贴一篇文章,出口播稿

0 / 4000 字符

填了 key 之后,请求由你的浏览器直接发给模型厂商api.anthropic.com), key 与文章内容都不会发到我的服务器,本页也不会把它写进任何日志。 不勾"记在本浏览器"时,key 只活在这个标签页的内存里,刷新即消失; 勾了则存在你自己浏览器的 localStorage,点"清除 key"立即删除。

秒数怎么估的

中文口播按 240 字 / 分钟(合 4 字 / 秒)折算:一句的字数 = 中日韩字符数 + 中文标点数(标点计入是为了把停顿算进去)+ 每个连续的拉丁字母 / 数字串按 2 字计。每句下限 1.2 秒。总时长 > 150 秒会标红提示,< 90 秒提示偏短。这套折算只是估算,用来判稿子长短够不够,不用来对最终字幕。

4 · 本地那条链路(网页版不做的部分)

成片长什么样

文内配图轮播(交叉淡入 + 缓慢推近)
● 品牌行
文章标题
音频波形
当前这句字幕(逐词高亮)
版面示意(非截图):左侧配图占大半画面,右侧自上而下是品牌行、标题、示波器波形、滚动字幕。

画布 1920×1080,帧率 30fps,浅色底;字幕默认只显示当前这一句,句子边界按中英文句末标点切分。配图之间有 12 帧交叉淡入,展示期内画面从 1.0 缓推到 1.045 倍。

能力清单

中文配音合成 mp3,可换发音人、可调语速。稿子里的【】提示、[停顿] 这类表演标注在朗读前自动剥掉。
字级时间戳时间来自语音合成时的逐词边界事件,不跑语音识别。中文词事件不带标点,脚本再按源文对齐把标点补回词的首尾。
配图取文章已有的封面图与插图,不含 AI 生图;按成片时长在所有图之间均分,相邻两张交叉淡入。一张可用图都没有则拒绝出片。
渲染React 组件描述画面、逐帧截图再编码;换文章只换那份 JSON,不动一行前端代码。
批量喂一份 slug 清单串行出片,已有成片自动跳过,失败重试一次,结尾汇总成功 / 失败数。
发布准备为已渲染的片子生成上传清单(标题 / 分区 / 标签 / 简介 / 原文链接 / 片长);成片与清单条目对不上就报错退出,不会安静漏掉一支。

试一下:配图轮播时间轴

下面这个小算盘用的是渲染组件里的真实排布公式:总帧数 = ⌊时长 × 30⌋,每张图占 总帧数 ÷ 张数,前后各 12 帧交叉淡入。纯本地计算,不联网。

#起(秒)止(秒)停留帧区间占比

使用须知:稿子必须人工过一遍事实。大模型改写会把领域术语说错 —— 实测出现过把一种金融合约类型整段写成另一种,机制描述跟着全错。所以流程刻意把稿子落成可编辑的文本:先读一遍、改对,再渲染。这一步没有自动化的余地,网页版把"念什么"做成可直接改字,也是同一个理由。

5 · 边界(先说清楚,免得白试)

网页版只做写稿出稿子、分镜表、SRT 文本。不配音、不配图、不出 mp4 —— 那三步在本地命令行链路里。
秒数是估算按 240 字 / 分钟折算,不是真实语音时长;真实时间轴由配音环节的逐词边界事件给出。
试用额度共用作者本人的订阅:每 IP 每天 8 次、单次输入 4000 字符、全站每天 300 次。要绕开就填自己的 key。
吃什么纯文本正文。贴网址没用 —— 本页不去抓网页,你得把正文贴进来。
本地链路吃什么博客内容库里已发布文章的 slug,不是任意网址;文章必须自带配图,否则拒绝出片。
成熟度孵化阶段的自用管线,不是打包好的通用软件;本地那条链路上手需要命令行环境。
本页第 4 节的成片版面为示意图不是截图;"看一个合成示例结果"按钮里的标题、钩子、分镜文案与示例文章全部是为演示编造的合成内容,不对应任何真实文章。 配图轮播小算盘完全在你的浏览器里算完,不联网。 点"生成口播稿"时:未填 key 走本站同源接口 /api/llm(消耗作者订阅的试用额度);填了 key 则由你的浏览器直连模型厂商,key 与文章内容不经过本站服务器。 本页不设账号、不记录访客信息。真实的完整成片链路是一套在本机运行的命令行工具,不在公网上。