New node for audio-guided video prompts (LTX): takes a ComfyUI AUDIO clip + free-text motion notes and outputs (1) a rendered energy-envelope IMAGE with beat/segment markers so the vision model can see the audio shape, and (2) an audio_summary STRING with duration, tempo/beats (librosa optional), per-segment energy + 8n+1-snapped frame counts + stage hints + the notes. Wire waveform_image -> Judge.reference_image and audio_summary -> Judge.user_prompt (chat mode, json_output) for beat-aligned LTX JSON. librosa optional (energy envelope + segments work without it). Registered in __init__; README workflow added. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
20 lines
683 B
Python
20 lines
683 B
Python
"""ComfyUI-Prompt-Calibratror — VLM-as-judge prompt calibration loop."""
|
|
|
|
from .nodes.qwen_judge import (
|
|
NODE_CLASS_MAPPINGS as _JUDGE_CLASSES,
|
|
NODE_DISPLAY_NAME_MAPPINGS as _JUDGE_NAMES,
|
|
)
|
|
from .nodes.receptor import (
|
|
NODE_CLASS_MAPPINGS as _RECEPTOR_CLASSES,
|
|
NODE_DISPLAY_NAME_MAPPINGS as _RECEPTOR_NAMES,
|
|
)
|
|
from .nodes.audio_guide import (
|
|
NODE_CLASS_MAPPINGS as _AUDIO_CLASSES,
|
|
NODE_DISPLAY_NAME_MAPPINGS as _AUDIO_NAMES,
|
|
)
|
|
|
|
NODE_CLASS_MAPPINGS = {**_JUDGE_CLASSES, **_RECEPTOR_CLASSES, **_AUDIO_CLASSES}
|
|
NODE_DISPLAY_NAME_MAPPINGS = {**_JUDGE_NAMES, **_RECEPTOR_NAMES, **_AUDIO_NAMES}
|
|
|
|
__all__ = ["NODE_CLASS_MAPPINGS", "NODE_DISPLAY_NAME_MAPPINGS"]
|