FlashStory
Install安装

Chrome & Edge extension · v0.5 Chrome / Edge 扩展 · v0.5

Every second.
Every angle.
Zero cost.
每一秒、每一个角度,
都由你掌控,
而且不花钱。

The video model charges you for every roll of the dice. Here you place a character to the centimetre, a camera to the frame and an action to the second — revise it as often as you like, export it as often as you like, all for nothing. Then let the expensive model copy what you built. 视频模型那边,每抽一次都是钱。而在 FlashStory 里,角色摆到厘米、镜头定到帧、动作卡到秒——想改多少遍改多少遍,想导出多少次导出多少次,全程一分钱不花。改到满意,再把这段视频交给那个贵的模型去照着出片。

Store listings are on their way. See what it exports → 商店上架准备中。先看看它导出什么 →

The problem问题

Uncertainty is billed per generation. 不确定性,是按次收费的。

One generation costs real money, and a twelve-shot piece takes dozens of rolls before it converges. What sends you back for another roll is almost never the rendering — it's position, facing, scale, action and timing coming out wrong. Those five things can be settled beforehand at roughly zero cost. 一次生成就是真金白银,一个 12 镜头的片子往往要抽几十上百次才收敛。真正逼你重抽的,几乎从来不是画质,而是位置、朝向、尺度、动作、时序这五件事对不上——而这五件事,本来就能在生成之前定死,成本几乎为零。

So don't pay a video model to find out. Seedance, Kling, Veo and the rest all accept a reference video and reproduce its staging with startling fidelity — hand them one and the variance moves from guessing to copying. The characters are faceless mannequins because pretty is worthless here; unambiguous is the thing you're actually paying for. 所以别再花钱去试。Seedance、Kling、Veo 都能吃下一段参考视频,并把里面的走位以惊人的保真度复刻出来——给它一段,方差就从「模型猜」变成「模型抄」。角色故意做成无脸人偶:好看在这里不值钱,没有歧义才是你真正在买的东西。

A prompt the model will guess at一段模型只能靠猜的提示词
“The camera pushes in from behind her left shoulder while she turns and walks to the window.” 「镜头从她左后肩推进,同时她转身走向窗边。」

Same words, twelve different shots — and you pay once for each one to find out which you got. A four-second reference video has none of that ambiguity. 同一句话能出十二种镜头,而每抽中一种,都得单独付一次钱才知道。一段四秒的参考视频,一点这种歧义都没有。

What's in it它能做什么

A small toolkit, aimed at exactly one job. 一套小工具,只瞄准一件事。

01

A cast you can tell apart一眼分得清谁是谁

15 procedural body types — 5 ages × 3 builds — sized in centimetres and painted in six high-contrast identity colours. That colour follows the character into the exported mapping table, so the video model always knows the red mannequin is Lao Zhang. 15 种程序化体型(5 个年龄段 × 3 种胖瘦),按厘米设身高,配六种高对比主色。主色会一路带进导出的颜色映射表——视频模型永远知道红色人偶就是老张。

02

Poses & keyframes姿势与关键帧

20 built-in poses plus your own, keyframed on a timeline with linear / ease / hold / spring easing and an editable curve. 20 个内置姿势加自定义姿势,在时间轴上打关键帧,四档缓动(linear / ease / hold / spring)与可编辑曲线。

03

Multiple cameras多机位

Several named cameras per shot, a switch track to cut between them, picture-in-picture preview, and align-to-view when you've found the frame by hand. 单镜头内可建多台具名相机,用切换轨在它们之间剪,配画中画预览;手动找到构图后,一键「对齐当前视角」。

04

Rough set dressing粗略布景

Boxes, planes, cylinders, bendable image boards, panorama rings and imported GLB models — enough to establish a space, never more. 长方体、平面、圆柱、可弯曲图片板、全景环,以及导入的 GLB 模型——够把空间交代清楚就行,多一分都不必。

05

