Browse Source
WorkflowCanvas.tsx: - Import VideoStitchNode - Add videoStitch to nodeTypes - Add getNodeHandles case: inputs=["video", "audio"], outputs=["video"] - Update isValidConnection to allow video→videoStitch connections - Add minimap color: orange-500 (#f97316) ConnectionDropMenu.tsx: - Add videoStitch to VIDEO_TARGET_OPTIONS (first position) - Add videoStitch to VIDEO_SOURCE_OPTIONS (produces video output) - Add videoStitch to AUDIO_TARGET_OPTIONS (accepts audio input) workflowStore.ts: - Import VideoStitchNodeData type - Add videoStitch to getSourceOutput (returns video type) - Add executeWorkflow case for videoStitch with full stitching logic: * Check encoder support * Get connected inputs (videos, audio) * Convert video data URLs to Blobs * Prepare audio if connected (using prepareAudioAsync) * Call stitchVideosAsync with progress callback * Store output (blob URL for >20MB, data URL otherwise) * Handle errors Note: nodeDefaults.ts already had videoStitch dimensions and createDefaultNodeData from Plan 02, so no changes needed there. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>handoff-20260429-1057
3 changed files with 124 additions and 5 deletions
Loading…
Reference in new issue