Added support for P-video replace

This commit is contained in:
Sirshendu Ganguly
2026-06-04 18:11:58 +05:30
parent 429eb9b8be
commit 3177423d48
5 changed files with 47 additions and 6 deletions
+6 -6
View File
@@ -106,7 +106,7 @@ class txt2vid:
}),
"useDuration": ("BOOLEAN", {
"tooltip": "Enable to include duration parameter in API request. Disable if your model doesn't support duration.",
"default": True,
"default": False,
}),
"duration": ("INT", {
"tooltip": "The duration of the video in seconds.",
@@ -116,7 +116,7 @@ class txt2vid:
}),
"useFps": ("BOOLEAN", {
"tooltip": "Enable to include fps parameter in API request. Disable if your model doesn't support fps.",
"default": True,
"default": False,
}),
"fps": ("INT", {
"tooltip": "Frames per second for the generated video. Only used when 'Use FPS' is enabled.",
@@ -130,7 +130,7 @@ class txt2vid:
}),
"useSeed": ("BOOLEAN", {
"tooltip": "Enable to include seed parameter in API request. Disable if your model doesn't support seed.",
"default": True,
"default": False,
}),
"seed": ("INT", {
"tooltip": "A value used to randomize the video generation. If you want to make videos reproducible (generate the same video multiple times), you can use the same seed value.",
@@ -263,13 +263,13 @@ class txt2vid:
videoAdvancedFeatureInputs = kwargs.get("videoAdvancedFeatureInputs", None)
runwareAccelerator = kwargs.get("Accelerator", None)
settings = kwargs.get("settings", None)
useDuration = kwargs.get("useDuration", True)
useDuration = kwargs.get("useDuration", False)
duration = kwargs.get("duration", 5)
fps = kwargs.get("fps", 24)
useFps = kwargs.get("useFps", True)
useFps = kwargs.get("useFps", False)
outputFormat = kwargs.get("outputFormat", "mp4")
seed = kwargs.get("seed", 1)
useSeed = kwargs.get("useSeed", True)
useSeed = kwargs.get("useSeed", False)
steps = kwargs.get("steps", 20)
useSteps = kwargs.get("useSteps", False)
useBatchSize = kwargs.get("useBatchSize", False)
+3
View File
@@ -142,6 +142,7 @@ class videoModelSearch:
"prunaai:p-video@0 (P-Video)",
"prunaai:p-video@avatar (P-Video Avatar)",
"prunaai:p-video@animate (P-Video Animate)",
"prunaai:p-video@replace (P-Video Replace)",
],
"SkyReels": [
"skywork:skyreels@v4 (SkyReels V4)",
@@ -284,6 +285,7 @@ class videoModelSearch:
"prunaai:p-video@0": {"width": 1280, "height": 720},
"prunaai:p-video@avatar": {"width": 1280, "height": 720},
"prunaai:p-video@animate": {"width": 1280, "height": 720},
"prunaai:p-video@replace": {"width": 1280, "height": 720},
# HeyGen Models (Model ID: heygen-avatar-iv, heygen-avatar-v)
"heygen:avatar@4": {"width": 1280, "height": 720},
@@ -430,6 +432,7 @@ class videoModelSearch:
"prunaai:p-video@0": "720p",
"prunaai:p-video@avatar": "720p",
"prunaai:p-video@animate": "720p",
"prunaai:p-video@replace": "720p",
# HeyGen Models
"heygen:avatar@4": "720p",
+28
View File
@@ -235,6 +235,26 @@ class RunwareVideoSettings:
"label_on": "Enabled",
"label_off": "Disabled",
}),
"useSourceAudioSync": ("BOOLEAN", {
"tooltip": "Enable to include sourceAudioSync in video inference settings.",
"default": False,
}),
"sourceAudioSync": ("BOOLEAN", {
"tooltip": "When true, the source audio is used during generation (affects lip and motion sync).",
"default": True,
"label_on": "Enabled",
"label_off": "Disabled",
}),
"useTurbo": ("BOOLEAN", {
"tooltip": "Enable to include turbo in video inference settings.",
"default": False,
}),
"turbo": ("BOOLEAN", {
"tooltip": "Turbo mode: faster generation for slightly lower quality.",
"default": False,
"label_on": "Enabled",
"label_off": "Disabled",
}),
}
}
@@ -255,6 +275,10 @@ class RunwareVideoSettings:
audio = kwargs.get("audio", False)
use_preserve_audio = kwargs.get("usePreserveAudio", False)
preserve_audio = kwargs.get("preserveAudio", True)
use_source_audio_sync = kwargs.get("useSourceAudioSync", False)
source_audio_sync = kwargs.get("sourceAudioSync", True)
use_turbo = kwargs.get("useTurbo", False)
turbo = kwargs.get("turbo", False)
use_voice_prompt = kwargs.get("useVoicePrompt", False)
voice_prompt = (kwargs.get("voicePrompt") or "").strip()
use_safety_filter = kwargs.get("useSafetyFilter", False)
@@ -307,6 +331,10 @@ class RunwareVideoSettings:
settings["audio"] = bool(audio)
if use_preserve_audio:
settings["preserveAudio"] = bool(preserve_audio)
if use_source_audio_sync:
settings["sourceAudioSync"] = bool(source_audio_sync)
if use_turbo:
settings["turbo"] = bool(turbo)
if use_voice_prompt and voice_prompt:
settings["voicePrompt"] = voice_prompt
if use_safety_filter: