Skip to content

Commit 8347231

Browse files
committed
Add Decart API pipeline scaffold
Implement Decart API pipeline, test works Rename "decart_api" to "decart-api" Rename pipeline Revert frame_processor change
1 parent b011254 commit 8347231

File tree

12 files changed

+815
-1
lines changed

12 files changed

+815
-1
lines changed

frontend/src/data/pipelines.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,16 @@ export const PIPELINES: Record<string, PipelineInfo> = {
9898
supportedModes: ["video"],
9999
defaultMode: "video",
100100
},
101+
"decart-api": {
102+
name: "Decart API",
103+
about:
104+
"Real-time video restyling using Decart's Mirage LSD API. Processes video frames through Decart's cloud-based realtime video transformation service.",
105+
requiresModels: false,
106+
estimatedVram: 0, // Cloud-based, no local VRAM required
107+
// Video-only pipeline
108+
supportedModes: ["video"],
109+
defaultMode: "video",
110+
},
101111
};
102112

103113
export function pipelineSupportsLoRA(pipelineId: string): boolean {

frontend/src/types/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ export type PipelineId =
33
| "passthrough"
44
| "longlive"
55
| "krea-realtime-video"
6-
| "reward-forcing";
6+
| "reward-forcing"
7+
| "decart-api";
78

89
// Input mode for pipeline operation
910
export type InputMode = "text" | "video";

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ dependencies = [
5353
"kernels>=0.10.4",
5454
"triton==3.4.0; sys_platform == 'linux'",
5555
"triton-windows==3.4.0.post21; sys_platform == 'win32'",
56+
"pillow>=10.0.0",
5657
]
5758

5859
[project.scripts]

src/scope/core/pipelines/__init__.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ def __getattr__(name):
2424
from .passthrough.pipeline import PassthroughPipeline
2525

2626
return PassthroughPipeline
27+
elif name == "DecartApiPipeline":
28+
from .decart_api.pipeline import DecartApiPipeline
29+
30+
return DecartApiPipeline
2731
# Config classes
2832
elif name == "BasePipelineConfig":
2933
from .schema import BasePipelineConfig
@@ -45,6 +49,10 @@ def __getattr__(name):
4549
from .schema import PassthroughConfig
4650

4751
return PassthroughConfig
52+
elif name == "DecartApiConfig":
53+
from .schema import DecartApiConfig
54+
55+
return DecartApiConfig
4856
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
4957

5058

@@ -55,10 +63,12 @@ def __getattr__(name):
5563
"RewardForcingPipeline",
5664
"StreamDiffusionV2Pipeline",
5765
"PassthroughPipeline",
66+
"DecartApiPipeline",
5867
# Config classes
5968
"BasePipelineConfig",
6069
"LongLiveConfig",
6170
"StreamDiffusionV2Config",
6271
"KreaRealtimeVideoConfig",
6372
"PassthroughConfig",
73+
"DecartApiConfig",
6474
]
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
from .pipeline import DecartApiPipeline
2+
3+
__all__ = ["DecartApiPipeline"]

0 commit comments

Comments
 (0)