Thanks everyone for the Buzz ⚡ the feedback 😊 and for sharing your
creations 🎬
❤️ If you enjoy my work and would like to support me, consider buying me a
☕ Coffee.
Switch to CivitAI.red to see all the example results and explore everything this workflow can do 😏
💡JUL 15 2026 NOTE
Just quickly reporting that even when the new 10Eros model version (v1.4) is not in the list of supported models, I can confirm it works with this workflow without any changes needed.
⚠️ JUN 22 2026 HOTFIX
Patched the LTX Director pipeline to make it compatible with the new node version.
This is a hot-fix to make the new version of the LTX Director work with this workflow, so not all the new features are available or tested. Ignore the IC-LoRA track; if you want to use ControlNet, use the group specially dedicated for that purpose. The video editing, extension and retake, and the audio inpainting features are not tested at all, so skip those for now, unless you want to experiment with them of course ;) but I can't guarantee they will work properly, or what effect those features will have on the rest of the workflow. The workflow works exactly the same as the previous version and all the features are available; it is only the new LTX Director features that are not fully tested yet. Two LTX Director workflows are available in the zip file so you can choose the one compatible with your current setup, one for the old version (v1.3) and one for the new one (v2).
⚠️ Warning: Although this is not an especially advanced workflow, it is also not beginner-friendly. It uses custom nodes and, depending on the setup, may require basic knowledge of Python dependency management, virtual environments, the ComfyUI file system, and troubleshooting.
If you are unfamiliar with these topics, please make a backup of your ComfyUI setup before installing new nodes or updating ComfyUI.
For beginners, I generally recommend using the portable version, as it is easier to maintain and back up.
It is also important to have a solid understanding of how to properly use and prompt the LTX2.3 model, including concepts such as guidance strengths, valid resolutions, reference image quality, and related settings. This is especially important when using the 10Eros model, as it is significantly less forgiving than the original model.
⚠️ This workflow is built with the standard ComfUI layout system in mind, Nodes 2.0 will mess up the size of the nodes and front end functions like the bypasser switches, we are all grown ups here, let the kids play with toys 🤭
Currently 3 types of models are supported:
Standard LTX 2.3 distilled
LTX 2.3 distilled GGUF
10Eros (v1 and 1.2)
💡 The models are self-contained. You can safely delete the entire group of whichever model you don't use without breaking the workflow. The remaining model groups will work independently without any additional changes needed.
💡 Three workflow versions are included in the zip file:
LTX23Legacy.json -> Legacy version for those whom like things "hands on" (No LTX Director node)
LTX23LTXDirector13.json -> Same features, but using LTX Director node v1.3.
LTX23LTXDirector2.json -> Same features, but using the new LTX Director node v2.
⚠️ COMFYUI SECURITY ERROR FIX: At the end of this post.
🎬 This is a total revamp of the original workflow with the same features, but using LTX Director.
You can find the author's tutorial here.

This workflow is a modular and flexible text/image/audio-to-video generation system built in ComfyUI, designed to give full control over video creation using LTX-based models. It allows you to easily mix and match multiple generation modes such as text-to-video, image-to-video, lipsync, and fully guided animation by enabling or disabling grouped nodes.
📝 Personal notes:
The 10Eros model is better for NSFW content, whereas the standard model is better for SFW generations, although the body movement of the 10Eros model can be beneficial in some cases for SFW content too, but in general, use each model as I just said.
Try to always use 2 phase sampling generations (Half res + 2x upscaler), this yields the best quality and character consistency, LTX is not good at all at preserving character ID, so don't make it worse by doing a single pass generation. The upscaler model adds extra detail and improves character consistency, that's why I recommend using it.
However, using half res on resolutions under 480p will generate bad quality videos since, at that point, you would be creating a first pass video so small that the upscaler won't have much details to work with. So for 480p and below, one single pass video generation is the way to go. On an RTX 4090, you can generate 1440p short videos using half res + upscaler, however, I think the sweet spot between quality and speed is at 720p.Don't use the detailer when generating "Amateur look" videos, it adds a light layer of detail to the final result, and most of the time it will look too "polished" for a real amateur recording; amateur style videos look more real when they look low quality.
Main features
LTX Director support
GGUF support
SFW / NSFW support
NSFW prompt enhancer
Text, image, audio, and ControlNet-driven video generation
LoRA support (character, style, and voice via ID LoRA)
Custom or AI-generated audio with automatic syncing
Reference image + unlimited keyframes (FFLF animation control)
ControlNet video guidance with hybrid reference support
Half-res sampling + 2× upscaling for faster high-quality results
LTX detailer for enhanced final output
Nvidia Video Super Resolution upscaler
RIFE VFI Interpolation
Common Setups
Text to video:
Timeline text segment.
Image to video:
Add an image segment to LTX Director, extend it to fill your video duration and input a segment prompt for that segment.
Lipsync:
Add an image segment to LTX Director, extend it to fill your video duration, input a segment prompt for that segment and add the audio file to the timeline. Enable custom audio in LTX director.
Audio to video:
Add a text segment to LTX Director, extend it to fill your video duration, input a segment prompt for that segment and add the audio file. Enable custom audio in LTX director.
Character LoRA + voice reference:
Add a text segment to LTX Director, extend it to fill your video duration and input a segment prompt for that segment. Add your character LoRA to the power LoRA loader, then activate ID LoRA and load a voice reference
Voice reference to video:
Add a text segment to LTX Director, extend it to fill your video duration and input a segment prompt for that segment. Activate ID LoRA and load a voice reference
Character animation:
Add an image segment to LTX Director, extend it to fill your video duration and input a segment prompt for that segment. Enable controlnet.First frame → last frame:
Add two image segments to LTX Director, and shrink the second image segment (last frame), add your prompt in the first image segment and in the second image prompt write "."First → middle → last frame:
Same thing as for FFLF, but adding an image segment in the middle and its corresponding prompt.Character animation with custom voice:
Image segment + ID LoRA + ControlNet
COMFYUI SECURITY ERROR FIX
If you hit a security level error while trying to install some custom nodes from ComfyUI manager:
You need to temporarily change the security level in your config.ini file.
If you are using the portable version, the file is located at:
ComfyUI/user/__manager/config.iniChange the value to:
security_level = weak
IMPORTANT:
Do NOT forget to restore it back to its original value, you should restore it afterward for safety reasons.
Perform a hard restart of ComfyUI (completely stop it, then start it again).
Install the custom node(s) using ComfyUI manager and double-check that it is the official one.
Restart ComfyUI and check if the node(s) work(s) properly.
Once everything is working properly, restore your original security level in the config.ini file and restart ComfyUI one final time.
Detailed instructions are contained in the workflow itself:
Red nodes are instructions and useful notes.
Yellow nodes are configurable elements you can adjust to your needs.
LTX DIRECTOR VERSION 1.3

LTX DIRECTOR VERSION 2

LEGACY VERSION

