Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions clientlibs/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -1428,6 +1428,10 @@ function videoSettingsToggleHandler(settingsNode) {
const audioWidget = settingsNode.widgets.find(w => w && w.name === "audio");
const usePreserveAudioWidget = settingsNode.widgets.find(w => w && w.name === "usePreserveAudio");
const preserveAudioWidget = settingsNode.widgets.find(w => w && w.name === "preserveAudio");
const useSourceAudioSyncWidget = settingsNode.widgets.find(w => w && w.name === "useSourceAudioSync");
const sourceAudioSyncWidget = settingsNode.widgets.find(w => w && w.name === "sourceAudioSync");
const useTurboWidget = settingsNode.widgets.find(w => w && w.name === "useTurbo");
const turboWidget = settingsNode.widgets.find(w => w && w.name === "turbo");
const useVoicePromptWidget = settingsNode.widgets.find(w => w && w.name === "useVoicePrompt");
const voicePromptWidget = settingsNode.widgets.find(w => w && w.name === "voicePrompt");
const useSafetyFilterWidget = settingsNode.widgets.find(w => w && w.name === "useSafetyFilter");
Expand Down Expand Up @@ -1488,6 +1492,8 @@ function videoSettingsToggleHandler(settingsNode) {
if (useDraftWidget && draftWidget) toggleWidgetState(useDraftWidget, draftWidget, "draft");
if (useAudioWidget && audioWidget) toggleWidgetState(useAudioWidget, audioWidget, "audio");
if (usePreserveAudioWidget && preserveAudioWidget) toggleWidgetState(usePreserveAudioWidget, preserveAudioWidget, "preserveAudio");
if (useSourceAudioSyncWidget && sourceAudioSyncWidget) toggleWidgetState(useSourceAudioSyncWidget, sourceAudioSyncWidget, "sourceAudioSync");
if (useTurboWidget && turboWidget) toggleWidgetState(useTurboWidget, turboWidget, "turbo");
if (useVoicePromptWidget && voicePromptWidget) toggleWidgetState(useVoicePromptWidget, voicePromptWidget, "voicePrompt");
if (useSafetyFilterWidget && safetyFilterWidget) toggleWidgetState(useSafetyFilterWidget, safetyFilterWidget, "safetyFilter");
if (usePromptUpsamplingWidget && promptUpsamplingWidget) toggleWidgetState(usePromptUpsamplingWidget, promptUpsamplingWidget, "promptUpsampling");
Expand Down Expand Up @@ -2944,6 +2950,7 @@ function videoModelSearchFilterHandler(videoModelSearchNode) {
"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)",
Expand Down Expand Up @@ -3046,6 +3053,7 @@ function videoModelSearchFilterHandler(videoModelSearchNode) {
"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:avatar@4": {"width": 1280, "height": 720},
"heygen:video-agent@0": {"width": 1280, "height": 720},
"heygen:avatar@5": {"width": 1280, "height": 720},
Expand Down Expand Up @@ -3148,6 +3156,7 @@ function videoModelSearchFilterHandler(videoModelSearchNode) {
"prunaai:p-video@0": "720p",
"prunaai:p-video@avatar": "720p",
"prunaai:p-video@animate": "720p",
"prunaai:p-video@replace": "720p",
"heygen:avatar@4": "720p",
"heygen:video-agent@0": "720p",
"heygen:avatar@5": "720p",
Expand Down
12 changes: 6 additions & 6 deletions modules/videoInference.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ def INPUT_TYPES(cls):
}),
"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.",
Expand All @@ -116,7 +116,7 @@ def INPUT_TYPES(cls):
}),
"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.",
Expand All @@ -130,7 +130,7 @@ def INPUT_TYPES(cls):
}),
"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.",
Expand Down Expand Up @@ -263,13 +263,13 @@ def generateVideo(self, **kwargs):
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")
Comment thread
Sirsho1997 marked this conversation as resolved.
seed = kwargs.get("seed", 1)
useSeed = kwargs.get("useSeed", True)
useSeed = kwargs.get("useSeed", False)
Comment thread
Sirsho1997 marked this conversation as resolved.
steps = kwargs.get("steps", 20)
useSteps = kwargs.get("useSteps", False)
useBatchSize = kwargs.get("useBatchSize", False)
Expand Down
3 changes: 3 additions & 0 deletions modules/videoModelSearch.py
Original file line number Diff line number Diff line change
Expand Up @@ -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)",
Expand Down Expand Up @@ -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},
Expand Down Expand Up @@ -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",
Expand Down
28 changes: 28 additions & 0 deletions modules/videoSettings.py
Original file line number Diff line number Diff line change
Expand Up @@ -235,6 +235,26 @@ def INPUT_TYPES(cls):
"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",
}),
}
}

Expand All @@ -255,6 +275,10 @@ def createSettings(self, **kwargs) -> tuple[Dict[str, Any]]:
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)
Expand Down Expand Up @@ -307,6 +331,10 @@ def createSettings(self, **kwargs) -> tuple[Dict[str, Any]]:
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:
Expand Down
Loading