Browse Source

Force strip input when SDXL img2img

Inpaint_experimental
tin2tin 1 year ago committed by GitHub
parent
commit
6eda88e279
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 33
      __init__.py

33
__init__.py

@ -654,6 +654,7 @@ class GeneratorAddonPreferences(AddonPreferences):
# ("cerspense/zeroscope_v1-1_320s", "Zeroscope v1.1 (320x320)", "Zeroscope (320x320)"), # ("cerspense/zeroscope_v1-1_320s", "Zeroscope v1.1 (320x320)", "Zeroscope (320x320)"),
], ],
default="cerspense/zeroscope_v2_XL", default="cerspense/zeroscope_v2_XL",
update=input_strips_updated,
) )
image_model_card: bpy.props.EnumProperty( image_model_card: bpy.props.EnumProperty(
@ -861,6 +862,18 @@ class GENERATOR_OT_sound_notification(Operator):
return {"FINISHED"} return {"FINISHED"}
def input_strips_updated(self, context):
preferences = context.preferences
addon_prefs = preferences.addons[__name__].preferences
movie_model_card = addon_prefs.movie_model_card
scene = context.scene
input = scene.input_strips
if movie_model_card == "stabilityai/stable-diffusion-xl-base-1.0":
scene.input_strips = "input_strips"
class SEQEUNCER_PT_generate_ai(Panel): # UI class SEQEUNCER_PT_generate_ai(Panel): # UI
"""Generate Media using AI""" """Generate Media using AI"""
@ -877,9 +890,6 @@ class SEQEUNCER_PT_generate_ai(Panel): # UI
movie_model_card = addon_prefs.movie_model_card movie_model_card = addon_prefs.movie_model_card
image_model_card = addon_prefs.image_model_card image_model_card = addon_prefs.image_model_card
layout = self.layout
layout.use_property_split = False
layout.use_property_decorate = False
scene = context.scene scene = context.scene
type = scene.generatorai_typeselect type = scene.generatorai_typeselect
input = scene.input_strips input = scene.input_strips
@ -950,17 +960,17 @@ class SEQEUNCER_PT_generate_ai(Panel): # UI
col = layout.column() col = layout.column()
col.prop(context.scene, "input_strips", text="Input") col.prop(context.scene, "input_strips", text="Input")
if input =="input_strips": if input == "input_strips":
col.prop(context.scene, "image_power", text="Strip Power") col.prop(context.scene, "image_power", text="Strip Power")
col = layout.column() col = layout.column()
col.prop(context.scene, "generatorai_typeselect", text="Output") col.prop(context.scene, "generatorai_typeselect", text="Output")
col.prop(context.scene, "movie_num_batch", text="Batch Count") col.prop(context.scene, "movie_num_batch", text="Batch Count")
if input =="input_strips": if input == "input_strips":
row = layout.row(align=True) row = layout.row(align=True)
row.scale_y = 1.1 row.scale_y = 1.1
row.operator("sequencer.text_to_generator", text="Generate") row.operator("sequencer.text_to_generator", text="Generate from Strips")
else: else:
row = layout.row(align=True) row = layout.row(align=True)
row.scale_y = 1.1 row.scale_y = 1.1
@ -1035,6 +1045,7 @@ class SEQUENCER_OT_generate_movie(Operator):
duration = scene.generate_movie_frames duration = scene.generate_movie_frames
movie_num_inference_steps = scene.movie_num_inference_steps movie_num_inference_steps = scene.movie_num_inference_steps
movie_num_guidance = scene.movie_num_guidance movie_num_guidance = scene.movie_num_guidance
input = scene.input_strips
preferences = context.preferences preferences = context.preferences
addon_prefs = preferences.addons[__name__].preferences addon_prefs = preferences.addons[__name__].preferences
@ -1048,7 +1059,7 @@ class SEQUENCER_OT_generate_movie(Operator):
# LOADING MODULES # LOADING MODULES
# Models for refine imported movie # Models for refine imported movie
if scene.movie_path or scene.image_path: if (scene.movie_path or scene.image_path) and input == "input_strips":
if movie_model_card == "stabilityai/stable-diffusion-xl-base-1.0": if movie_model_card == "stabilityai/stable-diffusion-xl-base-1.0":
import torch import torch
@ -1213,7 +1224,7 @@ class SEQUENCER_OT_generate_movie(Operator):
generator = None generator = None
# Process batch input # Process batch input
if scene.movie_path or scene.image_path: if (scene.movie_path or scene.image_path) and input == "input_strips":
# Path to the video file # Path to the video file
video_path = scene.movie_path video_path = scene.movie_path
@ -2046,11 +2057,11 @@ classes = (
def register(): def register():
bpy.types.Scene.generate_movie_prompt = bpy.props.StringProperty( bpy.types.Scene.generate_movie_prompt = bpy.props.StringProperty(
name="generate_movie_prompt", name="generate_movie_prompt",
default="high quality, masterpiece, slow motion, 4k", default="",
) )
bpy.types.Scene.generate_movie_negative_prompt = bpy.props.StringProperty( bpy.types.Scene.generate_movie_negative_prompt = bpy.props.StringProperty(
name="generate_movie_negative_prompt", name="generate_movie_negative_prompt",
default="low quality, windy, flicker, jitter", default="",
) )
bpy.types.Scene.generate_audio_prompt = bpy.props.StringProperty( bpy.types.Scene.generate_audio_prompt = bpy.props.StringProperty(
name="generate_audio_prompt", default="" name="generate_audio_prompt", default=""
@ -2188,12 +2199,12 @@ def register():
bpy.types.Scene.image_path = "" bpy.types.Scene.image_path = ""
bpy.types.Scene.input_strips = bpy.props.EnumProperty( bpy.types.Scene.input_strips = bpy.props.EnumProperty(
name="Sound",
items=[ items=[
("generate", "No Input", "No Input"), ("generate", "No Input", "No Input"),
("input_strips", "Strips", "Selected Strips"), ("input_strips", "Strips", "Selected Strips"),
], ],
default="generate", default="generate",
update=input_strips_updated,
) )
bpy.types.Scene.image_power = bpy.props.FloatProperty( bpy.types.Scene.image_power = bpy.props.FloatProperty(

Loading…
Cancel
Save