Merge pull request #142 from Runware/feature-p-video_avatar
Added support for P-Video Avatar
This commit is contained in:
@@ -1392,6 +1392,10 @@ function videoSettingsToggleHandler(settingsNode) {
|
||||
const draftWidget = settingsNode.widgets.find(w => w && w.name === "draft");
|
||||
const useAudioWidget = settingsNode.widgets.find(w => w && w.name === "useAudio");
|
||||
const audioWidget = settingsNode.widgets.find(w => w && w.name === "audio");
|
||||
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");
|
||||
const safetyFilterWidget = settingsNode.widgets.find(w => w && w.name === "safetyFilter");
|
||||
const usePromptUpsamplingWidget = settingsNode.widgets.find(w => w && w.name === "usePromptUpsampling");
|
||||
const promptUpsamplingWidget = settingsNode.widgets.find(w => w && w.name === "promptUpsampling");
|
||||
const useBackgroundColorWidget = settingsNode.widgets.find(w => w && w.name === "useBackgroundColor");
|
||||
@@ -1443,6 +1447,8 @@ function videoSettingsToggleHandler(settingsNode) {
|
||||
|
||||
if (useDraftWidget && draftWidget) toggleWidgetState(useDraftWidget, draftWidget, "draft");
|
||||
if (useAudioWidget && audioWidget) toggleWidgetState(useAudioWidget, audioWidget, "audio");
|
||||
if (useVoicePromptWidget && voicePromptWidget) toggleWidgetState(useVoicePromptWidget, voicePromptWidget, "voicePrompt");
|
||||
if (useSafetyFilterWidget && safetyFilterWidget) toggleWidgetState(useSafetyFilterWidget, safetyFilterWidget, "safetyFilter");
|
||||
if (usePromptUpsamplingWidget && promptUpsamplingWidget) toggleWidgetState(usePromptUpsamplingWidget, promptUpsamplingWidget, "promptUpsampling");
|
||||
if (useBackgroundColorWidget && backgroundColorWidget) toggleWidgetState(useBackgroundColorWidget, backgroundColorWidget, "backgroundColor");
|
||||
if (useRemoveBackgroundWidget && removeBackgroundWidget) toggleWidgetState(useRemoveBackgroundWidget, removeBackgroundWidget, "removeBackground");
|
||||
@@ -2854,6 +2860,7 @@ function videoModelSearchFilterHandler(videoModelSearchNode) {
|
||||
],
|
||||
"Pruna": [
|
||||
"prunaai:p-video@0 (P-Video)",
|
||||
"prunaai:p-video@avatar (P-Video Avatar)",
|
||||
],
|
||||
"SkyReels": [
|
||||
"skywork:skyreels@v4 (SkyReels V4)",
|
||||
@@ -2952,6 +2959,7 @@ function videoModelSearchFilterHandler(videoModelSearchNode) {
|
||||
"xai:grok-imagine@video": {"width": 480, "height": 480},
|
||||
"veed:fabric@1.0": {"width": 1280, "height": 720},
|
||||
"prunaai:p-video@0": {"width": 1280, "height": 720},
|
||||
"prunaai:p-video@avatar": {"width": 1280, "height": 720},
|
||||
"heygen:avatar@4": {"width": 1280, "height": 720},
|
||||
"heygen:video-agent@0": {"width": 1280, "height": 720},
|
||||
"skywork:skyreels@v4": {"width": 1280, "height": 720},
|
||||
@@ -3049,6 +3057,7 @@ function videoModelSearchFilterHandler(videoModelSearchNode) {
|
||||
"xai:grok-imagine@video": "480p",
|
||||
"veed:fabric@1.0": "720p",
|
||||
"prunaai:p-video@0": "720p",
|
||||
"prunaai:p-video@avatar": "720p",
|
||||
"heygen:avatar@4": "720p",
|
||||
"heygen:video-agent@0": "720p",
|
||||
"skywork:skyreels@v4": "720p",
|
||||
|
||||
@@ -224,7 +224,7 @@ class txt2vid:
|
||||
"tooltip": "Connect a Runware Accelerator Options Node to configure caching and acceleration settings.",
|
||||
}),
|
||||
"settings": ("RUNWAREVIDEOSETTINGS", {
|
||||
"tooltip": "Connect a Runware Video Inference Settings node to configure draft, audio, promptUpsampling, voiceDescription, style, thinking, multiClip, shotType, promptExtend, syncMode, mode, emotion, temperature, occlusionDetection, tts, activeSpeakerDetection, segments, etc.",
|
||||
"tooltip": "Connect a Runware Video Inference Settings node to configure draft, audio, voicePrompt, safetyFilter, promptUpsampling, voiceDescription, style, thinking, multiClip, shotType, promptExtend, syncMode, mode, emotion, temperature, occlusionDetection, tts, activeSpeakerDetection, segments, etc.",
|
||||
}),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -137,6 +137,7 @@ class videoModelSearch:
|
||||
],
|
||||
"Pruna": [
|
||||
"prunaai:p-video@0 (P-Video)",
|
||||
"prunaai:p-video@avatar (P-Video Avatar)",
|
||||
],
|
||||
"SkyReels": [
|
||||
"skywork:skyreels@v4 (SkyReels V4)",
|
||||
@@ -275,6 +276,7 @@ class videoModelSearch:
|
||||
|
||||
# Pruna Models (720p)
|
||||
"prunaai:p-video@0": {"width": 1280, "height": 720},
|
||||
"prunaai:p-video@avatar": {"width": 1280, "height": 720},
|
||||
|
||||
# HeyGen Models (Model ID: heygen-avatar-iv)
|
||||
"heygen:avatar@4": {"width": 1280, "height": 720},
|
||||
@@ -416,6 +418,7 @@ class videoModelSearch:
|
||||
|
||||
# Pruna Models
|
||||
"prunaai:p-video@0": "720p",
|
||||
"prunaai:p-video@avatar": "720p",
|
||||
|
||||
# HeyGen Models
|
||||
"heygen:avatar@4": "720p",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""
|
||||
Runware Video Inference Settings Node
|
||||
Provides settings (draft, audio, promptUpsampling, voiceDescription, style, thinking, multiClip, shotType, promptExtend, syncMode, mode, emotion, temperature, occlusionDetection, tts, activeSpeakerDetection, segments, etc.) for Runware Video Inference.
|
||||
Provides settings (draft, audio, voicePrompt, safetyFilter, promptUpsampling, voiceDescription, style, thinking, multiClip, shotType, promptExtend, syncMode, mode, emotion, temperature, occlusionDetection, tts, activeSpeakerDetection, segments, etc.) for Runware Video Inference.
|
||||
"""
|
||||
|
||||
from typing import Dict, Any
|
||||
@@ -188,6 +188,25 @@ class RunwareVideoSettings:
|
||||
"segments": ("RUNWAREVIDEOINFERENCESETTINGSSEGMENTS", {
|
||||
"tooltip": "Connect Runware Video Inference Settings Segments for settings.segments[] (startTime, endTime, audio, audioStartTime, audioEndTime).",
|
||||
}),
|
||||
"useVoicePrompt": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include voicePrompt (delivery style instructions) in video inference settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"voicePrompt": ("STRING", {
|
||||
"default": "Say the following.",
|
||||
"multiline": True,
|
||||
"tooltip": "Speaking style, tone, pacing or emotion instructions for delivery. Only used when 'Use Voice Prompt' is enabled.",
|
||||
}),
|
||||
"useSafetyFilter": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include safetyFilter in video inference settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"safetyFilter": ("BOOLEAN", {
|
||||
"tooltip": "When false, enables safety filtering on prompts and input images. Only used when 'Use Safety Filter' is enabled.",
|
||||
"default": False,
|
||||
"label_on": "true",
|
||||
"label_off": "false",
|
||||
}),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -196,7 +215,7 @@ class RunwareVideoSettings:
|
||||
FUNCTION = "createSettings"
|
||||
CATEGORY = "Runware"
|
||||
DESCRIPTION = (
|
||||
"Configure video inference settings (draft, audio, promptUpsampling, voiceDescription, style, thinking, multiClip, shotType, promptExtend, syncMode, mode, emotion, temperature, occlusionDetection, tts, activeSpeakerDetection, segments, etc.) for Runware Video Inference. "
|
||||
"Configure video inference settings (draft, audio, voicePrompt, safetyFilter, promptUpsampling, voiceDescription, style, thinking, multiClip, shotType, promptExtend, syncMode, mode, emotion, temperature, occlusionDetection, tts, activeSpeakerDetection, segments, etc.) for Runware Video Inference. "
|
||||
"Connect to Runware Video Inference node."
|
||||
)
|
||||
|
||||
@@ -206,6 +225,10 @@ class RunwareVideoSettings:
|
||||
draft = kwargs.get("draft", False)
|
||||
use_audio = kwargs.get("useAudio", False)
|
||||
audio = kwargs.get("audio", False)
|
||||
use_voice_prompt = kwargs.get("useVoicePrompt", False)
|
||||
voice_prompt = (kwargs.get("voicePrompt") or "").strip()
|
||||
use_safety_filter = kwargs.get("useSafetyFilter", False)
|
||||
safety_filter = kwargs.get("safetyFilter", False)
|
||||
use_prompt_upsampling = kwargs.get("usePromptUpsampling", False)
|
||||
prompt_upsampling = kwargs.get("promptUpsampling", False)
|
||||
use_background_color = kwargs.get("useBackgroundColor", False)
|
||||
@@ -248,6 +271,10 @@ class RunwareVideoSettings:
|
||||
settings["draft"] = bool(draft)
|
||||
if use_audio:
|
||||
settings["audio"] = bool(audio)
|
||||
if use_voice_prompt and voice_prompt:
|
||||
settings["voicePrompt"] = voice_prompt
|
||||
if use_safety_filter:
|
||||
settings["safetyFilter"] = bool(safety_filter)
|
||||
if use_prompt_upsampling:
|
||||
settings["promptUpsampling"] = bool(prompt_upsampling)
|
||||
if use_background_color and background_color:
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user