LTX Director en ComfyUI: Probé el Nuevo Nodo de Timeline y Encontré 2 Bugs Reales
Cuando descubrí que podía generar vídeos con control granular de timeline en ComfyUI sin salir de mi máquina local, pensé que había encontrado la herramienta definitiva. LTX Director, un custom node comunitario del pack WhatDreamsCost-ComfyUI, promete exactamente eso: control segmento por segmento mediante bloques de prompt en una línea de tiempo visual. Descargué un workflow, lo cargué… y nada funcionó. No fue un error menor: fueron 5 errores de validación simultáneos que me llevaron a investigar el historial de git del repositorio.
Lo que encontré fue educativo: una rotura de compatibilidad de versión documentada, un bug real de lógica en el código Python, y finalmente, un vídeo de 9.9 segundos completamente funcional de un astronauta caminando en Marte. Este artículo documenta exactamente qué salió mal, por qué, y cómo lo resolví—información crítica si usas LTX Director o workflows comunitarios en ComfyUI.
De un vistazo: Qué Necesitas Saber Sobre LTX Director
| Aspecto | Detalle |
|---|---|
| Nodo | LTX Director (WhatDreamsCost-ComfyUI) |
| Modelo base | LTXV-2.3 distilled (optimizado para bajo VRAM) |
| VRAM mínimo | 24GB (RTX 3090); 8GB con optimizadores |
| Generación de audio | Automática, sincronizada con vídeo |
| Modo timeline | Múltiples segmentos con prompts independientes |
| Bugs encontrados | 2 reales (versión + prompt vacío) |
| Tiempo de generación | ~10 minutos para 9.9s @ 30fps |
¿Qué es LTX Director en ComfyUI?
LTX Director es un nodo todo-en-uno del pack WhatDreamsCost-ComfyUI que permite generar vídeos con múltiples modos de operación:
- Texto a vídeo simple: un prompt global que controla todo el vídeo
- Texto a vídeo con timeline: múltiples bloques de prompt encadenados en una línea de tiempo visual para transiciones entre escenas
- Imagen a vídeo con referencias: varias imágenes de referencia que guían la generación
- Lip sync automático: sincronización de labios integrada
- Cortometrajes completos: combinación de todos los modos anteriores
El nodo está diseñado sobre el modelo LTXV-2.3 distilled (versión optimizada para bajo consumo de VRAM), lo que significa que puede funcionar en GPUs como la RTX 3090 con 24GB. El pack WhatDreamsCost en GitHub tiene más de 1600 estrellas, así que no es un experimento marginal.
💡 Consejo: Lo que diferencia a LTX Director es el control de timeline: en lugar de generar un vídeo monolítico, divides el contenido en segmentos y escribes prompts diferentes para cada uno. Esto permite narrativas complejas sin edición posterior.
👉 Conclusión rápida: LTX Director es un nodo comunitario maduro que trae control de timeline profesional a ComfyUI, pero requiere entender sus particularidades de compatibilidad y diseño.
Bug #1: Incompatibilidad de Versión Entre Workflows y Código
Aquí comenzó el drama real.
Descargué el workflow JSON de un vídeo publicado el 31 de mayo de 2026. Lo cargué en ComfyUI después de clonar el repositorio WhatDreamsCost-ComfyUI el 3 de julio de 2026. ComfyUI mostró 5 errores de validación específicos:
- ‘Value 0 smaller than min of 1’ en el parámetro
divisible_by - ‘Failed to convert an input value to a FLOAT value’ porque
frame_raterecibía el string'frames'en lugar de un número - ‘Failed to convert an input value to a INT value’ porque
custom_widthrecibíaNone - ‘Value not in list’ porque
display_moderecibía1600(fuera de rango) yresize_methodrecibía18 - ‘Return type mismatch between linked nodes’ porque
frame_rateesperabaFLOATpero recibíaMOTION_GUIDE_DATA
Estos no eran errores de usuario: eran errores de esquema de widget.
Causa Raíz: Cambio de Esquema en LTXV-2.3 Timeline Control
Investigué el historial de git del repositorio y encontré la causa exacta: el commit 9e34173 titulado ‘LTX Director 2.0 Update’ (20 de junio de 2026) cambió el esquema completo de widgets del nodo LTXDirector. Añadió campos nuevos, reordenó otros, y cambió los tipos de datos esperados. El workflow fue grabado el 31 de mayo—tres semanas antes de esa actualización.
Solución: Restaurar a Versión Compatible
Ejecuté:
git checkout e4db1fc -- .
Este commit, titulado ‘v1.3.3 Fixed errors due to audio encoding. Fixed minor widget issue.’ (15 de mayo de 2026), era la última versión compatible con el workflow JSON guardado. Después, el mismo workflow cargó sin errores de validación.
⚠️ Importante: Los workflows JSON de ComfyUI son frágiles ante cambios de esquema en nodos comunitarios. Si descargas un workflow de YouTube, verifica que la fecha del vídeo y el último commit del nodo sean cercanas (máximo 2-3 semanas).
👉 Conclusión rápida: Alinear fechas es tu mejor defensa contra incompatibilidades de versión.
Bug #2: El Prompt Vacío Que No Existía
Con el nodo compatible cargado, intenté generar un vídeo usando solo el campo global_prompt (modo más simple, sin crear bloques en el timeline). El workflow comenzó a ejecutarse, pero falló con:
ValueError: There is a segment on the timeline missing a prompt!
Aquí estaba el problema: no había creado ningún segmento. ¿Por qué se quejaba de un segmento vacío que no existía?
Causa Raíz: Lógica de Split en Python
Abrí el código fuente Python del nodo (ltx_director.py) y encontré la culpable en la función _encode_relay:
local_prompts.split('|')
Cuando local_prompts es una cadena vacía (''), la función split() en Python devuelve una lista con un elemento vacío: ['']. El código iteraba sobre cada elemento buscando prompts vacíos, y ese elemento vacío individual disparaba la excepción.
No había ningún “segmento” real conceptualmente, pero el código interpretaba la cadena vacía como un segmento con prompt vacío.
Solución: Añadir Bloque de Texto Explícitamente
La solución es añadir explícitamente al menos un bloque de texto en el editor visual del timeline, incluso si tu intención es usar solo el prompt global de forma simple. Para automatizar esto, necesitas invocar los métodos internos del editor de timeline en JavaScript:
timelineEditor.addTextSegmentFreeSpace();
// Asignar el prompt al segmento
// Llamar a commitChanges()
global_prompt sí se pudo asignar directamente como valor del widget sin problema. Fue específicamente local_prompts y segment_lengths lo que solo se escribía correctamente al pasar por la lógica propia del editor de timeline (crear segmento + commitChanges()); asignar esos dos campos directamente, saltándose el editor, no surtía efecto.
📌 A tener en cuenta: Algunos nodos comunitarios tienen estado visual (el timeline) desincronizado del JSON subyacente. Manipular solo el JSON no es suficiente; necesitas interactuar con la interfaz visual.
👉 Conclusión rápida: El estado visual y el JSON deben estar en sintonía.
Configuración de Hardware y Modelos
Para esta prueba de texto a vídeo con audio en ComfyUI usé:
| Componente | Especificación |
|---|---|
| GPU | NVIDIA RTX 3090 (24GB VRAM) |
| Modelo de vídeo | ltx-2.3-22b-distilled-1.1_transformer_only_mxfp8_block32.safetensors |
| Encoder de texto | gemma-3-12b-it-IQ4_XS.gguf (cuantizado 4 bits) |
| VAE de vídeo | LTX23_video_vae_bf16.safetensors |
| VAE de audio | LTX23_audio_vae_bf16.safetensors |
| Proyección de texto | ltx-2.3_text_projection_bf16.safetensors |
Estos son los mismos modelos de pruebas anteriores de LTXV-2.3, así que no fue necesario descargar nada nuevo.
El Workflow Exacto Que Funcionó
El flujo completo fue:
- DiffusionModelLoaderKJ → Carga el modelo distilled mxfp8
- DualCLIPLoaderGGUF → Carga el encoder de texto Gemma
- VAELoaderKJ + LTXVAudioVAELoader → Cargan ambos VAEs
- LTXDirector → Nodo central, con
global_prompt+ un segmento de timeline - LTXDirectorGuide → Genera la guía de movimiento
- LTXVConditioning → Prepara el conditioning
- RandomNoise + CFGGuider + KSamplerSelect (euler_ancestral) + BasicScheduler (linear_quadratic, 8 pasos) → Muestreo
- SamplerCustomAdvanced → Ejecución del sampler
- LTXVSeparateAVLatent → Separa vídeo y audio
- VAEDecodeTiled (vídeo) + LTXVAudioVAEDecode (audio) → Decodificación
- LTXVConcatAVLatent → Reconexión de vídeo y audio
- VHS_VideoCombine → Exportación final
Usé valores por defecto: CFG 1.0, seed fijo en 12.
🏗️ Workflow: LTX Director (astronauta en Marte, texto a vídeo con audio)
Captura real del grafo en ComfyUI v0.27.0, con el nodo LTX Director, el editor de timeline y el historial de trabajos mostrando la generación completada (604.93s).
El Prompt y Los Resultados
Prompt global:
“A lone astronaut walks across a vast red Martian desert at sunset, dust swirling around the boots, distant rocky mesas silhouetted against an orange sky, cinematic wide shot”
Resultados de generación:
| Parámetro | Valor |
|---|---|
| Resolución | 1600x896 |
| Framerate | 30 fps |
| Duración | 9.9 segundos |
| Audio | AAC sincronizado (generado automáticamente) |
| Tiempo de ejecución | 10 minutos 4 segundos (604.93 segundos) |
| Calidad visual | Coherente y cinematográfica |
La escena mostró al astronauta caminando hacia el sol con polvo levantándose tras las botas y mesetas rocosas de fondo. El audio se generó automáticamente sin necesidad de un paso separado—a diferencia de LTXV-2.3 estándar, donde el audio es opcional.
Vídeo real generado con este workflow exacto: astronauta cruzando el desierto marciano al atardecer, con audio sincronizado.
💡 Consejo: LTX Director genera vídeo y audio sincronizados en un solo paso, reduciendo la complejidad del workflow respecto a LTXV-2.3 estándar.
👉 Conclusión rápida: La sincronización automática ahorra pasos y tiempo de configuración.
Limitaciones de Esta Prueba
Esta prueba utilizó el modo más simple de LTX Director: un único segmento, texto-a-vídeo puro. No probé los casos de uso diferenciadores del nodo:
- Múltiples bloques de texto encadenados en el timeline para controlar transiciones entre escenas
- Imagen-a-vídeo con múltiples imágenes de referencia
- Lip sync automático
- Cortometrajes completos
Estos son precisamente los modos que hacen especial a LTX Director ComfyUI según la comunidad. Quedan como pruebas de seguimiento pendientes.
Preguntas Frecuentes Sobre LTX Director en ComfyUI
P: ¿Por qué falla el workflow de LTX Director descargado de un vídeo de YouTube?
R: Muy probablemente por una incompatibilidad de versión del custom node. El nodo LTX Director (repo WhatDreamsCost-ComfyUI) tuvo una actualización 2.0 el 2026-06-20 que cambió el esquema de widgets, rompiendo la compatibilidad con workflows guardados antes de esa fecha. Comprueba la fecha de publicación del vídeo y, si es anterior, fija el custom node a un commit previo a esa actualización.
P: ¿Por qué da error ‘There is a segment on the timeline missing a prompt!’ si no he creado ningún segmento?
R: Es un bug real del nodo: cuando el campo local_prompts está vacío, el código Python hace local_prompts.split('|'), que sobre una cadena vacía devuelve una lista con un elemento vacío, y esa entrada dispara la validación de ‘segmento sin prompt’. La solución es añadir explícitamente al menos un bloque de texto en el timeline (botón ‘Add Text’), aunque solo quieras usar el prompt global.
P: ¿LTX Director genera audio automáticamente?
R: Sí, si conectas un Audio VAE al nodo (LTXVAudioVAELoader en este workflow). El audio sale sincronizado con el vídeo sin necesidad de un paso de generación de audio por separado.
P: ¿Necesito descargar modelos nuevos para usar LTX Director, o funciona con LTXV-2.3 estándar?
R: Funciona con los mismos modelos de LTXV-2.3 que ya tengas descargados. No necesitas nada adicional. El nodo es un wrapper que organiza el flujo de generación de una manera diferente, pero usa el mismo modelo base.
P: ¿Cuánta VRAM necesito para ejecutar LTX Director?
R: Con la versión distilled mxfp8, 24GB es suficiente en una RTX 3090. Se reporta que funciona incluso en 8GB con optimizadores de VRAM, aunque no ha sido verificado en esta prueba.
Sigue leyendo
Para la prueba original de LTXV-2.3 distilled sobre la que se construye este workflow, consulta nuestra guía de LTXV-2.3 + RTX Super Resolution. Si tienes curiosidad por cómo se comporta el mismo modelo sin distillation, nuestra investigación del OOM en el modelo dev de LTXV-2.3 documenta un crash reproducible en este mismo hardware. Y si la cuantización GGUF del text encoder gemma usado aquí no te resulta familiar, nuestra guía de GGUF en ComfyUI explica los conceptos básicos.
Conclusión: Una Herramienta Poderosa Con Puntos De Fricción Educativos
🏆 Nuestra recomendación
Si buscas generar vídeos con control de timeline en ComfyUI sin depender de servicios en la nube → LTX Director es tu herramienta. Ofrece control granular, generación de audio integrada, y funciona en hardware de consumidor.
Si priorizas compatibilidad total con workflows existentes → Verifica que la fecha del vídeo de origen y el commit más reciente del repositorio estén alineados (máximo 2-3 semanas de diferencia).
LTX Director es una herramienta genuinamente útil para quien quiera generar vídeos con control de timeline en ComfyUI sin depender de servicios en la nube. Los bugs que encontré no son defectos de la herramienta en sí, sino consecuencias naturales del desarrollo iterativo de nodos comunitarios: cambios de esquema que rompen compatibilidad hacia atrás, y decisiones de diseño que requieren sincronización entre estado visual e interno.
Lo importante es que ambos bugs fueron resolubles una vez que entendí el porqué. El vídeo generado fue de calidad cinematográfica en menos de 11 minutos en una GPU de consumidor.
Si trabajas con ComfyUI y generas vídeos regularmente, vale la pena explorar LTX Director y sus soluciones, pero con la expectativa de que tendrás que investigar un poco si algo no funciona a la primera.
Tu siguiente paso: clona el repositorio WhatDreamsCost-ComfyUI, verifica la fecha del commit más reciente, y si planeas usar un workflow de un vídeo, asegúrate de que ambas fechas estén alineadas. Luego, intenta el modo de timeline con múltiples segmentos—ese es donde LTX Director brilla realmente.
Siguientes pasos en ComfyUI
Primeros pasos
Preguntas frecuentes
- ¿Por qué falla el workflow de LTX Director descargado de un vídeo de YouTube?
- Muy probablemente por una incompatibilidad de versión del custom node. El nodo LTX Director (repo WhatDreamsCost-ComfyUI) tuvo una actualización 2.0 el 2026-06-20 que cambió el esquema de widgets, rompiendo la compatibilidad con workflows guardados antes de esa fecha. Comprueba la fecha de publicación del vídeo y, si es anterior, fija el custom node a un commit previo a esa actualización.
- ¿Por qué da error 'There is a segment on the timeline missing a prompt!' si no he creado ningún segmento?
- Es un bug real del nodo: cuando el campo local_prompts está vacío, el código Python hace local_prompts.split('|'), que sobre una cadena vacía devuelve una lista con un elemento vacío, y esa entrada dispara la validación de 'segmento sin prompt'. La solución es añadir explícitamente al menos un bloque de texto en el timeline (botón 'Add Text'), aunque solo quieras usar el prompt global.
- ¿LTX Director genera audio automáticamente?
- Sí, si conectas un Audio VAE al nodo (LTXVAudioVAELoader en este workflow). El audio sale sincronizado con el vídeo sin necesidad de un paso de generación de audio por separado.