Ce flux de travail ComfyUI réalise un face swap vidéo en appliquant une unique image de visage de référence à chaque frame d’une vidéo « driving », puis en recomposant les frames en un clip final. Le pipeline démarre avec VHS_LoadVideo pour décoder la vidéo source en frames et LoadImage pour importer votre visage de référence. Un nœud personnalisé de face-swap (dc72113f-8276-4a5a-af12-85d6bec89ed5) effectue le transfert de visage via le LTX 2.3 LoRA entraîné par @Alissonerdx. Les nœuds PrimitiveFloat et PrimitiveInt exposent des contrôles clés (comme la force de l’effet, la taille de la région ou le pas de frame), tandis que ImageResizeKJv2 aligne l’échelle du visage de référence sur votre vidéo cible.
Pour stabiliser le résultat et conserver l’arrière-plan intact, le flux de travail compose le visage généré sur chaque frame d’origine via ReservedRegionFrameComposer. Ce nœud permet de définir une région « réservée » cohérente pour le visage et de la fondre avec des bords adoucis, ce qui réduit le jitter temporel et préserve les cheveux, l’éclairage et le mouvement de la scène. ComfyMathExpression sert à dériver des valeurs dynamiques (par ex. la taille de la région à partir de la Résolution vidéo), afin de garder les paramètres cohérents quel que soit votre fichier. Pour contrôler la qualité, ImageConcanate peut assembler des aperçus côte à côte de frames originales vs. modifiées. Enfin, les frames traitées sont encodées en vidéo via VHS_VideoCombine ou CreateVideo, et le résultat est exporté avec SaveVideo.
API
Utiliser ce workflow depuis le code
Chaque workflow Comfy est un graphe JSON. Le contenu ci-dessous est ce workflow, exactement comme ComfyUI l’exécute — récupérez-le depuis l’URL, gardez-le dans le contrôle de version, ou chargez-le dans ComfyUI et exécutez-le nœud par nœud.
Exécutez-le depuis TypeScript ou Python avec le Comfy SDK. Le même code cible Comfy Cloud ou un ComfyUI auto-hébergé — seule l’URL de base change.
// Install (beta)
npm i @comfyorg/sdk
// Run this workflow (TypeScript)
import { Comfy } from "@comfyorg/sdk";
const client = new Comfy({ apiKey: "comfyui-..." });
const wf = await client.workflows.fromFile("workflow_api.json");
const job = await client.run(wf);
await job.getOutputs("<output-node-id>")[0].toFile("output.png");Le SDK prend un workflow au format API : ouvrez ce workflow dans ComfyUI et utilisez Fichier → Exporter le workflow (API).
L’accès à l’API Comfy Cloud nécessite un forfait avec clé API.
FAQ














