← Postproduction
Fix it in Prompt · Postproduction

Bewegung übertragen mit Depth Control

Ein fertiger Workflow, der die Bewegung aus einem Referenzvideo auf ein eigenes Standbild überträgt. Die Tiefenkarte des Clips steuert Raum und Bewegung, das Standbild liefert Look, Figur und Hintergrund. Läuft komplett lokal auf WAN 2.2 Fun Control.

WAN 2.2 Fun Control Depth Anything V2 8 Steps statt 40

Was dieser Workflow macht

Du gibst zwei Dinge vor: ein Standbild und ein Referenzvideo. Depth Anything V2 rechnet jeden Frame des Referenzvideos in eine Graustufen-Tiefenkarte um – nah ist hell, fern ist dunkel. Diese Karte geht als Control-Signal in WAN 2.2 Fun Control, das daraus ein neues Video erzeugt: Bewegung und Raumaufteilung stammen aus der Vorlage, das gesamte Aussehen aus deinem Standbild. Ergebnis ist ein MP4 in ComfyUI/output/, Standard 1024×576 bei 65 Frames (rund 2,7 Sekunden bei 24 fps).

Preview: Depth Control – Tiefenkarten-Frames aus dem Referenzvideo
So sieht eine brauchbare Tiefenkarte aus: die Figur durchgehend hell und klar vom Hintergrund abgesetzt, Boden und Gras als weicher Verlauf nach hinten. Genau dieses Bild liefert der Node Preview: Depth Control vor dem Render.

Depth statt Pose. Ein Skelett überträgt nur Gliedmaßen-Positionen. Eine Tiefenkarte überträgt die komplette räumliche Anordnung – Figur, Kameraabstand, Volumen, Verdeckungen. Dafür ist sie unschärfer bei Details: Finger, Haare und dünne Objekte kommen weicher an. Depth ist die richtige Wahl, wenn Kamerafahrt und Bildaufbau mitwandern sollen; Pose, wenn es rein um Körperbewegung geht.

Was du brauchst

WAN 2.2 Fun Control in zwei Teilen (high_noise und low_noise, je 14,3 GB), den Wan-2.1-VAE, den umt5-Text-Encoder und die beiden lightx2v-Speed-LoRAs. Dazu die Custom Nodes ComfyUI-WanVideoWrapper (kijai), ComfyUI-controlnet_aux und VideoHelperSuite. Alle Download-Links und die exakten Speicherorte stehen im Workflow – in den Notiz-Feldern, sobald du ihn in ComfyUI öffnest. Das Depth-Modell lädt beim ersten Lauf automatisch.

Voreingestellt ist depth_anything_v2_vits.pth (Small, 99 MB, Apache-2.0) – bewusst, denn nur diese Variante ist kommerziell nutzbar. Die größeren Modelle vitb, vitl und vitg stehen unter CC-BY-NC-4.0 und sind auf Privates und Forschung beschränkt. Der Qualitätsunterschied fällt hier kaum ins Gewicht, weil Wan die Tiefenkarte als grobes Raumsignal liest und nicht als exakte Geometrie.

CFG bleibt auf 1.0. Die beiden Speed-LoRAs destillieren Wan 2.2 auf 8 Schritte statt der üblichen 40 – etwa 6–10× schneller. Das funktioniert nur bei CFG 1. Höher gedreht verdoppelt sich die Rechenzeit und die Distillation bricht: Artefakte, Flimmern, matschige Kanten. Der Negativ-Prompt ist bei CFG 1 wirkungslos und bleibt deshalb leer.

Auflösung an drei Stellen. Load Video, Force 1024×576 und WanVideoImageToVideoEncode müssen denselben Wert tragen. Weicht einer ab, bricht der Sampler mit „Sizes of tensors must match" ab. Gleiches bei der Framezahl: Wan rechnet in Blöcken von 4 + 1, gültig sind also 33, 49, 65, 81, 97.

So gehst du vor

  1. Workflow herunterladen und per Drag & Drop in ComfyUI ziehen (oder Workflow → Open). Die Links aus den Notiz-Feldern abarbeiten, dann ComfyUI neu starten.
  2. Standbild im Node Load Image hochladen, Referenzclip im Node Load Video (Upload) wählen. Seitenverhältnis des Standbilds passend zu 1024×576, sonst wird gestaucht.
  3. Prompt im Node WanVideoTextEncodeCached schreiben – englisch, ein Satz reicht. Negativ-Prompt leer lassen.
  4. Erst nur Preview: Depth Control über den blauen Run-Button am Node starten. Sitzt die Figur klar vom Hintergrund abgesetzt, den kompletten Workflow queuen. Sieht die Tiefenkarte flach oder verrauscht aus, hilft kein Prompt – dann ein Referenzvideo mit mehr Kontrast und weniger Motion Blur nehmen.

Stellschrauben

Der Workflow ist auf die Kombination eingestellt, die auf allen Karten durchläuft: bf16 / fp8_e4m3fn_scaled / sdpa. Im Graphen liegt eine Notiz mit den empfohlenen Werten je Kartengeneration – 30er, 40er und 50er getrennt aufgeschlüsselt. Wichtig dabei: alle vier Widgets existieren zweimal, einmal im HIGH- und einmal im LOW-Noise-Loader, und müssen identisch stehen.

Ist die Bewegung zu schwach, dämpfen Fun Control und Speed-LoRA sie leicht – dann die strength beider ⚡-Nodes auf 0.8 senken oder auf 10 Steps (Split 5/5) gehen. Bei zu wenig VRAM blocks_to_swap im WanVideoBlockSwap auf 5–10 setzen: kostet Tempo, spart Speicher. Auf einer RTX 5090 dauern 65 Frames rund 1–2 Minuten.

↓ Workflow herunterladen (.json)