LTX Image Uploader ☁️
The boring utility node that feeds the LTX API
- image
- image_url
Let's be honest about this one up front: it's a utility, not a generator, and in most stock workflows you won't need it. The pack's generation nodes already upload your image internally - LTXImageToVideo and LTXAudioToVideo take an IMAGE tensor and handle the hosting themselves. So why does LTXImageUploader exist? It takes an IMAGE, pushes it to LTX's cloud storage, and hands you back the storage URI as a string. That's the entire job.
What it's actually for
The value is in having that URI before you run a generation, which unlocks three things:
- Reuse without re-uploading. Wire this node in once, and its
image_urloutput can be fed to multiple places instead of each node re-uploading the same pixels. Saves a little time and, more importantly, keeps the pipeline deterministic. - Plumbing for custom API calls. The output is a string - an
ltx://storage URI that any HTTP-capable node or external script can consume. If you're building your own LTX API request outside this pack, this is the clean way to get a reference you already know is reachable from LTX's servers. - Chaining semantics. The extend and retake nodes want
video_urlas HTTPS orltx://- the same URI format this node produces for images. Not a drop-in (those want video, this uploads images), but the pattern is the same.
Inputs and outputs
Required: api_key and image. One optional: max_dimension (default 1920) - the tooltip is the ground truth here: images larger than this get resized, because that's the LTX API's limit. Keep it at the default unless you specifically want a smaller upload.
Output: a single image_url STRING. Note this node is not an output node - it doesn't trigger a render, it just does the upload and passes the string on. That's expected for plumbing.
Install
Same as the rest of the pack - ComfyUI Manager (search "comfyui-ltx-node"), or:
cd ComfyUI/custom_nodes
git clone https://github.com/PauldeLavallaz/comfyui-ltx-node
pip install requests pillow
Restart, paste your key from ltx.video/api-keys.
Two things worth knowing
Files you upload are available for 24 hours and up to 100MB, so it's temporary storage by design - treat a URI as disposable, not archival. And because this is an API wrapper, the image leaves your machine the moment you run it, same as every node in the pack. If your use case is just "animate this one image," skip the uploader and let the generator nodes handle it; reach for it when you need the URI as a first-class value in a bigger or more custom workflow.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | — | |
| image | IMAGE | — | |
| max_dimensionopt | INT | 1920256–4096 | Images larger than this will be resized (LTX limit: 1920). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image_url | STRING | — |