ComfyUI Node

P-Video-Replace

Swap the subject, keep the performance

By Runware·Created 2 years ago·Updated about a month ago· 140
P-Video-Replace
  • referenceImages
  • video
video
positivePrompt
resolution720p
seed0
fps(default)
numberResults1
settings.preserveAudiotrue
safetyfalse
safety.checkContentfalse
safety.modefast
settings.sourceAudioSynctrue
settings.turbofalse
ttlfalse
ttl_value60
outputFormatMP4
outputQuality95

P-Video-Replace is the prank that became a tool: you give it a video and a reference image, and it puts the image's subject into the video - replacing the original actor or object while keeping the performance, the camera moves, and the timing. Required inputs are referenceImages (the new subject) and video (the clip to re-enact). It runs on Runware's cloud and returns a native VIDEO of the substituted scene.

The name says "replace" and the mechanism is exactly that - this isn't a face-swap or a style transfer, it's a full subject replacement that re-renders the motion onto the new look. That's the capability behind the funny demos (a cartoon character dancing in a live-action clip) and it's also genuinely useful for product videos and character shots where you want to iterate on the subject without reshooting the performance.

What you actually set

  • referenceImages - required, IMAGE socket. The new subject that replaces whoever's in the source video.
  • video - required, a STRING taking a UUID or URL of the source clip. Cloud-side reference, not a local path.
  • positivePrompt - optional, for steering the replacement beyond what the reference implies.
  • resolution - 720p or 1080p (default 720p); matches the input's aspect ratio.
  • settings.sourceAudioSync - default True: drive lip and motion sync from the source video's audio. This is the setting that makes a talking-head replacement actually talk in sync. Independent of preserveAudio.
  • settings.preserveAudio - default True: keep the source audio in the final output.
  • settings.turbo - faster generation, may drop subtle details.
  • fps - model default, 24, or 48.
  • seed, numberResults - the usuals.

Output: one video socket, type VIDEO.

Install

One-time pack install: ComfyUI Manager → search Runware → install → restart, or

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

API key into ComfyUI Settings → Runware API key or RUNWARE_API_KEY. Light dependencies, no model downloads.

Where people get burned

  • The source video must be reachable by the cloud. The video string wants a hosted URL or an uploaded UUID, not C:\videos\clip.mp4. This is the #1 failure with the media-input nodes in this pack.
  • Reference quality sets the result. A clear, well-lit reference of the subject gives a clean replacement; a muddy one gives a muddy one.
  • Turbo breaks sync. If you flip settings.turbo on for speed, check that sourceAudioSync still holds - that's the first detail to degrade.
  • safety.mode defaults to none. Same opt-in guardrail story as the rest of the video nodes.

The verdict: P-Video-Replace is the pack's most show-off capable node and it earns the attention. Use it when you want the performance but a different performer, and keep the source clip clean and reachable.

CategoryRunware/Video/prunaai

Inputs (17)

NameTypeDefaultDescription
referenceImagesIMAGE
videoSTRINGVideo input (UUID or URL).
positivePromptoptSTRINGText prompt describing elements to include in the generated output.
resolutionoptCOMBO720pResolution preset for the output. When used with input media, automatically matches the aspect ratio from the input.
seedoptINT00–2147483647Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.
fpsoptCOMBO(default)Frames per second for video generation. Higher values create smoother motion but require more processing time.
numberResultsoptINT11–4Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
settings.preserveAudiooptBOOLEANtruePreserve the source video audio track in the output.
safetyoptBOOLEANfalseEnable to set safety. Off uses the model's default.
safety.checkContentoptBOOLEANfalseEnable or disable content safety checking.
safety.modeoptCOMBOfastSafety checking mode for video generation.
settings.sourceAudioSyncoptBOOLEANtrueDrive lip and motion sync from the source video audio. Independent of `preserveAudio`, which controls audio in the final output.
settings.turbooptBOOLEANfalseEnable turbo mode for faster generation. May reduce subtle details in complex tasks.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOMP4File format for the generated video.
outputQualityoptINT9520–99Compression quality of the output. Higher values preserve quality but increase file size.

Outputs (1)

NameTypeDescription
videoVIDEO