Dialogue on the clock台词轴

Timed lines per character. Duration is estimated from speaking rate, and every line lands in the export at an exact timecode. 按角色写定时台词,时长按语速自动估算,每句都以精确时间码落进导出文件。

06

Reference sheets & colour map设定图与颜色映射

Every character exports a multi-angle reference sheet plus a colour mapping table, so the model knows exactly who the red mannequin is supposed to be. 每个角色一张多视角设定图,加一张颜色映射表,跟视频一起进导出包——模型才知道那个红色人偶该长成谁。

07

Local-first, by construction从结构上就是本地优先

Projects live in your browser's IndexedDB with autosave; zip in, zip out. There is no backend to sign into and nothing to sync. Bilingual UI, light and dark themes, 16:9 / 9:16 / 1:1 at 24 fps. 项目存在浏览器的 IndexedDB 里并自动保存,zip 进、zip 出。没有后端可登录,也没有东西要同步。中英双语界面、明暗主题,16:9 / 9:16 / 1:1,24 fps。

Workflow流程

Four steps, and the scene is nailed down. 四步,把整场戏钉死。

  1. 01

    Stage摆位

    Drop in characters and rough set pieces. Height is set in centimetres, so scale is never a guess. 放入角色和粗略布景。身高按厘米设定,尺度不用猜。

  2. 02

    Keyframe打帧

    Move the playhead, move the actor. Transforms, poses and cameras all keyframe the same way. 拖动播放头,移动演员。位移、姿势、相机,打帧方式完全一致。

  3. 03

    Direct运镜

    Add cameras, cut between them on the switch track, and check the framing in picture-in-picture. 加机位,在切换轨上剪,用画中画确认构图。

  4. 04

    Export导出

    One click produces the guide video and everything the model needs in order to read it. 一键产出指导视频,以及模型读懂它所需要的一切。

Or skip the four steps或者,跳过这四步

By hand: ten minutes.
By AI: ten seconds.
自己排,十分钟。
让 AI 排,十秒。

Say what the scene is. The AI drawer does the same four steps for you — adds the cast, blocks the movement, keyframes the cameras, adjusts joints — and takes its own screenshots to check the framing before handing it back. 把这场戏说出来就行。侧栏里的 AI 编排替你走完同样这四步——加角色、排走位、给相机打关键帧、调关节——交回来之前还会自己截图核对构图。

Then you take over: everything it did is a normal, undoable edit on the same timeline, validated exactly like a human one. Nudge what you don't like, keep the rest. 然后你接手:它做的每一步都是同一条时间轴上普通的、可撤销的编辑,校验规则跟手工完全一致。不满意的地方随手改,剩下的留着。

  • Your endpoint, your key你自己的端点与 Key
  • Every step undoable每一步都可撤销
  • Same validation as hand edits与手工编辑同一套校验
one sentence in, a blocked scene out 一句话进去,一整场戏排好出来
▸ Lao Zhang waits behind the bar. Li Si comes in from the door
  and walks over. Camera pushes from the door to Lao Zhang's
  face across the first four seconds.

  add_entity           c_zhang · c_lisi 
  set_transform_keys   walk path, 5 keys 
  set_pose_keys        idle → walk → turn 
  set_camera_keys      cam_1 · push in, 4s 
  screenshot           framing checked, one revision
                       done · 11s
▸ 老张在吧台后面等着,李四从门口进来走过去;
  镜头在前四秒里从门口推到老张脸上。

  add_entity           c_zhang · c_lisi 
  set_transform_keys   行走路径 5 帧 
  set_pose_keys        站立 → 行走 → 转身 
  set_camera_keys      cam_1 · 推进 4 秒 
  screenshot           构图已核对,修了一版
                       完成 · 11 秒

The export导出物

One zip, and the model has no excuses left. 一个 zip,模型就没有借口了。

