mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-02-05 19:12:41 +08:00
feat: add SEARCH_ALIASES for audio and video nodes (#12018)
Add search aliases to audio and video nodes for better discoverability: - nodes_audio.py: audio loading, saving, and processing nodes - nodes_video.py: video loading and processing nodes - nodes_wan.py: WAN model nodes Uses search_aliases parameter in io.Schema() for v3 nodes.
This commit is contained in:
parent
abd7ca20e2
commit
dfcf88e484
@ -69,6 +69,7 @@ class VAEEncodeAudio(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="VAEEncodeAudio",
|
node_id="VAEEncodeAudio",
|
||||||
|
search_aliases=["audio to latent"],
|
||||||
display_name="VAE Encode Audio",
|
display_name="VAE Encode Audio",
|
||||||
category="latent/audio",
|
category="latent/audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -97,6 +98,7 @@ class VAEDecodeAudio(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="VAEDecodeAudio",
|
node_id="VAEDecodeAudio",
|
||||||
|
search_aliases=["latent to audio"],
|
||||||
display_name="VAE Decode Audio",
|
display_name="VAE Decode Audio",
|
||||||
category="latent/audio",
|
category="latent/audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -122,6 +124,7 @@ class SaveAudio(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="SaveAudio",
|
node_id="SaveAudio",
|
||||||
|
search_aliases=["export flac"],
|
||||||
display_name="Save Audio (FLAC)",
|
display_name="Save Audio (FLAC)",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -146,6 +149,7 @@ class SaveAudioMP3(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="SaveAudioMP3",
|
node_id="SaveAudioMP3",
|
||||||
|
search_aliases=["export mp3"],
|
||||||
display_name="Save Audio (MP3)",
|
display_name="Save Audio (MP3)",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -173,6 +177,7 @@ class SaveAudioOpus(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="SaveAudioOpus",
|
node_id="SaveAudioOpus",
|
||||||
|
search_aliases=["export opus"],
|
||||||
display_name="Save Audio (Opus)",
|
display_name="Save Audio (Opus)",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -200,6 +205,7 @@ class PreviewAudio(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="PreviewAudio",
|
node_id="PreviewAudio",
|
||||||
|
search_aliases=["play audio"],
|
||||||
display_name="Preview Audio",
|
display_name="Preview Audio",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -259,6 +265,7 @@ class LoadAudio(IO.ComfyNode):
|
|||||||
files = folder_paths.filter_files_content_types(os.listdir(input_dir), ["audio", "video"])
|
files = folder_paths.filter_files_content_types(os.listdir(input_dir), ["audio", "video"])
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="LoadAudio",
|
node_id="LoadAudio",
|
||||||
|
search_aliases=["import audio", "open audio", "audio file"],
|
||||||
display_name="Load Audio",
|
display_name="Load Audio",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -296,6 +303,7 @@ class RecordAudio(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="RecordAudio",
|
node_id="RecordAudio",
|
||||||
|
search_aliases=["microphone input", "audio capture", "voice input"],
|
||||||
display_name="Record Audio",
|
display_name="Record Audio",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -320,6 +328,7 @@ class TrimAudioDuration(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="TrimAudioDuration",
|
node_id="TrimAudioDuration",
|
||||||
|
search_aliases=["cut audio", "audio clip", "shorten audio"],
|
||||||
display_name="Trim Audio Duration",
|
display_name="Trim Audio Duration",
|
||||||
description="Trim audio tensor into chosen time range.",
|
description="Trim audio tensor into chosen time range.",
|
||||||
category="audio",
|
category="audio",
|
||||||
@ -372,6 +381,7 @@ class SplitAudioChannels(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="SplitAudioChannels",
|
node_id="SplitAudioChannels",
|
||||||
|
search_aliases=["stereo to mono"],
|
||||||
display_name="Split Audio Channels",
|
display_name="Split Audio Channels",
|
||||||
description="Separates the audio into left and right channels.",
|
description="Separates the audio into left and right channels.",
|
||||||
category="audio",
|
category="audio",
|
||||||
@ -472,6 +482,7 @@ class AudioConcat(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="AudioConcat",
|
node_id="AudioConcat",
|
||||||
|
search_aliases=["join audio", "combine audio", "append audio"],
|
||||||
display_name="Audio Concat",
|
display_name="Audio Concat",
|
||||||
description="Concatenates the audio1 to audio2 in the specified direction.",
|
description="Concatenates the audio1 to audio2 in the specified direction.",
|
||||||
category="audio",
|
category="audio",
|
||||||
@ -519,6 +530,7 @@ class AudioMerge(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="AudioMerge",
|
node_id="AudioMerge",
|
||||||
|
search_aliases=["mix audio", "overlay audio", "layer audio"],
|
||||||
display_name="Audio Merge",
|
display_name="Audio Merge",
|
||||||
description="Combine two audio tracks by overlaying their waveforms.",
|
description="Combine two audio tracks by overlaying their waveforms.",
|
||||||
category="audio",
|
category="audio",
|
||||||
@ -579,6 +591,7 @@ class AudioAdjustVolume(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="AudioAdjustVolume",
|
node_id="AudioAdjustVolume",
|
||||||
|
search_aliases=["audio gain", "loudness", "audio level"],
|
||||||
display_name="Audio Adjust Volume",
|
display_name="Audio Adjust Volume",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -614,6 +627,7 @@ class EmptyAudio(IO.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return IO.Schema(
|
return IO.Schema(
|
||||||
node_id="EmptyAudio",
|
node_id="EmptyAudio",
|
||||||
|
search_aliases=["blank audio"],
|
||||||
display_name="Empty Audio",
|
display_name="Empty Audio",
|
||||||
category="audio",
|
category="audio",
|
||||||
inputs=[
|
inputs=[
|
||||||
|
|||||||
@ -16,6 +16,7 @@ class SaveWEBM(io.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="SaveWEBM",
|
node_id="SaveWEBM",
|
||||||
|
search_aliases=["export webm"],
|
||||||
category="image/video",
|
category="image/video",
|
||||||
is_experimental=True,
|
is_experimental=True,
|
||||||
inputs=[
|
inputs=[
|
||||||
@ -69,6 +70,7 @@ class SaveVideo(io.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="SaveVideo",
|
node_id="SaveVideo",
|
||||||
|
search_aliases=["export video"],
|
||||||
display_name="Save Video",
|
display_name="Save Video",
|
||||||
category="image/video",
|
category="image/video",
|
||||||
description="Saves the input images to your ComfyUI output directory.",
|
description="Saves the input images to your ComfyUI output directory.",
|
||||||
@ -116,6 +118,7 @@ class CreateVideo(io.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="CreateVideo",
|
node_id="CreateVideo",
|
||||||
|
search_aliases=["images to video"],
|
||||||
display_name="Create Video",
|
display_name="Create Video",
|
||||||
category="image/video",
|
category="image/video",
|
||||||
description="Create a video from images.",
|
description="Create a video from images.",
|
||||||
@ -140,6 +143,7 @@ class GetVideoComponents(io.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="GetVideoComponents",
|
node_id="GetVideoComponents",
|
||||||
|
search_aliases=["extract frames", "split video", "video to images", "demux"],
|
||||||
display_name="Get Video Components",
|
display_name="Get Video Components",
|
||||||
category="image/video",
|
category="image/video",
|
||||||
description="Extracts all components from a video: frames, audio, and framerate.",
|
description="Extracts all components from a video: frames, audio, and framerate.",
|
||||||
@ -167,6 +171,7 @@ class LoadVideo(io.ComfyNode):
|
|||||||
files = folder_paths.filter_files_content_types(files, ["video"])
|
files = folder_paths.filter_files_content_types(files, ["video"])
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="LoadVideo",
|
node_id="LoadVideo",
|
||||||
|
search_aliases=["import video", "open video", "video file"],
|
||||||
display_name="Load Video",
|
display_name="Load Video",
|
||||||
category="image/video",
|
category="image/video",
|
||||||
inputs=[
|
inputs=[
|
||||||
|
|||||||
@ -286,6 +286,7 @@ class WanVaceToVideo(io.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="WanVaceToVideo",
|
node_id="WanVaceToVideo",
|
||||||
|
search_aliases=["video conditioning", "video control"],
|
||||||
category="conditioning/video_models",
|
category="conditioning/video_models",
|
||||||
inputs=[
|
inputs=[
|
||||||
io.Conditioning.Input("positive"),
|
io.Conditioning.Input("positive"),
|
||||||
@ -704,6 +705,7 @@ class WanTrackToVideo(io.ComfyNode):
|
|||||||
def define_schema(cls):
|
def define_schema(cls):
|
||||||
return io.Schema(
|
return io.Schema(
|
||||||
node_id="WanTrackToVideo",
|
node_id="WanTrackToVideo",
|
||||||
|
search_aliases=["motion tracking", "trajectory video", "point tracking", "keypoint animation"],
|
||||||
category="conditioning/video_models",
|
category="conditioning/video_models",
|
||||||
inputs=[
|
inputs=[
|
||||||
io.Conditioning.Input("positive"),
|
io.Conditioning.Input("positive"),
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user