mirror of
https://github.com/storytold/effectcraft.git
synced 2026-11-01 05:58:19 -06:00
M12.3: tracker core
New L2 crate effectcraft-track: per-point feature/search region tracking with pyramid normalized cross-correlation and Lucas-Kanade (similarity + gain/bias) sub-pixel refinement, confidence, adapt/stop/extrapolate/continue actions, RGB/luminance/saturation channels, blur/enhance pre-processing, and homography/affine/similarity solves. Project: Motion Trackers > Tracker n > Track Point n property tree (GroupKind::Tracker with type, target and options). Engine: track.* commands (new/motion/stabilize/property/select/setType/setTarget/options/setPoint/ analyze/stop/apply/reset/delete/status), background or blocking analysis job with progress and cancel (one undo step), apply to Transform, Stabilize and Corner Pin. Renderer::layer_source for the tracker's frames. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
5273f1ba96
commit
243098a144
@@ -22,6 +22,7 @@ cpal or muda. Everything in L0 to L4, the egui UI and the web app also build for
|
||||
| L2 | `project` | The document: items, compositions, layers, the property tree, render queue model, `.ecproj` serde |
|
||||
| L2 | `text` | Fonts, shaping, layout, per-glyph geometry, text animators and selectors |
|
||||
| L2 | `effects` | The effect registry (241 effects) and their CPU implementations |
|
||||
| L2 | `track` | Motion tracking: feature/search region point tracking (pyramid normalized cross-correlation, Lucas–Kanade sub-pixel refinement), confidence, homography/affine/similarity solves |
|
||||
| L3 | `render` | Evaluation and compositing: sources, masks, effects, transforms, 3D, motion blur, mattes, blending, layer cache, audio mixdown |
|
||||
| L3 | `media` | Footage decoding (FilmCraft's pure-Rust codecs), image sequences, frame cache |
|
||||
| L3 | `expr` | The expression engine (JavaScript via boa) with the After Effects object model |
|
||||
@@ -92,6 +93,15 @@ layer's Blending Options and kept in step after each edit.
|
||||
|
||||
Half, Third and Quarter resolution render proportionally fewer pixels end to end.
|
||||
|
||||
**Motion tracking** (Animation ▸ Track Motion / Stabilize Motion, Window ▸ Tracker): a tracker
|
||||
is a `Tracker` group under the layer's Motion Trackers group, with Track Point groups (Feature
|
||||
Center, Feature Size, Search Offset, Search Size, Confidence, Attach Point, Attach Point Offset)
|
||||
keyframed per analysed frame. `track.analyze` renders the layer's source frames
|
||||
(`Renderer::layer_source`) on a background thread (`engine::tracking`, polled like the render
|
||||
queue; blocking with `wait`), and `effectcraft-track` matches each point in parallel. One undo step
|
||||
covers an analysis. `track.apply` keys the target's Position/Rotation/Scale, the tracked layer's
|
||||
Anchor Point and Position (Stabilize), or a Corner Pin effect (Parallel / Perspective).
|
||||
|
||||
## 5. Expressions
|
||||
|
||||
Expressions are JavaScript, run by boa, with After Effects' object model (`thisComp`, `thisLayer`,
|
||||
|
||||
Reference in New Issue
Block a user