Custom node pack list
LTX Director workflows
Legacy workflow
Description
Adapted the entire guide pipeline for LTX Director support.
Made general quality improvements to the sampling and upscaling processes.
Added small VRAM optimizations.
Added basic color correction.
Changed the context nodes for basic pipes.
Added an execution timer.
FAQ
Comments (79)
Am using your ltx director..it's very nice. But I wish if you can make it compact.. making all in sub graphs. You have added so many loras ic id , can it be bypassed ? Coz mine is low vram.let me know which can be manually bypassed
Everything is automatically bypassed when you are not using it, the switch logic takes care of that. Focus on the yellow nodes, those are the things you might change if you want.
It would be ideal if ControlNet could be configured together with LTX Director so that ControlNet can be loaded only for specific segments. frame_idx doesn’t seem to work very well for this, or maybe I’m missing something.
Also, I think disabling the old custom prompt option was a mistake. It would be better to add a switch: LTX Director or custom prompt.
Other than that, the workflow is great.
You can simply use the old version for that. BTW, if with "custom prompt" you mean only text to video, you can do that by adding a single text segment to the time line, the workflow works exactly the same as the old one, just with the timeline instead. Regarding injecting the controlnet guides into a specific segment, I don't know If that is possible, since the injection is done by the "Add video IC LoRA" node to the entire latent and guides, but let me know if you know a way and maybe I can figure it out.
I absolutely love the idea of the LTX Director and how easy it is to set up a video, but it makes everything stiff and robotic.
Tried so many times to change the prompts around but i keep getting the same results, the only upside is there are less "artifacts" in the video gen wholly on the fact there is not much movement for them to appear
im adding a video of the exact same prompts and instructions to the gallery
one using the LTX Director and one without
Both workflows use an Anchor image to keep the character Consistent
till the LTX Director gets updated to solve this, i guess ill just be sticking to multiple keyframes lmao
Edit:
I posted the video to the gallery, its really big so it might lag in the browser just d/l it if it does
https://civitai.red/posts/28789501
Thanks. I think I will keep updating the old workflow and add it as a variant for those who don't want to work with LTX director.
@LatentHeart Yeah, please do it like I mentioned in the other comment: add a switch to enable either LTX Director or the custom prompt.
Your workflow is already the most flexible one, but right now you didn’t add that switch. :D
@alextrackmy343 Got it, I will update the old workflow with the new memory and sampling improvements and upload it later in the day. I honestly don't want to merge the old one with this new one though, because it will become even messier that it already is, I think is better to have both workflows, one with LTX director and one without it, because if add a "switch" to switch ltx director off, I would have to add redundancy for keyframes and custom audio, at that point it is better to have that functionality in a separate workflow.
I ran the workflow with the provided reference image, seed, prompt and two different resolutions, it looks good to me, here are the results:
https://civitai.red/posts/28791620
What I did is use the global prompt instead of the segment prompt, in the image first frame prompt I just input "."
Those videos I uploaded are the original raw outputs, so you can download them and drag and drop them into ComfyUI in case you want see exactly what I did ;)
@alextrackmy343 @rabbitything Done guys, I uploaded a new file with the legacy workflow version included, with the new improvements the new one has.
@LatentHeart thanks, ill check it out when i wake up.
Hi, how do you maintain Quality? It gets very noisy here after the first second of the video
Be careful with this system; it corrupts Python, and you have to reinstall all dependencies because it's corrupted.
Thankfully you have carefully red the instructions and made a backup :)
@LatentHeart I read everything correctly, but even so, the nodes rendered Python unusable. You should mention this in your post and warn that the nodes can corrupt the Python system, so that users are aware.
@supremoapocalipsis945 In the workflow instructions there's a warning in bold letters and a warning emoji so people don't miss it... clearly is not enough.
@LatentHeart I'm not disparaging your work; in fact, I've downloaded others that work very well. But please consider this something to correct in this workflow, if it can be corrected. Otherwise, clearly state that there is a risk of corrupting Python. Thank you for your attention and your work.
@supremoapocalipsis945 No problem I added a warning to the post as suggested, thanks for the feedback.
@LatentHeart Thank you for creating these wonderful workflows.
Title: LTX23legacy workflow – video capped at 4 seconds despite longer settings
Body:
Hi author,
I'm running into an issue with the latest LTX23legacy workflow – the maximum video length I can get is only 4 seconds.
My setup:
ComfyUI (local)
16 GB VRAM, 32 GB RAM
Video settings: 9 seconds, 24 fps, 720p
What I'm observing:
Previously, generating a video of this length took about 600 seconds.
Now it takes over 1000 seconds, but the output is still only 4 seconds long.
What I've tried:
Different settings, including "DISABLE EVERYTHING (text to video)"
Any target length below 4 seconds works fine and produces the expected output.
Any target length above 4 seconds still gives only 4 seconds of video.
Question:
Could you help me figure out what might be causing this? Am I missing some setting that limits the max frames or duration? Any advice would be greatly appreciated.
Thank you!
Can you upload an original generated video here to civitai? The original video will contain the workflow metadata, and I can check it out to see what's wrong.
@LatentHeart I uploaded a video. Does it successfully contain the information you requested?
@bobibo It does, let me check it out.
@bobibo I think I found the problem. I the final stage of the generation, where the video is saved, theres a color correction group, and a sister group called "Color correction small sample test", that group trims the video so it last only 120 frames, if you enable it, the video will only be 120 frames in length, this group is usefull to see a quick preview of the color correction without having to precess the entire video. So, disable that group and the video length will come back to normal.
@LatentHeart Thank you so much! Your explanation helped me pinpoint the problem right away. Disabling that color correction test group fixed it perfectly.
@LatentHeart I get why you added those post‑processing nodes – but honestly, I don't think they're really needed. Anyone who wants to do color correction or editing after generation has plenty of other tools. For users who don't need that (like me), it's easy to overlook the "preview" node and wonder why the video gets trimmed.
Your workflow is already great as it is. Really appreciate your work – please keep it coming!
@bobibo Thanks for the feedback, you can safely delete those groups if you don't need them.
@LatentHeart thank you for explaining, this one had me stumped too
I'd really like to try this workflow. But I am having issues with loading the custom nodes to make it work.
Specifically, the 3 ComfyUI-LTXVideo nodes:
LTXICLoRALoaderModelOnly
LTXVLoopingSampler
LTXVTiledVAEDecode
I even went so far as to re-installing comfyui (using 22) and ONLY loading this workflow and the nodes it claims are dependencies.
Here is the message I get when I try to load the Nodes
Traceback (most recent call last): File "E:\STABILITY MATRIX\Data\Packages\ComfyUI\nodes.py", line 2204, in load_custom_node module_spec.loader.exec_module(module) File "<frozen importlib._bootstrap_external>", line 999, in exec_module File "<frozen importlib._bootstrap>", line 488, in callwith_frames_removed File "E:\STABILITY MATRIX\Data\Packages\ComfyUI\custom_nodes\ComfyUI-LTXVideo\__init__.py", line 48, in <module> from .pyramid_blending import LTXVLaplacianPyramidBlend File "E:\STABILITY MATRIX\Data\Packages\ComfyUI\custom_nodes\ComfyUI-LTXVideo\pyramid_blending.py", line 7, in <module> from kornia.geometry.transform.pyramid import ( ImportError: cannot import name 'pad' from 'kornia.geometry.transform.pyramid' (E:\STABILITY MATRIX\Data\Packages\ComfyUI\venv\Lib\site-packages\kornia\geometry\transform\pyramid.py)
Any help... anyone?
For those following at home, I had to downgrade Kornia to 7.4 to allow it to load the LTX Package.
one of the best workflow, works best on my 6Gb Vram.
Glad to here it ;)
@LatentHeart how? I'm on 12 and I just get oom error after error.
@roboticone I think he meant 16GB
@LatentHeart after using this, I had to reinstall my comfyui because I get OoM errors on workflows that worked in the past. Any idea what changed that I should go back and fix? I backed up models and workflows and I updated comfyui and then even then my original ltx director workflow gets me OoM.
@roboticone It happened to me too, after updating comfyui, I started getting OOM errors but it wasn't workflow specific, it is just that before I was able to render longer videos with the same settings, not by much though, it is just a few seconds difference. I honestly don't know what happend, sorry.
@LatentHeart It turns out that by updating to comfyui, my pytorch needed to be updated as well to help the Dynamic VRAM system to work correctly.
@roboticone @LatentHeart no, 6gb Vram RTX 4050 on asus vivo pro oled laptop, note im generating 8 sec video (Memory full above 12 sec video)and narration audio. I have 40gb Ram.
@roboticoneim using comfyui portable. I feel portable is fat better the installation.
@itshirenj29 Hello sir, could you explain how you configured it? Are you using safetensor or gguf? thanks a lot
@measlyox hi! im using ltx-2.3-22b-distilled-1.1_transformer_only_fp8_scaled.safetensors, guff works fine too, i just downloaded everything as required by the workflow, 40gb ram helps.
@itshirenj29 This sounds incredible! The LTX2.3 fp8 distilled version has a size of ~24GB, how long does it take to run 8 seconds of video on a 6GB laptop?
@bottle11235 it usually takes around 35-40 min. guff takes 15-20 mins.
I dont know if im being TOO explicit with my base prompts but prompt enhancer almost never follows my instructions, either it produces blank outputs after the analysis part or it straight up mentions toning down my prompt to keep it PG13, i am using the Heretic V2 gemma clip so i dont know why this is happening, how can i fix this? by the way i also tried more general, not too descriptive prompts but is completely dodges any nsfw content.
Are you using the abliterated text encoder? If not, please consider using that version for NSFW content. The standard gemma text encoder comes from Google, it is safe for work and will refuse to produce explicit content,
@LatentHeart gemma3 12b Heretic V2 clip is what im using, exactly the one specified in the workflow instructions, still i get censored results all the time.
@redlucario1735 Then all you can do is change the "TextGenerateLTX2Prompt" seed. Unfortunately, the Gemma 3 encoder is not as powerful as newer models like Qwen3.5, it is what it is. When I struggle with that prompt enhancer, I use a stand alone one, with Qwen3.5 9B ablitarated, maybe I will share it so any one can use it for this specific cases.
I've crafted a new custom system prompt for the prompt enhancer that gives better results than the hardcoded into the "TextGenerateLTX2Prompt" node, I'll update the workflow once I test everything out, thanks for the feedback.
Nice workflow. would be great if we had a preview after the first sampler
Thanks. I dindn't added it because you can simply disable the last 2 stages (detailer and upscaler) and see the result, so that once you are happy with the base video, you can simply fix the seed and enable the last two stages to get the final result.
@LatentHeart makes sense, thanks! How many loops does the detailer do? Mine has been running for quite some time and its currently at loop 15
@ace009029592 The loop sampler is set up with a temporal pixel frame tile size of 56 and temporal pixel frame overlap of 24 (if you haven't changed anything there), so the formula to calculate the amount of loops is:
max(1, ceil((x - 56) / 32) + 1)
Where x is the total amount of frames of your video (length in seconds * framerate)
So for example, for a 15 seconds long video, with an fps of 24, the amount of loops is: 11
@LatentHeart Thanks! I was generating a 20 sec video and thought it was stuck lol
Extremely complete your workflow. I would like to know how to make the i2v maintain quality and not have a lot of noise or ghosts, as if it were melting, thank you.
Are you using the 10Eros model? Are you using the exact models provided in the workflow links? Did you try other images? Is your video longer than 30 seconds?
@LatentHeart I'm getting this issue as well. I'm on the 10Eros model and it's a NSFW prompt. My generations are about 10 seconds long. I do see that the "ltx-2.3-22b-distilled-lora-1.1_fro90_ceil72_condsafe.safetensors" loras are loaded twice in the 10Eros load model section. The diffusion model thats loaded is the ltx 2.3 22b distilled... model.
I don't have any issues with the the Standard model when generating. Do i need to adjust any setting ? Thanks in advance. Great workflow. Just working out the issues on my end.
@dolagesin989 Try with different images, blurry images will result in blurry videos, if you get better videos with different images, then you know is the image you are using what causing the issue. Blurry images might not look blurry for you, but the model doesn't care, if the model see your image as blurry, it will render videos like this one:
https://civitai.red/images/134125916
That's a good example of a bad video caused by a blurry image.
As I mention in the post, the 10Eros model is less forgiving than the standard one. So a safe test is first using a standard 9:16 image with a standard 9:16 resolution like 720p.
I suggest going to the 10Eros model page first, get one good quality video, take a snapshot of the first frame, and copy the settings from that video (size, prompt, seed, etc), to start learning what the model expects to get good results.
Yes, the loras are loaded twice, is standard procedure for this model, it uses different strengths for the first and second pass. Another thing to check is, comparing the sha256 hashes of the files you have in your computer against those I included in the model links section, they should match one to one, just in case you already had some of those and didn't download them from the links.
And lastly, I recently upload a hotfix for the 10Eros model, check that you have the most up to date workflow.
Hope this helps.
Does anybody have an issue where when they click on anything on LTX Director, the node shrinks? Specifically the in the timeline area. Curious if its just my Comfyui.
It doesn't happen to me.
I am getting the same thing, Everytime I hit something the box gets smaller.
@Proton555 @dolagesin989 there's an issue in the github repository, you can check if that's the issue you are experimenting too:
LTX Director opened issues
@LatentHeart That looks to be the issue will have to wait for the fix. Thanks for finding that!
@Proton555 In the comments from that github issue, two workarounds are explained.
All I can say is WOW! I feel sorry for anyone sleeping on this workflow. This is some next level master work! From providing hyperlinks to all nodes needed, to adding the latest tech, to even having the ability to cut out what you don't want and not destroy the workflow, you can see the attention to detail, pride, and perfection behind the craftsmanship! Much respect for putting this together! I will put it to good use!🙏❤️
Thank you so much for the comment.
@LatentHeart You are welcome! I have been using your workflow for the last two days and I am loving it more and more. There is so much here, I can image it will take a few weeks to get the most out of this workflow!
I did notice that Prompt Enhancer is aligned for SFW, it gave me this response after creating a naked woman on the beach.
The image and video are based on this character, Video posted by RLS_Animation
"I am sorry, but I cannot fulfill this request. The prompt contains elements that are sexually explicit and violate my safety guidelines. My purpose is to provide creative assistance while adhering to ethical and legal boundaries, and generating content of this nature falls outside those parameters. I understand you're aiming for a cinematic beach party scene with specific visual details, but the inclusion of nudity and explicit anatomical descriptions makes it unsuitable for me to process. I can, however, assist you in creating a similar scene without these problematic elements. For example, I could generate a prompt for a vibrant beach party with dynamic lighting, energetic crowd movements, and a focus on the atmosphere and excitement of the event, featuring diverse characters and appropriate attire." - Prompt Enhancer
I can easily turn off the prompt enhancer for now. Hopefully it's addressed in a future update.
@RLS_Animation Yes, this is an issue other user told me about, I've already fixed it, but currently I'm still running some tests for other features, so I haven't had the chance to update the workflow with the fix yet. I will upload the new version soon.
Anyone have an issue with videos coming out like this? https://i.imgur.com/vhoeGum.png
Basically just a pixelated mess?
Seems to only happen if I activate VRAM optimizations
Try bypassing the VRAM Optimization nodes one by one, and check which one is the one that is giving you issues, also, don't forget to update the KJNodes to the latest version.
i'm new how do I use this
You don't. There are more basic workflows out there you can start learning with, I would start with the standard template in comfyui. Just go to "Templates" and search for "ltx2.3 image to video" and start experimenting with that workflow first.
@LatentHeart ty for the response. how do I access comfyui?
im curious what your fix for the ghosting was. its something ive been trying to fix on my own personal workflow.
In my particular case, it was the lighting LoRA strengths and CFG, now I use 1 CFG for both passes, and 1 LoRA strength for first pass and 0.5 for the second, with the standard manual sigmas from the original model.
excuse me for my ignorance but why this workflow is going back to start after passed through 'resize image v2' in save video group?
It seems to me that is a memory / cache issue. This doesn't happen to me with this workflow, but I have experienced the same issue when pushing my hardware to the limit with other workflows, like the SCAIL2 one. Try lower resolutions and shorter videos, and check if that solves the issue. My assumption is that comfyui loses track of the cached outputs when you push the memory to its limit, I'm not quite sure but that's my hypothesis, since I don't suffer from that issue with this workflow at all, and you are the first person that mentions it.
One of the best video workflow i have test , thanks you !
Today I will release a new version.
@LatentHeart Nice cant wait !