@agrhub/engine-pixi 1.4.0 → 1.4.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.
- package/NOTICE.md +1 -0
- package/dist/clips/caption-clip.d.ts +2 -0
- package/dist/index.es.js +8 -3
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.cjs +1 -1
- package/dist/index.umd.cjs.map +1 -1
- package/dist/standalone/index.es.js +8 -3
- package/dist/standalone/index.es.js.map +1 -1
- package/package.json +1 -1
package/NOTICE.md
CHANGED
|
@@ -18,3 +18,4 @@ relicense or sublicense a derivative of OpenVideo.
|
|
|
18
18
|
- StudioBridge: patches applied in order, rebuilds coalesced, latest-wins seeking, listener-safe dispose.
|
|
19
19
|
- Export: falls back to an encodable audio codec (AAC -> 44.1 kHz -> Opus) instead of failing; long audio decodes no longer abort the export.
|
|
20
20
|
- 1.4.0 (selected changes from OpenVideo 1.4.0; the 1.3 caption model is kept): EdgeCrop mask animation ("edgeCrop"); muted clips and tracks (preview, export and studio sync; unmuting keeps decoded audio); custom transition shader values; effect layers sized correctly when exporting at a different resolution than the project.
|
|
21
|
+
- 1.4.1: Caption colour/animation changes coming from Core (caption.setColors, undo) are redrawn immediately; a caption whose own colours are removed (e.g. by undo) falls back to its track colours instead of keeping stale ones; an empty wordsPerLine no longer overrides the track setting.
|
|
@@ -87,6 +87,8 @@ export declare class Caption extends BaseTextClip<ICaptionEvents> implements ICl
|
|
|
87
87
|
private _keywordPreserveAfterSpoken;
|
|
88
88
|
private _wordAnimation;
|
|
89
89
|
private _wordsPerLine;
|
|
90
|
+
/** Track-level colours this clip inherits when it has none of its own (set by fromObject) */
|
|
91
|
+
private _trackCaptionColors?;
|
|
90
92
|
protected _videoWidth: number;
|
|
91
93
|
protected _videoHeight: number;
|
|
92
94
|
protected _bottomOffset: number;
|
package/dist/index.es.js
CHANGED
|
@@ -3361,6 +3361,8 @@ class At extends oi {
|
|
|
3361
3361
|
_keywordPreserveAfterSpoken = !1;
|
|
3362
3362
|
_wordAnimation = { type: "scale", application: "none", value: 1 };
|
|
3363
3363
|
_wordsPerLine = "multiple";
|
|
3364
|
+
/** Track-level colours this clip inherits when it has none of its own (set by fromObject) */
|
|
3365
|
+
_trackCaptionColors;
|
|
3364
3366
|
_videoWidth = 1280;
|
|
3365
3367
|
_videoHeight = 720;
|
|
3366
3368
|
_bottomOffset = 100;
|
|
@@ -3395,7 +3397,10 @@ class At extends oi {
|
|
|
3395
3397
|
};
|
|
3396
3398
|
}
|
|
3397
3399
|
set caption(t) {
|
|
3398
|
-
|
|
3400
|
+
if (!t) return;
|
|
3401
|
+
t.words && (this._words = t.words, this.originalOpts && (this.originalOpts.words = t.words));
|
|
3402
|
+
const e = Array.isArray(t.words), i = t.colors ?? (e ? this._trackCaptionColors ?? {} : void 0), s = !t.colors && e;
|
|
3403
|
+
i && (("active" in i || s) && (this.originalOpts.activeStyle = i.active ?? void 0), ("future" in i || s) && (this.originalOpts.futureStyle = i.future ?? void 0), ("keyword" in i || s) && (i.keyword != null ? (this.originalOpts.keywordColor = i.keyword.color, this.originalOpts.keywordPreserveAfterSpoken = i.keyword.preserveAfterSpoken) : (this.originalOpts.keywordColor = void 0, this.originalOpts.keywordPreserveAfterSpoken = void 0))), t.wordAnimation !== void 0 && (this.originalOpts.wordAnimation = t.wordAnimation), t.positioning && (t.positioning.videoWidth !== void 0 && (this._videoWidth = t.positioning.videoWidth), t.positioning.videoHeight !== void 0 && (this._videoHeight = t.positioning.videoHeight), t.positioning.bottomOffset !== void 0 && (this._bottomOffset = t.positioning.bottomOffset)), this._syncOpts(), (i || t.wordAnimation !== void 0 || t.words) && (this._buildTextStyles(), this.refreshText().then(() => this.emit("propsChange", { caption: t })));
|
|
3399
3404
|
}
|
|
3400
3405
|
// ─── Words ────────────────────────────────────────────────────────────────
|
|
3401
3406
|
get words() {
|
|
@@ -3414,7 +3419,7 @@ class At extends oi {
|
|
|
3414
3419
|
return this._wordsPerLine;
|
|
3415
3420
|
}
|
|
3416
3421
|
set wordsPerLine(t) {
|
|
3417
|
-
this._wordsPerLine = t, this.originalOpts && (this.originalOpts.wordsPerLine = t), this.refreshText();
|
|
3422
|
+
t && (this._wordsPerLine = t, this.originalOpts && (this.originalOpts.wordsPerLine = t), this.refreshText());
|
|
3418
3423
|
}
|
|
3419
3424
|
// ─── Style proxy ──────────────────────────────────────────────────────────
|
|
3420
3425
|
get style() {
|
|
@@ -3643,7 +3648,7 @@ class At extends oi {
|
|
|
3643
3648
|
});
|
|
3644
3649
|
o.initialLayoutApplied = !0;
|
|
3645
3650
|
const c = new At(s, o);
|
|
3646
|
-
return q.deserializeBaseProperties(c, t), c.wordsPerLine = (a(t.wordsPerLine) ? t.wordsPerLine : void 0) ?? i?.wordsPerLine ?? "multiple", t.effects && (c.effects = t.effects), await c.ready, c;
|
|
3651
|
+
return c._trackCaptionColors = i?.colors, q.deserializeBaseProperties(c, t), c.wordsPerLine = (a(t.wordsPerLine) ? t.wordsPerLine : void 0) ?? i?.wordsPerLine ?? "multiple", t.effects && (c.effects = t.effects), await c.ready, c;
|
|
3647
3652
|
}
|
|
3648
3653
|
getVisibleHandles() {
|
|
3649
3654
|
return ["mr", "mb", "br", "rot"];
|