added whisper-openai to requirements as well as moviepy
started creating whisper transcription node modified how imports are handled to avoid importing the same moduels twice under different name spaces. added basic.py to house simple functions that work on primitives. NOTE: this update relies on change to /web/extensions that are not included in this commit, a future commit will include an install process for these changes.
This commit is contained in:
@@ -0,0 +1,179 @@
|
||||
class MultilineStringNode:
|
||||
"""Noe that displays multiline text box"""
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
return {
|
||||
"required": {
|
||||
"Text": ("STRING", {
|
||||
"default": "",
|
||||
"multiline": True,
|
||||
}),
|
||||
}
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("STRING", "INT", "FLOAT", "LIST")
|
||||
FUNCTION = "get_value"
|
||||
CATEGORY = "text"
|
||||
|
||||
def get_value(self, Text):
|
||||
return (Text,)
|
||||
|
||||
|
||||
class StrBreakout:
|
||||
""" node that breaks out a string into a:
|
||||
- Boolean
|
||||
- int
|
||||
- float
|
||||
- [string]
|
||||
- splitlines()
|
||||
- split(",")
|
||||
|
||||
the first value is a description of the transformations tried
|
||||
"""
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
return {
|
||||
"required": {
|
||||
"Text": ("STRING", {
|
||||
"default": "",
|
||||
}),
|
||||
}
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("STRING", "BOOL", "INT", "FLOAT", "LIST", "LIST", "LIST",)
|
||||
FUNCTION = "get_value"
|
||||
CATEGORY = "text"
|
||||
|
||||
def get_value(self, Text):
|
||||
out_bool = False
|
||||
out_int = 0
|
||||
out_float = 0.0
|
||||
out_list = []
|
||||
out_lines = []
|
||||
out_comma = []
|
||||
notes = []
|
||||
try:
|
||||
out_bool = bool(Text)
|
||||
notes.append(f"bool worked")
|
||||
except Exception as e:
|
||||
notes.append(f"bool failed: {e}")
|
||||
|
||||
try:
|
||||
out_int = int(Text)
|
||||
notes.append(f"int worked")
|
||||
except Exception as e:
|
||||
notes.append(f"int failed: {e}")
|
||||
pass
|
||||
try:
|
||||
out_float = float(Text)
|
||||
notes.append(f"float worked")
|
||||
except Exception as e:
|
||||
pass
|
||||
try:
|
||||
out_list = list(Text)
|
||||
notes.append(f"list worked")
|
||||
except Exception as e:
|
||||
notes.append(f"list failed: {e}")
|
||||
pass
|
||||
try:
|
||||
out_lines = Text.splitlines()
|
||||
notes.append(f"splitlines worked")
|
||||
except Exception as e:
|
||||
notes.append(f"splitlines failed: {e}")
|
||||
pass
|
||||
try:
|
||||
out_comma = Text.split(",")
|
||||
notes.append(f"split(',') worked")
|
||||
except Exception as e:
|
||||
notes.append(f"split(',') failed: {e}")
|
||||
pass
|
||||
return ("\n".join(notes), out_bool, out_int, out_float, out_list, out_lines, out_comma,)
|
||||
|
||||
class IntBreakout:
|
||||
""" node that breaks out an int into a:
|
||||
- Boolean
|
||||
- str(int)
|
||||
- float
|
||||
- [int]
|
||||
- list(range(int))
|
||||
- [None] * int
|
||||
|
||||
the first value is a description of the transformations tried
|
||||
"""
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
return {
|
||||
"required": {
|
||||
"Int": ("INT", {
|
||||
"default": 0,
|
||||
}),
|
||||
}
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("STRING", "BOOL", "STRING", "FLOAT", "LIST", "LIST", "LIST",)
|
||||
FUNCTION = "get_value"
|
||||
CATEGORY = "text"
|
||||
|
||||
def get_value(self, Int):
|
||||
out_bool = False
|
||||
out_str = ""
|
||||
out_float = 0.0
|
||||
out_list = []
|
||||
out_range = []
|
||||
out_none = []
|
||||
notes = []
|
||||
try:
|
||||
out_bool = bool(Int)
|
||||
notes.append(f"bool worked")
|
||||
except Exception as e:
|
||||
notes.append(f"bool failed: {e}")
|
||||
|
||||
try:
|
||||
out_str = str(Int)
|
||||
notes.append(f"str worked")
|
||||
except Exception as e:
|
||||
notes.append(f"str failed: {e}")
|
||||
pass
|
||||
try:
|
||||
out_float = float(Int)
|
||||
notes.append(f"float worked")
|
||||
except Exception as e:
|
||||
pass
|
||||
try:
|
||||
out_list = list(Int)
|
||||
notes.append(f"list worked")
|
||||
except Exception as e:
|
||||
notes.append(f"list failed: {e}")
|
||||
pass
|
||||
try:
|
||||
out_range = list(range(Int))
|
||||
notes.append(f"range worked")
|
||||
except Exception as e:
|
||||
notes.append(f"range failed: {e}")
|
||||
pass
|
||||
try:
|
||||
out_none = [None] * Int
|
||||
notes.append(f"[None] * worked")
|
||||
except Exception as e:
|
||||
notes.append(f"[None] * failed: {e}")
|
||||
pass
|
||||
return ("\n".join(notes), out_bool, out_str, out_float, out_list, out_range, out_none,)
|
||||
|
||||
|
||||
|
||||
NODE_CLASS_MAPPINGS = {}
|
||||
NODE_CLASS_MAPPINGS["MultilineStringNode"] = MultilineStringNode
|
||||
NODE_CLASS_MAPPINGS["StrBreakout"] = StrBreakout
|
||||
NODE_CLASS_MAPPINGS["IntBreakout"] = IntBreakout
|
||||
Reference in New Issue
Block a user