The guide video is encoded in the browser with WebCodecs — no upload, no queue, no render farm. Alongside it, plain-text artifacts spell out who is which colour, what happens when, and what to say at each timecode. 指导视频用 WebCodecs 在浏览器内编码——不上传、不排队、不用渲染农场。旁边配一组纯文本产物,把谁是什么颜色、什么时候发生什么、每个时间码说什么台词,全部写清楚。

Hand the whole folder to Seedance, Kling, Veo or whatever you're using this month. The scene file comes back into FlashStory intact, so revising shot 3 never touches shots 1 and 2. 把整个文件夹丢给 Seedance、Kling、Veo,或者你这个月在用的任何模型。scene 文件可以原样导回 FlashStory——改第 3 个镜头,永远不会碰坏第 1、2 个。

FlashStory_export.zip
  • guide_video.mp4the reference video itself参考视频本体
  • color_mapping.mdwhich colour is which character哪个颜色是哪个角色
  • prompt_suggestion.mdshots & dialogue at timecodes带时间码的镜头与台词
  • shots.jsonmachine-readable shot list机器可读的镜头表
  • scene.jsonthe full project, re-importable完整工程,可回导继续改
  • refs/char_a.pngcharacter reference sheets角色设定图

Privacy隐私

Zero permissions.
Zero telemetry.
Zero servers.
零权限。
零埋点。
零服务器。

It can't read your tabs它读不到你的标签页

The manifest declares no permissions, no host permissions and no content scripts. FlashStory can only open and run its own editor page. manifest 里没有任何 permissions、host permissions 或 content script。FlashStory 只能打开并运行它自己的编辑器页面。

Your work stays put你的工程哪也不去

Scenes live in your browser's IndexedDB. Exports download straight to your disk. We operate no server that could receive either. 场景存在浏览器的 IndexedDB 里,导出直接下载到你的磁盘。我们没有任何服务器能接收它们。

Your keys are yours你的密钥是你的

If you turn on AI directing or S3/R2 upload, the credentials sit in local storage and requests go straight from your browser to the endpoint you chose. 如果你启用 AI 编排或 S3/R2 直传,凭据只留在本地存储,请求由你的浏览器直连你自己选的端点。

Read the full privacy policy →阅读完整隐私政策 →

FAQ

Reasonable questions几个合理的问题

Does it render the final video?它会渲染最终视频吗?

No, and it shouldn't. FlashStory produces a schematic — faceless mannequins on a rough set. The finished imagery comes from your video model, guided by the reference sheets and colour map in the export. 不会,也不该会。FlashStory 产出的是示意——粗略场景里的无脸人偶。最终画面由你的视频模型渲染,依据是导出包里的角色设定图与颜色映射表。

Which video models does this work with?能配合哪些视频模型?

Any model that accepts a reference video plus reference images — Seedance, Kling, Veo and their successors. The export is a plain zip of MP4, Markdown, JSON and PNG, so nothing is locked to one vendor. 任何接受「参考视频 + 参考图」的模型——Seedance、Kling、Veo,以及它们的后继者。导出是一个普通 zip,里面是 MP4、Markdown、JSON 和 PNG,不绑定任何一家。

Do I need an API key?必须填 API Key 吗?

Only if you want the optional AI directing. Every other feature — staging, keyframing, cameras, export — works with the settings page untouched. 只有想用可选的 AI 编排时才需要。其余功能——摆位、打帧、多机位、导出——完全不用碰设置页。

Is it free?是免费的吗?

Yes. There's no account, no subscription and no usage metering, because there's no server to meter anything. 是。没有账号、没有订阅、没有用量计费——因为压根没有服务器可以计费。

What do I need to run it?运行需要什么?

A recent Chromium-based browser — Chrome or Edge. Video export uses WebCodecs and WebGL, both of which have been standard there for a while. 一个较新的 Chromium 系浏览器——Chrome 或 Edge。视频导出用到 WebCodecs 和 WebGL,这两项在其中已是标配。