Repository navigation
v0.7.2
keyline 0.7.2 makes sure a design that checks out also renders: "ok" now means it fits and everything it needs is there, and a finished video holds every frame.
Video clips that stop early
A clip cut short or damaged partway (ffmpeg's "File ended prematurely") used to end its frames early, and keyline took that for the clip's end: the last good frame held for the rest of the scene, and nothing said so. The render now fails with where it stopped:
video layer intro: its clip stopped decoding at 2.0s (File ended prematurely); re-encode or replace the clip
A clip that really ends still holds its last frame, as before. Frames damaged in the middle of a file are still smoothed over by ffmpeg.
Every video frame, checked
After ffmpeg writes an MP4 or WebM, keyline counts the frames in the file and compares them with what it drew, so the render reply's frame count is measured, not assumed. A short file fails the render:
the mp4 has 80 of its 125 frames: the encoder lost some; render again, or pass --encoder software
Missing assets, before you render
scene_describe, and the problem lines after every edit, now flag an asset the design uses whose file is gone from the data folder (cleaned, or the scene moved to another machine). It used to say ok, and only the render failed:
asset photo !missing from the store; add it again with asset_add
Assets no layer uses aren't checked.
Docs
- A shorter, corrected Quick start: the release files' names carry a
v(keyline-mcp-v<version>-…), arm64.debs and Docker images are listed, and every client fits in one table. LICENSEis nowLICENSE.md, so GitHub renders it.- A new one-line description: "Design engine for AI agents: images at every size, no Chrome, 2× fewer tokens".