mirror of
https://git.datalinker.icu/comfyanonymous/ComfyUI
synced 2025-12-09 05:54:24 +08:00
convert nodes_audio_encoder.py to V3 schema (#10123)
This commit is contained in:
parent
c4a8cf60ab
commit
638097829d
@ -1605,6 +1605,7 @@ class _IO:
|
|||||||
Model = Model
|
Model = Model
|
||||||
ClipVision = ClipVision
|
ClipVision = ClipVision
|
||||||
ClipVisionOutput = ClipVisionOutput
|
ClipVisionOutput = ClipVisionOutput
|
||||||
|
AudioEncoder = AudioEncoder
|
||||||
AudioEncoderOutput = AudioEncoderOutput
|
AudioEncoderOutput = AudioEncoderOutput
|
||||||
StyleModel = StyleModel
|
StyleModel = StyleModel
|
||||||
Gligen = Gligen
|
Gligen = Gligen
|
||||||
|
|||||||
@ -1,44 +1,62 @@
|
|||||||
import folder_paths
|
import folder_paths
|
||||||
import comfy.audio_encoders.audio_encoders
|
import comfy.audio_encoders.audio_encoders
|
||||||
import comfy.utils
|
import comfy.utils
|
||||||
|
from typing_extensions import override
|
||||||
|
from comfy_api.latest import ComfyExtension, io
|
||||||
|
|
||||||
|
|
||||||
class AudioEncoderLoader:
|
class AudioEncoderLoader(io.ComfyNode):
|
||||||
@classmethod
|
@classmethod
|
||||||
def INPUT_TYPES(s):
|
def define_schema(cls) -> io.Schema:
|
||||||
return {"required": { "audio_encoder_name": (folder_paths.get_filename_list("audio_encoders"), ),
|
return io.Schema(
|
||||||
}}
|
node_id="AudioEncoderLoader",
|
||||||
RETURN_TYPES = ("AUDIO_ENCODER",)
|
category="loaders",
|
||||||
FUNCTION = "load_model"
|
inputs=[
|
||||||
|
io.Combo.Input(
|
||||||
|
"audio_encoder_name",
|
||||||
|
options=folder_paths.get_filename_list("audio_encoders"),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
outputs=[io.AudioEncoder.Output()],
|
||||||
|
)
|
||||||
|
|
||||||
CATEGORY = "loaders"
|
@classmethod
|
||||||
|
def execute(cls, audio_encoder_name) -> io.NodeOutput:
|
||||||
def load_model(self, audio_encoder_name):
|
|
||||||
audio_encoder_name = folder_paths.get_full_path_or_raise("audio_encoders", audio_encoder_name)
|
audio_encoder_name = folder_paths.get_full_path_or_raise("audio_encoders", audio_encoder_name)
|
||||||
sd = comfy.utils.load_torch_file(audio_encoder_name, safe_load=True)
|
sd = comfy.utils.load_torch_file(audio_encoder_name, safe_load=True)
|
||||||
audio_encoder = comfy.audio_encoders.audio_encoders.load_audio_encoder_from_sd(sd)
|
audio_encoder = comfy.audio_encoders.audio_encoders.load_audio_encoder_from_sd(sd)
|
||||||
if audio_encoder is None:
|
if audio_encoder is None:
|
||||||
raise RuntimeError("ERROR: audio encoder file is invalid and does not contain a valid model.")
|
raise RuntimeError("ERROR: audio encoder file is invalid and does not contain a valid model.")
|
||||||
return (audio_encoder,)
|
return io.NodeOutput(audio_encoder)
|
||||||
|
|
||||||
|
|
||||||
class AudioEncoderEncode:
|
class AudioEncoderEncode(io.ComfyNode):
|
||||||
@classmethod
|
@classmethod
|
||||||
def INPUT_TYPES(s):
|
def define_schema(cls) -> io.Schema:
|
||||||
return {"required": { "audio_encoder": ("AUDIO_ENCODER",),
|
return io.Schema(
|
||||||
"audio": ("AUDIO",),
|
node_id="AudioEncoderEncode",
|
||||||
}}
|
category="conditioning",
|
||||||
RETURN_TYPES = ("AUDIO_ENCODER_OUTPUT",)
|
inputs=[
|
||||||
FUNCTION = "encode"
|
io.AudioEncoder.Input("audio_encoder"),
|
||||||
|
io.Audio.Input("audio"),
|
||||||
|
],
|
||||||
|
outputs=[io.AudioEncoderOutput.Output()],
|
||||||
|
)
|
||||||
|
|
||||||
CATEGORY = "conditioning"
|
@classmethod
|
||||||
|
def execute(cls, audio_encoder, audio) -> io.NodeOutput:
|
||||||
def encode(self, audio_encoder, audio):
|
|
||||||
output = audio_encoder.encode_audio(audio["waveform"], audio["sample_rate"])
|
output = audio_encoder.encode_audio(audio["waveform"], audio["sample_rate"])
|
||||||
return (output,)
|
return io.NodeOutput(output)
|
||||||
|
|
||||||
|
|
||||||
NODE_CLASS_MAPPINGS = {
|
class AudioEncoder(ComfyExtension):
|
||||||
"AudioEncoderLoader": AudioEncoderLoader,
|
@override
|
||||||
"AudioEncoderEncode": AudioEncoderEncode,
|
async def get_node_list(self) -> list[type[io.ComfyNode]]:
|
||||||
}
|
return [
|
||||||
|
AudioEncoderLoader,
|
||||||
|
AudioEncoderEncode,
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
async def comfy_entrypoint() -> AudioEncoder:
|
||||||
|
return AudioEncoder()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user