ComfyUI Extension: ComfyUI Roop Custom Nodes
Custom nodes for ComfyUI to enable face swapping using the Roop library.
Custom Nodes (0)
README
ComfyUI Roop Custom Nodes
Custom nodes for ComfyUI to enable face swapping using the Roop library.
Features
- Face swap between two images
- Optional face enhancement
- Batch image folder processing
- Face swap for videos
- Webhook sender for images (tensor) or file paths
- Auto-increment filenames to prevent overwriting
Node Descriptions
RoopFaceSwap
- Basic face swap using source and target image tensors
- Returns a single swapped image tensor
RoopFaceSwapWithEnhancer
- Like RoopFaceSwap but also runs a face enhancer after swapping
- Useful for improving visual quality
RoopBatchFaceSwap
- Takes a source image and a folder of input images
- Applies face swap to each and saves results to an output folder
- Supports enhancement and multi-face mode
RoopFaceSwapVideo
- Swaps a face from an image into a video file
- Keeps original FPS and frames
- Saves a new video file
RoopSendWebhookImage
- Sends an image tensor to a webhook URL
- Accepts optional secret for HMAC verification
- Ideal for live image results
RoopSendWebhookFile
- Sends a file path (e.g. video or saved image) to a webhook
- Supports HMAC-secured sending
- Useful for post-processing delivery
Requirements
- Python 3.8+
- torch
- torchvision
- Pillow (PIL)
- requests
- roop (clone from GitHub)
Installation
-
Clone this repo into your ComfyUI custom nodes folder:
git clone https://github.com/glitchinthemetrix16/ComfyUI-Roop
-
Install required Python packages:
pip install torch torchvision pillow requests
-
Clone the roop repo for Google Colab Environment:
git clone https://github.com/FurkanGozukara/roop /content/roop
-
Ensure that run.py exists in /content/roop
Installation For Google Colab With T4 GPU (Tested and working)
%cd /content/
!git clone https://github.com/FurkanGozukara/roop
%cd roop
#Tested and updated 23 August 2023 commit
#!git checkout da1ef285f1d43bd0cc8b9cdb9a0f80f7ae793a97
!pip install onnxruntime-gpu && pip install -r requirements.txt
!pip install onnxruntime-gpu --upgrade
!apt-get update --yes
!apt install nvidia-cuda-toolkit --yes
!pip install opennsfw2 keras --upgrade
!pip install numpy==1.26.4
Usage Notes
- All temporary files are saved inside roop_dir/temp_io
- File overwrites are avoided via auto-renaming
- Video swapping works best with shorter clips due to performance
- Webhook nodes allow sending output to remote servers or APIs