n8n-nodes-sb-render 1.6.2 → 1.6.3
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/dist/nodes/SbRender/services/ParallaxEngine.d.ts +3 -0
- package/dist/nodes/SbRender/services/ParallaxEngine.d.ts.map +1 -1
- package/dist/nodes/SbRender/services/ParallaxEngine.js +144 -265
- package/dist/nodes/SbRender/services/ParallaxEngine.js.map +1 -1
- package/dist/nodes/SbRender/services/VideoComposer.d.ts.map +1 -1
- package/dist/nodes/SbRender/services/VideoComposer.js +117 -81
- package/dist/nodes/SbRender/services/VideoComposer.js.map +1 -1
- package/package.json +1 -1
- package/scripts/__pycache__/depth_parallax.cpython-312.pyc +0 -0
- package/scripts/depth_parallax.py +373 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export type ParallaxDirection = 'left' | 'right' | 'up' | 'down' | 'zoomIn' | 'zoomOut';
|
|
2
2
|
export type ParallaxIntensity = 'subtle' | 'normal' | 'dramatic';
|
|
3
|
+
export type ParallaxZoom = 'none' | 'in' | 'out';
|
|
3
4
|
export interface ParallaxConfig {
|
|
4
5
|
direction: ParallaxDirection;
|
|
5
6
|
intensity: ParallaxIntensity;
|
|
6
7
|
layerCount?: number;
|
|
8
|
+
zoom?: ParallaxZoom;
|
|
7
9
|
}
|
|
8
10
|
export declare class ParallaxEngine {
|
|
9
11
|
private sharpAvailable;
|
|
@@ -19,6 +21,7 @@ export declare class ParallaxEngine {
|
|
|
19
21
|
/**
|
|
20
22
|
* Generate parallax video from a single image
|
|
21
23
|
* Main entry point for creating parallax effect videos
|
|
24
|
+
* Uses AI depth estimation for true parallax, falls back to Ken Burns
|
|
22
25
|
*/
|
|
23
26
|
generateParallaxVideo(imagePath: string, outputPath: string, config: ParallaxConfig, duration: number, fps?: number, _videoCodec?: string, _quality?: string, _customCRF?: number): Promise<Buffer>;
|
|
24
27
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParallaxEngine.d.ts","sourceRoot":"","sources":["../../../../nodes/SbRender/services/ParallaxEngine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ParallaxEngine.d.ts","sourceRoot":"","sources":["../../../../nodes/SbRender/services/ParallaxEngine.ts"],"names":[],"mappings":"AAmHA,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AACxF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;AACjE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AA8KD,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAS;IAE5B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IASjC;;OAEG;IACH,wBAAwB,IAAI,OAAO;IAInC;;;;OAIG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,GAAG,SAAK,EACR,WAAW,SAAY,EACvB,QAAQ,SAAS,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC;IAyElB;;OAEG;IACG,sBAAsB,CAC1B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,GAAG,SAAK,GACP,OAAO,CAAC,MAAM,EAAE,CAAC;CAKrB;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
|
|
@@ -45,304 +45,166 @@ const fs = __importStar(require("fs"));
|
|
|
45
45
|
const path = __importStar(require("path"));
|
|
46
46
|
const ffmpeg_wrapper_1 = require("../utils/ffmpeg-wrapper");
|
|
47
47
|
const child_process_1 = require("child_process");
|
|
48
|
-
//
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
// Path to the depth parallax Python script
|
|
49
|
+
// In compiled code, __dirname is dist/nodes/SbRender/services/
|
|
50
|
+
// Script is at project_root/scripts/depth_parallax.py
|
|
51
|
+
const DEPTH_SCRIPT_PATH = path.join(__dirname, '../../../../scripts/depth_parallax.py');
|
|
52
|
+
// Check if Python depth estimation is available
|
|
53
|
+
let pythonDepthAvailable = null;
|
|
54
|
+
async function checkPythonDepth() {
|
|
55
|
+
if (pythonDepthAvailable !== null)
|
|
56
|
+
return pythonDepthAvailable;
|
|
53
57
|
try {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
console.warn('[ParallaxEngine] Sharp not available:', error.message);
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Get motion parameters based on intensity
|
|
65
|
-
*/
|
|
66
|
-
function getIntensityParams(intensity) {
|
|
67
|
-
switch (intensity) {
|
|
68
|
-
case 'subtle':
|
|
69
|
-
return { fgSpeed: 0.04, bgSpeed: 0.015, scaleRange: 0.02 };
|
|
70
|
-
case 'normal':
|
|
71
|
-
return { fgSpeed: 0.08, bgSpeed: 0.025, scaleRange: 0.04 };
|
|
72
|
-
case 'dramatic':
|
|
73
|
-
return { fgSpeed: 0.15, bgSpeed: 0.04, scaleRange: 0.08 };
|
|
74
|
-
default:
|
|
75
|
-
return { fgSpeed: 0.08, bgSpeed: 0.025, scaleRange: 0.04 };
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Create a gradient mask for layer separation
|
|
80
|
-
* Returns RGBA buffer where alpha determines visibility
|
|
81
|
-
*/
|
|
82
|
-
function createGradientMask(width, height, type, layerIndex, totalLayers) {
|
|
83
|
-
// Create RGBA buffer
|
|
84
|
-
const buffer = Buffer.alloc(width * height * 4);
|
|
85
|
-
// Calculate layer boundaries
|
|
86
|
-
const layerHeight = height / totalLayers;
|
|
87
|
-
const layerStart = (totalLayers - 1 - layerIndex) * layerHeight; // Reverse: top layers are background
|
|
88
|
-
const layerEnd = layerStart + layerHeight;
|
|
89
|
-
// Feather zone for smooth transitions
|
|
90
|
-
const featherSize = layerHeight * 0.3;
|
|
91
|
-
for (let y = 0; y < height; y++) {
|
|
92
|
-
let alpha = 0;
|
|
93
|
-
if (y >= layerStart && y < layerEnd) {
|
|
94
|
-
// Inside layer
|
|
95
|
-
alpha = 255;
|
|
96
|
-
// Apply feathering at edges
|
|
97
|
-
if (y < layerStart + featherSize) {
|
|
98
|
-
alpha = Math.floor(((y - layerStart) / featherSize) * 255);
|
|
99
|
-
}
|
|
100
|
-
else if (y > layerEnd - featherSize) {
|
|
101
|
-
alpha = Math.floor(((layerEnd - y) / featherSize) * 255);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
else if (y < layerStart && y > layerStart - featherSize) {
|
|
105
|
-
// Fade in from above
|
|
106
|
-
alpha = Math.floor(((layerStart - y) / featherSize) * 128);
|
|
107
|
-
}
|
|
108
|
-
else if (y >= layerEnd && y < layerEnd + featherSize) {
|
|
109
|
-
// Fade out below
|
|
110
|
-
alpha = Math.floor(((y - layerEnd) / featherSize) * 128);
|
|
111
|
-
}
|
|
112
|
-
// For foreground (bottom), extend fully to bottom
|
|
113
|
-
if (type === 'foreground' && layerIndex === 0 && y >= layerStart) {
|
|
114
|
-
alpha = 255;
|
|
115
|
-
}
|
|
116
|
-
// For background (top), extend fully to top
|
|
117
|
-
if (type === 'background' && layerIndex === totalLayers - 1 && y <= layerEnd) {
|
|
118
|
-
alpha = 255;
|
|
58
|
+
// Check if Python and required packages are available
|
|
59
|
+
(0, child_process_1.execSync)('python3 -c "import torch; import transformers"', { stdio: 'pipe' });
|
|
60
|
+
if (fs.existsSync(DEPTH_SCRIPT_PATH)) {
|
|
61
|
+
pythonDepthAvailable = true;
|
|
62
|
+
console.log('[ParallaxEngine] Python depth estimation available');
|
|
119
63
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
buffer[idx + 1] = 255; // G
|
|
124
|
-
buffer[idx + 2] = 255; // B
|
|
125
|
-
buffer[idx + 3] = alpha; // A
|
|
64
|
+
else {
|
|
65
|
+
pythonDepthAvailable = false;
|
|
66
|
+
console.log('[ParallaxEngine] Depth script not found:', DEPTH_SCRIPT_PATH);
|
|
126
67
|
}
|
|
127
68
|
}
|
|
128
|
-
|
|
69
|
+
catch {
|
|
70
|
+
pythonDepthAvailable = false;
|
|
71
|
+
console.log('[ParallaxEngine] Python depth estimation not available (missing torch/transformers)');
|
|
72
|
+
}
|
|
73
|
+
return pythonDepthAvailable;
|
|
129
74
|
}
|
|
130
75
|
/**
|
|
131
|
-
* Generate
|
|
76
|
+
* Generate parallax using AI depth estimation (Python + Depth Anything)
|
|
77
|
+
* Creates true layer separation based on depth map
|
|
132
78
|
*/
|
|
133
|
-
async function
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
for (let i = 0; i < numLayers; i++) {
|
|
158
|
-
const type = i === 0 ? 'foreground' : i === numLayers - 1 ? 'background' : 'middle';
|
|
159
|
-
layerMasks.push(createGradientMask(imgWidth, imgHeight, type, i, numLayers));
|
|
160
|
-
}
|
|
161
|
-
// Generate each frame
|
|
162
|
-
console.log(`[ParallaxEngine] Generating ${totalFrames} frames...`);
|
|
163
|
-
for (let frameNum = 0; frameNum < totalFrames; frameNum++) {
|
|
164
|
-
// Progress from -1 to 1 (centered animation)
|
|
165
|
-
const progress = ((frameNum / (totalFrames - 1)) - 0.5) * 2;
|
|
166
|
-
// Start with a base canvas (slightly larger for movement headroom)
|
|
167
|
-
const canvasWidth = Math.floor(imgWidth * 1.2);
|
|
168
|
-
const canvasHeight = Math.floor(imgHeight * 1.2);
|
|
169
|
-
// Create composites array for all layers
|
|
170
|
-
const composites = [];
|
|
171
|
-
// Process each layer (background to foreground)
|
|
172
|
-
for (let layerIdx = numLayers - 1; layerIdx >= 0; layerIdx--) {
|
|
173
|
-
// Calculate movement for this layer
|
|
174
|
-
// Background layers (higher index) move less, foreground layers move more
|
|
175
|
-
const depthFactor = layerIdx / (numLayers - 1); // 0 = foreground, 1 = background
|
|
176
|
-
const layerSpeed = params.bgSpeed + (params.fgSpeed - params.bgSpeed) * (1 - depthFactor);
|
|
177
|
-
let offsetX = 0;
|
|
178
|
-
let offsetY = 0;
|
|
179
|
-
let scale = 1.0;
|
|
180
|
-
switch (config.direction) {
|
|
181
|
-
case 'left':
|
|
182
|
-
offsetX = Math.round(progress * layerSpeed * imgWidth);
|
|
183
|
-
break;
|
|
184
|
-
case 'right':
|
|
185
|
-
offsetX = Math.round(-progress * layerSpeed * imgWidth);
|
|
186
|
-
break;
|
|
187
|
-
case 'up':
|
|
188
|
-
offsetY = Math.round(progress * layerSpeed * imgHeight);
|
|
189
|
-
break;
|
|
190
|
-
case 'down':
|
|
191
|
-
offsetY = Math.round(-progress * layerSpeed * imgHeight);
|
|
192
|
-
break;
|
|
193
|
-
case 'zoomIn':
|
|
194
|
-
scale = 1 + (progress + 1) * params.scaleRange * (1 - depthFactor * 0.5);
|
|
195
|
-
break;
|
|
196
|
-
case 'zoomOut':
|
|
197
|
-
scale = 1 + (1 - progress) * params.scaleRange * (1 - depthFactor * 0.5);
|
|
198
|
-
break;
|
|
79
|
+
async function generateDepthParallax(imagePath, outputPath, config, duration, fps) {
|
|
80
|
+
return new Promise((resolve, reject) => {
|
|
81
|
+
const options = JSON.stringify({
|
|
82
|
+
direction: config.direction,
|
|
83
|
+
intensity: config.intensity,
|
|
84
|
+
duration,
|
|
85
|
+
fps,
|
|
86
|
+
layerCount: config.layerCount || 3,
|
|
87
|
+
zoom: config.zoom || 'none',
|
|
88
|
+
});
|
|
89
|
+
console.log(`[ParallaxEngine] Running depth estimation: python3 ${DEPTH_SCRIPT_PATH}`);
|
|
90
|
+
const proc = (0, child_process_1.spawn)('python3', [DEPTH_SCRIPT_PATH, imagePath, outputPath, options], {
|
|
91
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
92
|
+
});
|
|
93
|
+
let stdout = '';
|
|
94
|
+
let stderr = '';
|
|
95
|
+
proc.stdout.on('data', (data) => { stdout += data.toString(); });
|
|
96
|
+
proc.stderr.on('data', (data) => {
|
|
97
|
+
stderr += data.toString();
|
|
98
|
+
// Log progress messages
|
|
99
|
+
const lines = data.toString().split('\n');
|
|
100
|
+
for (const line of lines) {
|
|
101
|
+
if (line.trim()) {
|
|
102
|
+
console.log(`[DepthParallax] ${line.trim()}`);
|
|
199
103
|
}
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
proc.on('close', (code) => {
|
|
107
|
+
if (code !== 0) {
|
|
108
|
+
console.error('[ParallaxEngine] Depth parallax failed:', stderr);
|
|
109
|
+
reject(new Error(`Depth parallax failed with code ${code}: ${stderr}`));
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
try {
|
|
113
|
+
const result = JSON.parse(stdout);
|
|
114
|
+
if (result.success) {
|
|
115
|
+
console.log('[ParallaxEngine] Depth parallax completed successfully');
|
|
116
|
+
resolve();
|
|
210
117
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
raw: { width: imgWidth, height: imgHeight, channels: 4 },
|
|
214
|
-
});
|
|
215
|
-
// Apply scale if needed
|
|
216
|
-
if (scale !== 1.0) {
|
|
217
|
-
const scaledWidth = Math.round(imgWidth * scale);
|
|
218
|
-
const scaledHeight = Math.round(imgHeight * scale);
|
|
219
|
-
layerImage = layerImage.resize(scaledWidth, scaledHeight, { fit: 'fill' });
|
|
220
|
-
// Extract center portion back to original size
|
|
221
|
-
const cropX = Math.floor((scaledWidth - imgWidth) / 2);
|
|
222
|
-
const cropY = Math.floor((scaledHeight - imgHeight) / 2);
|
|
223
|
-
layerImage = layerImage.extract({
|
|
224
|
-
left: Math.max(0, cropX),
|
|
225
|
-
top: Math.max(0, cropY),
|
|
226
|
-
width: Math.min(imgWidth, scaledWidth),
|
|
227
|
-
height: Math.min(imgHeight, scaledHeight),
|
|
228
|
-
});
|
|
118
|
+
else {
|
|
119
|
+
reject(new Error(result.error || 'Unknown error'));
|
|
229
120
|
}
|
|
230
|
-
const layerBuffer = await layerImage.ensureAlpha().raw().toBuffer();
|
|
231
|
-
// Calculate position on canvas
|
|
232
|
-
const baseX = Math.floor((canvasWidth - imgWidth) / 2);
|
|
233
|
-
const baseY = Math.floor((canvasHeight - imgHeight) / 2);
|
|
234
|
-
composites.push({
|
|
235
|
-
input: layerBuffer,
|
|
236
|
-
raw: { width: imgWidth, height: imgHeight, channels: 4 },
|
|
237
|
-
left: baseX + offsetX,
|
|
238
|
-
top: baseY + offsetY,
|
|
239
|
-
blend: 'over',
|
|
240
|
-
});
|
|
241
|
-
}
|
|
242
|
-
// Create the final frame by compositing all layers
|
|
243
|
-
let frame = sharp({
|
|
244
|
-
create: {
|
|
245
|
-
width: canvasWidth,
|
|
246
|
-
height: canvasHeight,
|
|
247
|
-
channels: 4,
|
|
248
|
-
background: { r: 0, g: 0, b: 0, alpha: 255 },
|
|
249
|
-
},
|
|
250
|
-
});
|
|
251
|
-
// Add each layer
|
|
252
|
-
for (const comp of composites) {
|
|
253
|
-
frame = sharp(await frame.png().toBuffer()).composite([{
|
|
254
|
-
input: comp.input,
|
|
255
|
-
raw: comp.raw,
|
|
256
|
-
left: comp.left,
|
|
257
|
-
top: comp.top,
|
|
258
|
-
blend: comp.blend,
|
|
259
|
-
}]);
|
|
260
121
|
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
if (frameNum % Math.max(1, Math.floor(totalFrames / 10)) === 0) {
|
|
270
|
-
console.log(`[ParallaxEngine] Frame ${frameNum + 1}/${totalFrames}`);
|
|
122
|
+
catch {
|
|
123
|
+
// If no JSON output, assume success if file exists
|
|
124
|
+
if (fs.existsSync(outputPath)) {
|
|
125
|
+
resolve();
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
reject(new Error('Depth parallax failed: no output file'));
|
|
129
|
+
}
|
|
271
130
|
}
|
|
272
|
-
}
|
|
273
|
-
// Combine frames into video using FFmpeg
|
|
274
|
-
console.log('[ParallaxEngine] Combining frames into video...');
|
|
275
|
-
const inputPattern = path.join(tempDir, 'frame_%05d.png');
|
|
276
|
-
await new Promise((resolve, reject) => {
|
|
277
|
-
const command = (0, ffmpeg_wrapper_1.createCommand)();
|
|
278
|
-
command
|
|
279
|
-
.input(inputPattern)
|
|
280
|
-
.inputOptions([`-framerate ${fps}`])
|
|
281
|
-
.outputOptions([
|
|
282
|
-
'-c:v libx264',
|
|
283
|
-
'-crf 18',
|
|
284
|
-
'-preset medium',
|
|
285
|
-
'-pix_fmt yuv420p',
|
|
286
|
-
'-movflags +faststart',
|
|
287
|
-
])
|
|
288
|
-
.format('mp4')
|
|
289
|
-
.output(outputPath);
|
|
290
|
-
command.on('start', (cmd) => {
|
|
291
|
-
console.log(`[ParallaxEngine] FFmpeg: ${cmd}`);
|
|
292
|
-
});
|
|
293
|
-
command.on('error', (err) => reject(err));
|
|
294
|
-
command.on('end', () => resolve());
|
|
295
|
-
command.run();
|
|
296
131
|
});
|
|
297
|
-
|
|
132
|
+
proc.on('error', (err) => {
|
|
133
|
+
console.error('[ParallaxEngine] Failed to spawn Python process:', err);
|
|
134
|
+
reject(err);
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
// Try to load sharp (optional dependency)
|
|
139
|
+
let sharp = null;
|
|
140
|
+
async function loadSharp() {
|
|
141
|
+
if (sharp !== null)
|
|
142
|
+
return true;
|
|
143
|
+
try {
|
|
144
|
+
sharp = (await Promise.resolve().then(() => __importStar(require('sharp')))).default;
|
|
145
|
+
console.log('[ParallaxEngine] Sharp loaded successfully');
|
|
146
|
+
return true;
|
|
298
147
|
}
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
303
|
-
}
|
|
148
|
+
catch (error) {
|
|
149
|
+
console.warn('[ParallaxEngine] Sharp not available:', error.message);
|
|
150
|
+
return false;
|
|
304
151
|
}
|
|
305
152
|
}
|
|
306
153
|
/**
|
|
307
|
-
*
|
|
308
|
-
*
|
|
154
|
+
* Ken Burns effect using zoompan with optimized settings
|
|
155
|
+
* Uses higher zoom and stronger movement for visible parallax
|
|
309
156
|
*/
|
|
310
157
|
async function generateSimpleKenBurns(imagePath, outputPath, config, duration, fps, width, height) {
|
|
311
|
-
const params = getIntensityParams(config.intensity);
|
|
312
158
|
const totalFrames = Math.ceil(duration * fps);
|
|
159
|
+
// Movement intensity - increased for more visible effect
|
|
160
|
+
const intensityMultiplier = config.intensity === 'subtle' ? 0.7 :
|
|
161
|
+
config.intensity === 'dramatic' ? 1.6 : 1.0;
|
|
162
|
+
// Higher base zoom for smoother subpixel movement
|
|
163
|
+
const baseZoom = 1.3;
|
|
164
|
+
// Stronger zoom change
|
|
165
|
+
const zoomDelta = 0.12 * intensityMultiplier;
|
|
166
|
+
// Stronger pan movement (percentage of available space)
|
|
167
|
+
const panSpeed = 0.15 * intensityMultiplier;
|
|
313
168
|
let zoomExpr;
|
|
314
169
|
let xExpr;
|
|
315
170
|
let yExpr;
|
|
316
|
-
|
|
317
|
-
|
|
171
|
+
// Smooth easing using sine function for natural movement
|
|
172
|
+
// on = frame number, goes from 0 to totalFrames
|
|
173
|
+
// Using smooth start/end with sine easing
|
|
174
|
+
const progress = `on/${totalFrames}`;
|
|
175
|
+
const easeInOut = `(1-cos(${progress}*PI))/2`;
|
|
318
176
|
switch (config.direction) {
|
|
319
177
|
case 'left':
|
|
320
|
-
|
|
321
|
-
|
|
178
|
+
// Pan from right to left
|
|
179
|
+
zoomExpr = `${baseZoom}+${zoomDelta}*${progress}`;
|
|
180
|
+
xExpr = `(iw-ow)/2*(1+${panSpeed})-${panSpeed}*(iw-ow)/2*${easeInOut}*2`;
|
|
322
181
|
yExpr = `(ih-oh)/2`;
|
|
323
182
|
break;
|
|
324
183
|
case 'right':
|
|
325
|
-
|
|
326
|
-
|
|
184
|
+
// Pan from left to right
|
|
185
|
+
zoomExpr = `${baseZoom}+${zoomDelta}*${progress}`;
|
|
186
|
+
xExpr = `(iw-ow)/2*(1-${panSpeed})+${panSpeed}*(iw-ow)/2*${easeInOut}*2`;
|
|
327
187
|
yExpr = `(ih-oh)/2`;
|
|
328
188
|
break;
|
|
329
189
|
case 'up':
|
|
330
|
-
|
|
190
|
+
// Pan from bottom to top
|
|
191
|
+
zoomExpr = `${baseZoom}+${zoomDelta}*${progress}`;
|
|
331
192
|
xExpr = `(iw-ow)/2`;
|
|
332
|
-
yExpr = `(ih-oh)/2-${
|
|
193
|
+
yExpr = `(ih-oh)/2*(1+${panSpeed})-${panSpeed}*(ih-oh)/2*${easeInOut}*2`;
|
|
333
194
|
break;
|
|
334
195
|
case 'down':
|
|
335
|
-
|
|
196
|
+
// Pan from top to bottom
|
|
197
|
+
zoomExpr = `${baseZoom}+${zoomDelta}*${progress}`;
|
|
336
198
|
xExpr = `(iw-ow)/2`;
|
|
337
|
-
yExpr = `(ih-oh)/2+${
|
|
199
|
+
yExpr = `(ih-oh)/2*(1-${panSpeed})+${panSpeed}*(ih-oh)/2*${easeInOut}*2`;
|
|
338
200
|
break;
|
|
339
201
|
case 'zoomIn':
|
|
340
|
-
zoomExpr = `${baseZoom}+${zoomDelta *
|
|
202
|
+
zoomExpr = `${baseZoom}+${zoomDelta * 2.5}*${easeInOut}`;
|
|
341
203
|
xExpr = `(iw-ow)/2`;
|
|
342
204
|
yExpr = `(ih-oh)/2`;
|
|
343
205
|
break;
|
|
344
206
|
case 'zoomOut':
|
|
345
|
-
zoomExpr = `${baseZoom + zoomDelta *
|
|
207
|
+
zoomExpr = `${baseZoom + zoomDelta * 2.5}-${zoomDelta * 2.5}*${easeInOut}`;
|
|
346
208
|
xExpr = `(iw-ow)/2`;
|
|
347
209
|
yExpr = `(ih-oh)/2`;
|
|
348
210
|
break;
|
|
@@ -351,12 +213,13 @@ async function generateSimpleKenBurns(imagePath, outputPath, config, duration, f
|
|
|
351
213
|
xExpr = `(iw-ow)/2`;
|
|
352
214
|
yExpr = `(ih-oh)/2`;
|
|
353
215
|
}
|
|
354
|
-
|
|
216
|
+
// zoompan filter with smooth interpolation
|
|
217
|
+
const filterChain = `zoompan=z='${zoomExpr}':x='${xExpr}':y='${yExpr}':d=${totalFrames}:s=${width}x${height}:fps=${fps}`;
|
|
355
218
|
return new Promise((resolve, reject) => {
|
|
356
219
|
const command = (0, ffmpeg_wrapper_1.createCommand)(imagePath);
|
|
357
220
|
command
|
|
358
221
|
.inputOptions(['-loop 1'])
|
|
359
|
-
.videoFilters([
|
|
222
|
+
.videoFilters([filterChain])
|
|
360
223
|
.outputOptions([
|
|
361
224
|
`-t ${duration}`,
|
|
362
225
|
'-pix_fmt yuv420p',
|
|
@@ -443,6 +306,7 @@ class ParallaxEngine {
|
|
|
443
306
|
/**
|
|
444
307
|
* Generate parallax video from a single image
|
|
445
308
|
* Main entry point for creating parallax effect videos
|
|
309
|
+
* Uses AI depth estimation for true parallax, falls back to Ken Burns
|
|
446
310
|
*/
|
|
447
311
|
async generateParallaxVideo(imagePath, outputPath, config, duration, fps = 24, _videoCodec = 'libx264', _quality = 'high', _customCRF) {
|
|
448
312
|
await this.initialize();
|
|
@@ -453,15 +317,17 @@ class ParallaxEngine {
|
|
|
453
317
|
const width = Math.floor(dimensions.width / 2) * 2; // Ensure even
|
|
454
318
|
const height = Math.floor(dimensions.height / 2) * 2;
|
|
455
319
|
console.log(`[ParallaxEngine] Output size: ${width}x${height}`);
|
|
320
|
+
// Check if Python depth estimation is available
|
|
321
|
+
const depthAvailable = await checkPythonDepth();
|
|
456
322
|
try {
|
|
457
|
-
if (
|
|
458
|
-
// Use true
|
|
459
|
-
console.log('[ParallaxEngine] Using
|
|
460
|
-
await
|
|
323
|
+
if (depthAvailable) {
|
|
324
|
+
// Use AI depth-based parallax for true layer separation
|
|
325
|
+
console.log('[ParallaxEngine] Using AI depth-based parallax (Depth Anything V2)');
|
|
326
|
+
await generateDepthParallax(imagePath, outputPath, config, duration, fps);
|
|
461
327
|
}
|
|
462
328
|
else {
|
|
463
|
-
//
|
|
464
|
-
console.log('[ParallaxEngine] Using Ken Burns
|
|
329
|
+
// Fall back to Ken Burns effect
|
|
330
|
+
console.log('[ParallaxEngine] Using Ken Burns effect (depth estimation not available)');
|
|
465
331
|
await generateSimpleKenBurns(imagePath, outputPath, config, duration, fps, width, height);
|
|
466
332
|
}
|
|
467
333
|
const buffer = fs.readFileSync(outputPath);
|
|
@@ -470,6 +336,19 @@ class ParallaxEngine {
|
|
|
470
336
|
}
|
|
471
337
|
catch (error) {
|
|
472
338
|
console.error('[ParallaxEngine] Error generating parallax:', error);
|
|
339
|
+
// If depth parallax failed, try Ken Burns as fallback
|
|
340
|
+
if (depthAvailable) {
|
|
341
|
+
console.log('[ParallaxEngine] Depth parallax failed, falling back to Ken Burns');
|
|
342
|
+
try {
|
|
343
|
+
await generateSimpleKenBurns(imagePath, outputPath, config, duration, fps, width, height);
|
|
344
|
+
const buffer = fs.readFileSync(outputPath);
|
|
345
|
+
return buffer;
|
|
346
|
+
}
|
|
347
|
+
catch (fallbackError) {
|
|
348
|
+
console.error('[ParallaxEngine] Ken Burns fallback also failed:', fallbackError);
|
|
349
|
+
throw fallbackError;
|
|
350
|
+
}
|
|
351
|
+
}
|
|
473
352
|
throw error;
|
|
474
353
|
}
|
|
475
354
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParallaxEngine.js","sourceRoot":"","sources":["../../../../nodes/SbRender/services/ParallaxEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ParallaxEngine.js","sourceRoot":"","sources":["../../../../nodes/SbRender/services/ParallaxEngine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;GAMG;AACH,uCAAyB;AACzB,2CAA6B;AAC7B,4DAAwE;AACxE,iDAAgD;AAEhD,2CAA2C;AAC3C,+DAA+D;AAC/D,sDAAsD;AACtD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uCAAuC,CAAC,CAAC;AAExF,gDAAgD;AAChD,IAAI,oBAAoB,GAAmB,IAAI,CAAC;AAEhD,KAAK,UAAU,gBAAgB;IAC7B,IAAI,oBAAoB,KAAK,IAAI;QAAE,OAAO,oBAAoB,CAAC;IAE/D,IAAI,CAAC;QACH,sDAAsD;QACtD,IAAA,wBAAQ,EAAC,gDAAgD,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9E,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,oBAAoB,GAAG,IAAI,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,oBAAoB,GAAG,KAAK,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,0CAA0C,EAAE,iBAAiB,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oBAAoB,GAAG,KAAK,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;IACrG,CAAC;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,qBAAqB,CAClC,SAAiB,EACjB,UAAkB,EAClB,MAAsB,EACtB,QAAgB,EAChB,GAAW;IAEX,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ;YACR,GAAG;YACH,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM;SAC5B,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,sDAAsD,iBAAiB,EAAE,CAAC,CAAC;QAEvF,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,SAAS,EAAE,CAAC,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE;YACjF,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC9B,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,wBAAwB;YACxB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,MAAM,CAAC,CAAC;gBACjE,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC;gBACxE,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;oBACtE,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,mDAAmD;gBACnD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9B,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,GAAG,CAAC,CAAC;YACvE,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAaD,0CAA0C;AAC1C,IAAI,KAAK,GAAkC,IAAI,CAAC;AAEhD,KAAK,UAAU,SAAS;IACtB,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEhC,IAAI,CAAC;QACH,KAAK,GAAG,CAAC,wDAAa,OAAO,GAAC,CAAC,CAAC,OAAO,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAG,KAAe,CAAC,OAAO,CAAC,CAAC;QAChF,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CACnC,SAAiB,EACjB,UAAkB,EAClB,MAAsB,EACtB,QAAgB,EAChB,GAAW,EACX,KAAa,EACb,MAAc;IAEd,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC;IAE9C,yDAAyD;IACzD,MAAM,mBAAmB,GAAG,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAExE,kDAAkD;IAClD,MAAM,QAAQ,GAAG,GAAG,CAAC;IACrB,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAI,GAAG,mBAAmB,CAAC;IAC7C,wDAAwD;IACxD,MAAM,QAAQ,GAAG,IAAI,GAAG,mBAAmB,CAAC;IAE5C,IAAI,QAAgB,CAAC;IACrB,IAAI,KAAa,CAAC;IAClB,IAAI,KAAa,CAAC;IAElB,yDAAyD;IACzD,gDAAgD;IAChD,0CAA0C;IAC1C,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,UAAU,QAAQ,SAAS,CAAC;IAE9C,QAAQ,MAAM,CAAC,SAAS,EAAE,CAAC;QACzB,KAAK,MAAM;YACT,yBAAyB;YACzB,QAAQ,GAAG,GAAG,QAAQ,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YAClD,KAAK,GAAG,gBAAgB,QAAQ,KAAK,QAAQ,cAAc,SAAS,IAAI,CAAC;YACzE,KAAK,GAAG,WAAW,CAAC;YACpB,MAAM;QACR,KAAK,OAAO;YACV,yBAAyB;YACzB,QAAQ,GAAG,GAAG,QAAQ,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YAClD,KAAK,GAAG,gBAAgB,QAAQ,KAAK,QAAQ,cAAc,SAAS,IAAI,CAAC;YACzE,KAAK,GAAG,WAAW,CAAC;YACpB,MAAM;QACR,KAAK,IAAI;YACP,yBAAyB;YACzB,QAAQ,GAAG,GAAG,QAAQ,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YAClD,KAAK,GAAG,WAAW,CAAC;YACpB,KAAK,GAAG,gBAAgB,QAAQ,KAAK,QAAQ,cAAc,SAAS,IAAI,CAAC;YACzE,MAAM;QACR,KAAK,MAAM;YACT,yBAAyB;YACzB,QAAQ,GAAG,GAAG,QAAQ,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YAClD,KAAK,GAAG,WAAW,CAAC;YACpB,KAAK,GAAG,gBAAgB,QAAQ,KAAK,QAAQ,cAAc,SAAS,IAAI,CAAC;YACzE,MAAM;QACR,KAAK,QAAQ;YACX,QAAQ,GAAG,GAAG,QAAQ,IAAI,SAAS,GAAG,GAAG,IAAI,SAAS,EAAE,CAAC;YACzD,KAAK,GAAG,WAAW,CAAC;YACpB,KAAK,GAAG,WAAW,CAAC;YACpB,MAAM;QACR,KAAK,SAAS;YACZ,QAAQ,GAAG,GAAG,QAAQ,GAAG,SAAS,GAAG,GAAG,IAAI,SAAS,GAAG,GAAG,IAAI,SAAS,EAAE,CAAC;YAC3E,KAAK,GAAG,WAAW,CAAC;YACpB,KAAK,GAAG,WAAW,CAAC;YACpB,MAAM;QACR;YACE,QAAQ,GAAG,GAAG,QAAQ,EAAE,CAAC;YACzB,KAAK,GAAG,WAAW,CAAC;YACpB,KAAK,GAAG,WAAW,CAAC;IACxB,CAAC;IAED,2CAA2C;IAC3C,MAAM,WAAW,GAAG,cAAc,QAAQ,QAAQ,KAAK,QAAQ,KAAK,OAAO,WAAW,MAAM,KAAK,IAAI,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEzH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAA,8BAAa,EAAC,SAAS,CAAC,CAAC;QAEzC,OAAO;aACJ,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC;aACzB,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC;aAC3B,aAAa,CAAC;YACb,MAAM,QAAQ,EAAE;YAChB,kBAAkB;YAClB,cAAc;YACd,SAAS;YACT,gBAAgB;YAChB,sBAAsB;SACvB,CAAC;aACD,MAAM,CAAC,KAAK,CAAC;aACb,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YACjC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7D,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;YACjE,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAAC,SAAiB;IACjD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,SAAS,GAAG,IAAA,+BAAc,GAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,SAAS,EAAE;YAC5B,IAAI,EAAE,OAAO;YACb,iBAAiB,EAAE,KAAK;YACxB,eAAe,EAAE,qBAAqB;YACtC,KAAK,EAAE,MAAM;YACb,SAAS;SACV,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;;YACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAChC,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,OAAO,0CAAG,CAAC,CAAC,CAAC;gBACjC,OAAO,CAAC;oBACN,KAAK,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,KAAI,IAAI;oBAC5B,MAAM,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,KAAI,IAAI;iBAC/B,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACzC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACpB,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAa,cAAc;IAA3B;QACU,mBAAc,GAAG,KAAK,CAAC;QACvB,gBAAW,GAAG,KAAK,CAAC;IA0H9B,CAAC;IAxHC;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAE7B,IAAI,CAAC,cAAc,GAAG,MAAM,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,OAAO,CAAC,GAAG,CAAC,wCAAwC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,+BAA+B,GAAG,CAAC,CAAC;IACvJ,CAAC;IAED;;OAEG;IACH,wBAAwB;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,SAAiB,EACjB,UAAkB,EAClB,MAAsB,EACtB,QAAgB,EAChB,GAAG,GAAG,EAAE,EACR,WAAW,GAAG,SAAS,EACvB,QAAQ,GAAG,MAAM,EACjB,UAAmB;QAEnB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,OAAO,CAAC,GAAG,CAAC,yCAAyC,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,8BAA8B,QAAQ,WAAW,GAAG,EAAE,CAAC,CAAC;QAEpE,uBAAuB;QACvB,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAErD,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;QAEhE,gDAAgD;QAChD,MAAM,cAAc,GAAG,MAAM,gBAAgB,EAAE,CAAC;QAEhD,IAAI,CAAC;YACH,IAAI,cAAc,EAAE,CAAC;gBACnB,wDAAwD;gBACxD,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;gBAClF,MAAM,qBAAqB,CACzB,SAAS,EACT,UAAU,EACV,MAAM,EACN,QAAQ,EACR,GAAG,CACJ,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,gCAAgC;gBAChC,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;gBACxF,MAAM,sBAAsB,CAC1B,SAAS,EACT,UAAU,EACV,MAAM,EACN,QAAQ,EACR,GAAG,EACH,KAAK,EACL,MAAM,CACP,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,mCAAmC,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC;QAEhB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;YAEpE,sDAAsD;YACtD,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;gBACjF,IAAI,CAAC;oBACH,MAAM,sBAAsB,CAC1B,SAAS,EACT,UAAU,EACV,MAAM,EACN,QAAQ,EACR,GAAG,EACH,KAAK,EACL,MAAM,CACP,CAAC;oBACF,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC3C,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACvB,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,aAAa,CAAC,CAAC;oBACjF,MAAM,aAAa,CAAC;gBACtB,CAAC;YACH,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAC1B,SAAiB,EACjB,SAAiB,EACjB,MAAsB,EACtB,QAAgB,EAChB,GAAG,GAAG,EAAE;QAER,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;QAC/D,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC/E,OAAO,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;CACF;AA5HD,wCA4HC;AAED,qBAAqB;AACR,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoComposer.d.ts","sourceRoot":"","sources":["../../../../nodes/SbRender/services/VideoComposer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,EAA8C,MAAM,eAAe,CAAC;AAoBrJ;;;GAGG;AACH,qBAAa,aAAc,YAAW,cAAc;IAClD;;OAEG;IACG,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,CAAC;IAiGlB;;OAEG;IACG,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,aAAa,EAAE,MAAM,GAAG,IAAI,EAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"VideoComposer.d.ts","sourceRoot":"","sources":["../../../../nodes/SbRender/services/VideoComposer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,EAA8C,MAAM,eAAe,CAAC;AAoBrJ;;;GAGG;AACH,qBAAa,aAAc,YAAW,cAAc;IAClD;;OAEG;IACG,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,CAAC;IAiGlB;;OAEG;IACG,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,aAAa,EAAE,MAAM,GAAG,IAAI,EAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,CAAC;IAoTlB;;OAEG;YACW,mBAAmB;IAuBjC;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAc1D;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAyHlE;;OAEG;IACH,OAAO,CAAC,MAAM;IAcd;;OAEG;IACG,WAAW,CACf,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,EAAE,MAAM,EAClB,UAAU,SAAY,EACtB,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,SAAQ,GACnB,OAAO,CAAC,MAAM,CAAC;IAuLlB;;;OAGG;IACG,qBAAqB,CACzB,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,SAAY,EACtB,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,SAAQ,EACpB,eAAe,CAAC,EAAE,cAAc,EAAE,GACjC,OAAO,CAAC,MAAM,CAAC;IAkSlB;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;CAiBlD"}
|