@pixerate/editor 0.223.9 → 0.224.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createEffectAuthoringSession
3
- } from "../chunk-WMVEYSOA.js";
3
+ } from "../chunk-WA4IS2EY.js";
4
4
  import {
5
5
  VIDEO_ADJUSTMENT_SCOPES,
6
6
  VIDEO_BLEND_MODES,
@@ -148,7 +148,7 @@ import {
148
148
  videoTransitionEase,
149
149
  videoValueAt,
150
150
  videoWipeRect
151
- } from "../chunk-OZSA5YEJ.js";
151
+ } from "../chunk-RDTCG5MS.js";
152
152
  import "../chunk-EHLOCVWB.js";
153
153
  import {
154
154
  namedWithSuggestion
@@ -157,7 +157,7 @@ import {
157
157
  EffectsSlot,
158
158
  createEffectToolProvider,
159
159
  isEffectError
160
- } from "../chunk-6G2NLMVK.js";
160
+ } from "../chunk-HKPLKISO.js";
161
161
  import "../chunk-V2ZCJRDM.js";
162
162
  import {
163
163
  defineEditorDocument
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixerate/editor",
3
- "version": "0.223.9",
3
+ "version": "0.224.1",
4
4
  "description": "UI-agnostic rich text and media editing core library",
5
5
  "author": "Pixerate",
6
6
  "license": "MIT",
@@ -155,7 +155,7 @@ refuse.
155
155
 
156
156
  | Tool | Use it to |
157
157
  | --- | --- |
158
- | `search_effects` | Find effects: `kind` motion (primitives to apply to nodes) or vector (effects with their own picture), `query`, `category`. |
158
+ | `search_effects` | Find effects: `kind` motion (primitives to apply to nodes) or vector (effects with their own picture), `query`, `category`. `kind` camera lists camera moves (with `camera`: role transition or hold, `durationMs`, `cut`); they move a scene's camera and cannot be applied with these tools. |
159
159
  | `describe_effect` | Read an effect's `controls` (names, ranges, units), `defaults` and `presets`, and whether it `appliesHere` (a motion effect). |
160
160
  | `list_applied_effects` | See the provider effects in the scene: their `instance` ids, the nodes they animate, their shots and values. |
161
161
  | `apply_effect` | Animate a node (`target`, a group animates as one) with a motion effect: the changes become ordinary commands, tagged with the effect, in a new shot after the last. Returns the instance id. |
@@ -48,8 +48,9 @@ This skill is the method. `pixerate-image-editor` has the tool reference, and it
48
48
  3. **Make a retouch layer.** `add_pixel_layer` named "Retouch" above the photo; all healing goes
49
49
  on it with `sample: "current-below"`.
50
50
  **Check:** `list_layers` shows it active above the photo.
51
- 4. **Heal small to large.** `spot_heal` for spots (one dab, `brush.size` a little larger than the
52
- spot, `hardness` 0.2-0.5); a short stroke of dabs along a stray hair. `heal_brush` from a clean
51
+ 4. **Heal small to large.** `spot_heal` for spots (one dab, `hardness` 0.2-0.5, `brush.size`
52
+ 2.5-3× the spot's width: a soft brush heals fully only in its middle, so one just over the
53
+ spot leaves a dark ring); a short stroke of dabs along a stray hair. `heal_brush` from a clean
53
54
  source of the same texture for larger flaws; `clone_stamp` near edges (lips, eyes, hairline)
54
55
  where healing would pull colour across.
55
56
  **Check:** `measure_region` around each flaw: its `p1` is near the clean skin's; `capture_view`
@@ -82,7 +83,9 @@ This skill is the method. `pixerate-image-editor` has the tool reference, and it
82
83
  ## Recipes
83
84
 
84
85
  **Clean-up pass.** `add_pixel_layer` "Retouch" → one `spot_heal` per spot (`points: [{x, y}]`,
85
- `sample: "current-below"`, `brush: { size, hardness: 0.3 }`) → `measure_region` around each.
86
+ `sample: "current-below"`, `brush: { size: 3 × the spot, hardness: 0.3 }`) → `measure_region` on
87
+ a box about 3× the spot around each. The spot is gone when the box's `stats.luminance.p1` is
88
+ within about 10 levels of the skin's around it; if not, the edge is left: dab again one size up.
86
89
 
87
90
  **Stray hair.** `spot_heal` with `points` every 8-10 px along the hair and a brush 1.5-2× its
88
91
  width; check the whole length with one `measure_region` box over it.
@@ -97,8 +100,9 @@ width; check the whole length with one `measure_region` box over it.
97
100
  `current-below`.
98
101
  - **An empty layer with `sample: "current"`** has nothing to copy, so the stroke does nothing.
99
102
  - **Over-smoothing.** Blurring skin removes pores and looks fake; heal flaws instead.
100
- - **Big brushes.** A heal brush much larger than the flaw pulls in colour from around it; keep it
101
- just over the flaw.
103
+ - **Brush size.** Too small a soft brush leaves a faint ring of the flaw (its edge falls in the
104
+ brush's soft falloff); much larger than about 4× the flaw pulls in colour from around it. Aim
105
+ for 2.5-3× the flaw's width with a soft brush, or about 1.5× with `hardness` near 1.
102
106
  - **Healing across an edge** smears lips or lashes into skin; clone along edges instead.
103
107
  - **Removing features.** Moles, freckles and scars are part of a face; ask before removing them.
104
108
  - **Bright white eyes and teeth** look unnatural; small gamma moves, and measure.
@@ -284,7 +284,7 @@ and every write tool is refused with the reason.
284
284
 
285
285
  | Tool | Use it to |
286
286
  | --- | --- |
287
- | `search_effects` | Find effects: words in `query`, filtered by `kind`, `category` or `use` (filter, overlay for clips; transition; generator, title). Returns ids, names, uses, whether they are transparent or loop, and their length. Call `describe_effect` next. |
287
+ | `search_effects` | Find effects: words in `query`, filtered by `kind`, `category` or `use` (filter, overlay for clips; transition; generator, title). Returns ids, names, uses, whether they are transparent or loop, and their length. Camera moves (`kind` camera) are listed but not applied to clips (`appliesHere` false). Call `describe_effect` next. |
288
288
  | `describe_effect` | Read one effect's `controls` (a strict JSON Schema: names, types, ranges, units), `defaults`, `presets` and `inputs`, and whether it `appliesHere` (as a clip effect). Use the names and ranges for values. |
289
289
  | `list_applied_effects` | See the effects in the project per clip, in order: clip effects (`fx1`...), an effect clip's own effect (`generator`) and an effect transition (`transition`), with their saved values and `available` (false when the provider lacks it: drawn as a placeholder). |
290
290
  | `apply_effect` | Add a filter or overlay effect to a clip's stack (`target` clip id, `effect`, `values`, `index`, `enabled`, `opacity`). Effects run in order on the clip's picture before its grade and placement. Returns the effect's new id and the clip's effects. |