Spaces:
Running
on
Zero
Running
on
Zero
| import folder_paths | |
| import comfy.audio_encoders.audio_encoders | |
| import comfy.utils | |
| class AudioEncoderLoader: | |
| def INPUT_TYPES(s): | |
| return {"required": { "audio_encoder_name": (folder_paths.get_filename_list("audio_encoders"), ), | |
| }} | |
| RETURN_TYPES = ("AUDIO_ENCODER",) | |
| FUNCTION = "load_model" | |
| CATEGORY = "loaders" | |
| def load_model(self, 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) | |
| audio_encoder = comfy.audio_encoders.audio_encoders.load_audio_encoder_from_sd(sd) | |
| if audio_encoder is None: | |
| raise RuntimeError("ERROR: audio encoder file is invalid and does not contain a valid model.") | |
| return (audio_encoder,) | |
| class AudioEncoderEncode: | |
| def INPUT_TYPES(s): | |
| return {"required": { "audio_encoder": ("AUDIO_ENCODER",), | |
| "audio": ("AUDIO",), | |
| }} | |
| RETURN_TYPES = ("AUDIO_ENCODER_OUTPUT",) | |
| FUNCTION = "encode" | |
| CATEGORY = "conditioning" | |
| def encode(self, audio_encoder, audio): | |
| output = audio_encoder.encode_audio(audio["waveform"], audio["sample_rate"]) | |
| return (output,) | |
| NODE_CLASS_MAPPINGS = { | |
| "AudioEncoderLoader": AudioEncoderLoader, | |
| "AudioEncoderEncode": AudioEncoderEncode, | |
| } | |