Nodes/ComfyUI LC Audio_Video Nodes/LC AV Pipe (in/edit) 🎬
ComfyUI Node

LC AV Pipe (in/edit) 🎬

Pack or patch the AV pipe that carries your whole video job

By lonecatone23Β·Created 2 days agoΒ·Updated 2 days agoΒ· 1
LC AV Pipe (in/edit) 🎬
  • pipe
  • av_pipe
  • video
  • audio
  • av_pipe
β—„frame_rate0.00β–Ί
β—„duration0.00β–Ί
β—„sample_rate0β–Ί
β—„width0β–Ί
β—„height0β–Ί
β—„frame_count0β–Ί
β—„positive_promptβ–Ί
β—„negative_promptβ–Ί
β—„seed0β–Ί
β—„total_steps0β–Ί
β—„sampler_nameβ–Ί
β—„modelsβ–Ί

Every AV workflow in this pack funnels through one thing: the LC_AV_PIPE, a single wire that carries your video frames, audio, fps, duration, resolution, and generation metadata together. LC AV Pipe (in/edit) is where that pipe gets born and where it gets patched - it's both the pack's "in" node and its editor, the one node with slots for everything the pipe can hold.

It works the way the best pipe nodes do: as a many-input, one-output packer. Wire up whatever you have - frames into video, a track into audio, numbers into frame_rate, width, height - and out comes a single av_pipe you can drag across the graph as one tidy wire. Leave a socket empty and its value simply isn't set; nothing forces you to fill every slot. That's the whole philosophy of the context/pipe pattern the plumbing-layer docs describe: bundle a dozen values into one wire to keep the graph readable, at the cost of hiding what's inside.

How it works

Read the sockets top to bottom and it's a story: first an optional pipe socket that accepts an image-pack LC_PIPE (it copies prompts, seed, steps and size only - and never writes back to it), then an optional av_pipe socket for editing an existing AV pipe inline, then the individual video/audio slots.

The edit semantics matter and they're simple: wired values override; empty slots pass through. If you feed an existing av_pipe in and only connect a new audio, you get the same pipe back with just the audio swapped. Leave av_pipe unwired entirely and the node acts as a pure packer ("in") from the individual sockets. Downstream, the values live on the pipe until an LC AV Pipe Out unpacks them or an LC Create Video / LC Save Video reads them directly.

The inputs that matter

  • pipe - optional LC_PIPE from the image pack, for carrying prompts/seed/steps/size across packs.
  • av_pipe - an existing pipe to edit inline.
  • video, audio, frame_rate, duration, sample_rate, width, height, frame_count - the AV content slots. Wire what you have.
  • positive_prompt, negative_prompt, seed, total_steps, sampler_name, models - metadata slots that ride along for save/watermark purposes.

One output: the assembled av_pipe.

How to install it

Ships in lonecatone23/ComfyUI_LC_AV_nodes (LC Audio_Video toolkit, MIT, by lonecatone23; sibling to the image-side ComfyUI_LC123_nodes - separate repos, do not merge):

  • ComfyUI Manager: search "LC Audio_Video" or ComfyUI_LC_AV_nodes.
  • Manual: cd ComfyUI/custom_nodes && git clone https://github.com/lonecatone23/ComfyUI_LC_AV_nodes, restart ComfyUI (console: [LC AV] total 16 nodes).

No downloads or extra packages.

Where it bites

The pipe's hidden-contents failure mode is real (the plumbing docs call it "stale context"): because one wire carries everything, it's easy to unpack a value that was set before a node upstream changed it. When something looks wrong downstream, trace where each slot was last written rather than assuming the pipe is current. And remember the rule of the family: video belongs on the AV pipe, not an LC_PIPE - if you're tempted to jam frames into the image pack's pipe, that's the misunderstanding this whole dual-pipe design exists to prevent.

CategoryLC AV/pipe

Inputs (16)

NameTypeDefaultDescription
pipeoptLC_PIPELC123 LC_PIPE. Copies prompts/seed/steps/size only. Never written back.
av_pipeoptLC_AV_PIPEExisting LC_AV_PIPE to edit inline. Unwired = pack from sockets (in).
videooptIMAGEVideo
audiooptAUDIOAudio
frame_rateoptFLOAT0.000–100000frame_rate
durationoptFLOAT0.000–100000duration
sample_rateoptINT0-1–18446744073709550000sample_rate
widthoptINT0-1–18446744073709550000Width
heightoptINT0-1–18446744073709550000Height
frame_countoptINT0-1–18446744073709550000frame_count
positive_promptoptSTRINGPositive prompt
negative_promptoptSTRINGNegative prompt
seedoptINT0-1–18446744073709550000Seed
total_stepsoptINT0-1–18446744073709550000total_steps
sampler_nameoptSTRINGsampler_name
modelsoptSTRINGModels

Outputs (1)

NameTypeDescription
av_pipeLC_AV_PIPEβ€”