v0.3.0 - Last Frame Anchors, Audio Fixes, Test Node
0.3.0
New
last_frame anchors survive the chain. If your graph pins a target
image on the final frame (FirstLastFrameToVideo and friends), the Motion
Context node used to silently throw it away when it wrote its own
keyframes. Now it keeps the anchor, tags it, and the layout patch
compensates its position on the extended timeline, so you can drive a clip
toward a destination image and have it continue seamlessly from the
previous one. Anchors that land inside the pinned head are dropped with a
warning - those frames belong to the context - and a frame-count mismatch
between incoming keyframes and the current latent is now a clear error
instead of a corrupted layout.
In-graph seam measurement. New H3 Motion Context Seam Probe node:
wire it the two clips and it reports level step, spectral discontinuity and
correlation at the join, right in the graph. No more exporting audio and
running scripts to find out whether a seam is audible.
Changed
audio_context_length defaults to 24 (was 22). 24 frames is exactly
one second, follows the ×3 rule, and lands the pinned audio precisely on
the audio grid. Multiples of 24 keep both properties if you want a longer
audio context. 22 still works.
Example workflow refreshed. Ships with audio_context_length 24, the
Save Latent nodes default to clip_index 2 so rendering the example can't
overwrite your clip-1 latent, and the in-graph notes now spell out the
first-clip setup.
Docs and tests
The test scripts now run on Windows - path handling assumed forward
slashes - and the mock harness runs standalone again. New offline test for
the seam probe node, and new smoke-test coverage for the last_frame
merge, the dropped-anchor warning and the frame-count error.
README updated throughout: last-frame wiring, the seam probe, the 24-frame
audio context reasoning, and the full seven-script testing section.