Skip to main content
Decart provides real-time AI video transformation with style transfer. Transform video streams into animated styles, cyberpunk aesthetics, or any custom prompt-based visual effect.
Vision Agents requires a Stream account for real-time transport. Most providers offer free tiers to get started.

Installation

uv add vision-agents[decart]

Quick Start

from vision_agents.core import Agent, User
from vision_agents.plugins import decart, openai, deepgram, elevenlabs, getstream

agent = Agent(
    edge=getstream.Edge(),
    agent_user=User(name="Assistant", id="agent"),
    instructions="You are a story teller with magical video effects.",
    llm=openai.LLM(model="gpt-4o-mini"),
    stt=deepgram.STT(),
    tts=elevenlabs.TTS(),
    processors=[
        decart.RestylingProcessor(
            initial_prompt="Studio Ghibli animation style",
            model="mirage_v2"
        )
    ],
)
Set DECART_API_KEY in your environment or pass api_key directly.

Parameters

NameTypeDefaultDescription
initial_promptstr"Cyberpunk city"Style prompt for visual transformation
modelstr"mirage_v2"Decart model
mirrorboolTrueMirror mode for front-facing cameras
widthint1280Output video width
heightint720Output video height
api_keystrNoneAPI key (defaults to DECART_API_KEY env var)

Dynamic Style Changes

Update the video style during a call via function calling:
@llm.register_function(description="Changes the video style")
async def change_style(prompt: str) -> str:
    await processor.update_prompt(prompt)
    return f"Style changed to: {prompt}"

Next Steps