4 Commits
Author SHA1 Message Date
EthanfelandClaude Opus 4.8 4003dbb6e8 Judge: add seed (reproducible output) + interrupt support
New 'seed' input seeds sampling (torch.manual_seed before generation) so a fixed seed
reproduces the same output — no reroll when re-queueing while tweaking downstream nodes;
bump it to reroll (named 'seed' so the frontend adds control_after_generate). Generation
now honors ComfyUI cancel: a StoppingCriteria halts model.generate() promptly and
_check_interrupt() raises between passes. Workflows updated with the seed widget.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 00:15:05 +02:00
EthanfelandClaude Opus 4.8 488afa0284 Audio Wave: correct model — 721 groups are hard splits, segments inside; range select; mirrored render; fix reload explosion
Rebuilt around the real model: group_frames (721) are HARD splits; segments = user
splits UNION the group lines, so a segment never crosses a group boundary (last segment
in a group ends exactly on frame 721). segment_select is now a RANGE string ('A-B' /
'N' / '' = all) that crops waveform_image + audio + summary to segments A..B. Render
rewritten: mirrored waveform (uses top+bottom), bold group grid, thin segment lines,
labels along the top and notes along the bottom, selected range shaded. JS: guards
frame values (0 -> default, fixing the 400+-segments-on-reload explosion), writes only
USER splits to segments_json, dblclick=add split / shift-click=remove / click=seek.
group number fixed (boundary rounding). Workflows + README updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 23:35:48 +02:00
EthanfelandClaude Opus 4.8 75b20f9656 Audio Wave: fixed 721-frame subsegment grid + per-segment select/crop + notes box auto-fill
Pivot to the user's model: segments are a fixed grid of subsegment_frames frames
(default 721 @ 24fps = one LTX clip), not arbitrary clicks. New inputs:
subsegment_frames (grid size) and segment_select (0=all, N=output ONLY chunk N —
crops waveform_image, AUDIO, and summary so you can generate/skip one beat at a time).
_render gains window-crop + frame markers + per-segment time/frame labels. JS rewritten:
draws the fixed grid, auto-fills the notes box with one segN: line per chunk (type or
dblclick to note), click-to-seek, playhead + time readout. Workflows updated for the
new widgets.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 23:12:44 +02:00
EthanfelandClaude Opus 4.8 07ad5c1dc1 Add LTX audio workflow + Text (Prompt) node
New workflow/workflow_ltx_audio_api.json: Audio Wave + Segments + LoadImage (subject)
+ Text (Prompt) holding the LTX audio system prompt -> Judge in chat mode
(json_output, model 3.5-9b) -> LTX beats JSON on the analysis output. Added a tiny
CalibratorText node ('Text (Prompt)', STRING source) needed to feed the judge's
forceInput system_prompt/user_prompt/axes sockets. README points to the workflow.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 22:40:52 +02:00