🦊LTX-2
🏠 | 🦊雑に学ぶComfyUI
👈 | 🦊LTX-Video
👉 | 🦊LTX-2.3
整えたやつnomadoor.icon
https://comfyui.nomadoor.net/ja/basic-workflows/ltx-2/
LTX-2
参考
https://docs.ltx.video/open-source-model/usage-guides/prompting-guideプロンプトガイド
https://docs.ltx.video/open-source-model/getting-started/overviewLTX-2公式Doc
https://github.com/Lightricks/ComfyUI-LTXVideo/tree/master/example_workflowsLightricks/ComfyUI-LTXVideo/example_workflows
https://blog.comfy.org/p/ltx-2-open-source-audio-video-aiComfy.Org blog
推奨設定値
解像度
640×640(1:1)
768×512(3:2)
704×512(4:3)
※後処理で2倍にアップスケールするので、実際の出力は1280×1280になる
32の倍数である必要がある
FPS
24/25/30
フレーム
最大:257 frames(25fpsで約10秒)
推奨:121–161(品質とメモリのバランス)
8n+1になる必要がある
モデルのダウンロード
checkpoints (VAE同梱)
https://huggingface.co/Lightricks/LTX-2/blob/main/ltx-2-19b-dev-fp8.safetensorsltx-2-19b-dev-fp8.safetensors
latent_upscale_models
https://huggingface.co/Lightricks/LTX-2/blob/main/ltx-2-spatial-upscaler-x2-1.0.safetensorsltx-2-spatial-upscaler-x2-1.0.safetensors
loras
https://huggingface.co/Lightricks/LTX-2/blob/main/ltx-2-19b-distilled-lora-384.safetensorsltx-2-19b-distilled-lora-384.safetensors
text_encoders
https://huggingface.co/Comfy-Org/ltx-2/blob/main/split_files/text_encoders/gemma_3_12B_it_fp8_scaled.safetensorsgemma_3_12B_it_fp8_scaled.safetensors
gguf (任意)
https://huggingface.co/QuantStack/LTX-2-GGUF/tree/main/LTX-2-devQuantStack/LTX-2-GGUF (完全対応はされてない)
code:models
📂ComfyUI/
└── 📂models/
├── 📂checkpoints/
│ └── ltx-2-19b-dev-fp8.safetensors
├── 📂latent_upscale_models/
│ └── ltx-2-spatial-upscaler-x2-1.0.safetensors
├── 📂loras/
│ └── ltx-2-19b-distilled-lora-384.safetensors
├── 📂text_encoders/
│ └── gemma_3_12B_it_fp8_scaled.safetensors
└── 📂unet/
└── LTX-2-dev-XXXX.gguf ← gguf を使う場合のみ
workflow目次
🦊LTX-2#695e0d810000000000361eeftext2video
🦊LTX-2#695e19aa0000000000361efdtext2video 8ステップ
以下全部8ステップ
🦊LTX-2#695e18580000000000361ef6imaeg2video
🦊LTX-2#695f8b5e0000000000df57a7audio2video
🦊LTX-2#695f8b600000000000df57a9audio-image2video
🦊LTX-2#695f35860000000000ef79b1IC-LoRA (Pose)
🦊LTX-2#697d74a80000000000dce1bdIC-LoRA Union (Depth)
🦊LTX-2#695f36440000000000ef79bbIC-LoRA (Pose) + image2video
🦊LTX-2#695f58cb0000000000ebc802IC-LoRA (Detailer)
text2video
https://gyazo.com/b6df8e98ae7d7337f2f32a65a10661d3
LTX-2_text2video.json
LTX-2_text2video_V2.json
SDXLのように、低解像度で作ったものを、専用のモデルでアップスケール(2倍)するカスケード型
左: text2video
ややこしいがLTXVConditioningノードを挟む以外はSamplerCustomノードを使った普通の動画生成の形
動画だけでなく音声も同時に生成するため、それぞれ空のlatentを作り🟫LTXVConcatAVLatentノードで連結する作業が必要
右: アップスケール
1. 出力された動画(latent)を二倍にアップスケール
spatialノードに動画latentとアップスケールモデルを接続
spatialなんていう名前のノードはない。正しくはLTXVLatentUpsamplerノードnomadoor.icon
だからノードの表示名変えるの嫌なんだ…
ちなみにLTX-2にはフレーム数を二倍にするtemporal upscale modelもあるが、ComfyUIには実装されていない?
temporal upscale モデルを使えば勝手にフレーム補完の動作になるnomadoor.icon
2. video2video
アップスケールの方では4~8stepで生成できるようになるdistilled-loraを併用して、スピードアップする
CFG蒸留もされているのでCFGは 1.0 に
σがマニュアル値なので分かりにくいが、Simple Scheduler の denoise ≈ 0.47 くらいに設定されている
text2video 8ステップ生成 (w/distilled lora)
text2videoの方にも、distilled-loraを適用して8ステップで生成する
https://gyazo.com/aa18f5b7bb97ae164002fdef187f5790
LTX-2_text2video_distilled.json
LTX-2_text2video_distilled_V2.json
左: text2video
Distilled LoRAを適用
stregthはhttps://docs.ltx.video/open-source-model/getting-started/overviewLTX-2公式Docに従い0.6
CFGは1.0に
LTXVSchedulerノードでは無く🦊BasicSchedulerノードを使う
なぜかこちらのほうが綺麗に生成できるnomadoor.icon
右: アップスケール
上と全く同じ
比較
ノーマル | w/distilled lora
https://gyazo.com/9524b966ab1d4b7b1ccbcf78e34552a9https://gyazo.com/2a89cce32669413fb7f5b3fe4ca22960
ノーマル
https://gyazo.com/7c425e911ab1618258f4883d3177fd64
w/distilled lora
https://gyazo.com/9323623c0e250003ebc07d87b6fcb7a3
distilledのほうが安定しているような気がしなくもないnomadoor.icon
ので以降全部8ステップ適用した状態のworkflow↓
image2video
https://gyazo.com/3ceb9e3b3fdbdf7e2187e709fe8022d7
LTX-2_image2video_distilled.json
LTX-2_image2video_distilled_V2.json
text2videoに🟩部分を追加する
https://gyazo.com/d068c7287fbe9dc0e164542b5d423bd7
0. 画像読み込み
1. 1MPにリサイズ
2. 32の倍数になるようにクロップ
3. EmptyLTXVLatentVideoの解像度を設定
3.1 あとで二倍にアップスケールするので、画像を半分にリサイズ
3.2 その画像サイズを取得して、入力
4. LTXVPreprocess
🦊LTX-Video(0.98)からの特徴で、LTXVは綺麗すぎる画像をI2Vに使うとうまく動かないので、少し劣化させる
5. その画像をLTXVImgToVideoInplaceに入力
video latent に対して、1フレーム目に入力画像を差し込む
https://gyazo.com/f1878afbef8827ba5d6d70aee609c0e0
audio2video
音声を入力し、それにシンクロするような動画を生成する
https://gyazo.com/5f4301951dfc2a62f0feaec21aed425c
LTX-2_audio2video_distilled.json
LTX-2_audio2video_distilled_V2.json
単に音声をエンコードしたものをaudio_latentに入力する
Set Latent Noise Maskを追加するworkflowを見かけることがある
多分audio2audioをやっていることになってしまうため?こうやっているんだと思うけど、あってもなくても同じ動画が生成されるnomadoor.icon
🚨音声の長さが生成する動画の長さより短い場合、ただのtext2videoになるので注意
無音でもいいので余計に長くしておく必要がある
https://gyazo.com/efe939505c195441cda8cc51a8019fd7
audio-image2video
image2videoとaudio2videoを組み合わせるだけ
https://gyazo.com/c07d99d56bef862ed590ea351e2d9b22
LTX-2_audio-image2video_distilled.json
LTX-2_audio-image2video_distilled_V2.json
IC-LoRA
VACEのように、ポーズや深度マップから動画を作ります
LoRAモデルのダウンロード
loras
https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Canny-Control/blob/main/ltx-2-19b-ic-lora-canny-control.safetensorsltx-2-19b-ic-lora-canny-control.safetensors
https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Depth-Control/blob/main/ltx-2-19b-ic-lora-depth-control.safetensorsltx-2-19b-ic-lora-depth-control.safetensors
https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Detailer/blob/main/ltx-2-19b-ic-lora-detailer.safetensorsltx-2-19b-ic-lora-detailer.safetensors
https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Pose-Control/blob/main/ltx-2-19b-ic-lora-pose-control.safetensorsltx-2-19b-ic-lora-pose-control.safetensors
https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Union-Control/blob/main/ltx-2-19b-ic-lora-union-control-ref0.5.safetensorsltx-2-19b-ic-lora-union-control-ref0.5.safetensors
code:models
📂ComfyUI/
└── 📂models/
└── 📂loras/
├── ltx-2-19b-ic-lora-canny-control.safetensors
├── ltx-2-19b-ic-lora-depth-control.safetensors
├── ltx-2-19b-ic-lora-detailer.safetensors
├── ltx-2-19b-ic-lora-pose-control.safetensors
└── ltx-2-19b-ic-lora-union-control-ref0.5.safetensors
IC-LoRA (Pose)
https://gyazo.com/e87ed3c369e8e0ed2473bffac25ec966
LTX-2_IC-LoRA(Pose)_distilled.json
LTX-2_IC-LoRA(Pose)_distilled_V2.json
🟦部分
LTXVAddGuideノードを追加し、OpenPose等で作った棒人間画像を入力する
strengthは1.0固定
その他はリサイズ処理
https://gyazo.com/ba07959b5807a8d7254255a30697f34b
IC-LoRA Union (Depth)
https://gyazo.com/0fb3dfaaef6853aa77c3a15a89cfec09
LTX-2_IC-LoRA-Union(Depth)_distilled.json
制御画像は生成動画の半分の解像度のものを使う
LTXVAddGuideノードは勝手に同じサイズにリサイズしてしまうため、🅛🅣🅧 Add Video IC-LoRA Guideノードを使う必要がある
latent_downscale_factorには 2.0(つまり半分)が入力される
🅛🅣🅧 IC-LoRA Loader Model Onlyノードは別に使わなくてもいいが、適切なlatent_downscale_factorが出力される
https://gyazo.com/b9daae2bc559f9132a837a2299a44b48
IC-LoRA (Pose) + image2video
https://gyazo.com/641c1ae330f7f684103aabe121d5edd1
LTX-2_IC-LoRA(Pose)_image2video_distilled.json
LTX-2_IC-LoRA(Pose)_image2video_distilled_V2.json
🟩image2videoのパーツをくっつける
reference2videoではないため、動かす画像は、ポーズ画像と同じポーズ・構図である必要がある
別途ControlNetや、Qwen-Image-Editなんかで作る
https://gyazo.com/f580b5e68fc33f5f34787fadcc01d36c
IC-LoRA (Detailer)
動画修復をする
🪢カスタムノード
https://github.com/Lightricks/ComfyUI-LTXVideoComfyUI-LTXVideo
https://gyazo.com/bfae276aad1df7f61c4ce1bf3a22d30f
LTX-2_IC-LoRA(Detailer).json
LTX-2_IC-LoRA(Pose)_distilled_V2.json
🟦先に動画を出力したいサイズにリサイズ
基本的には🟪detailer LoRAを適用してvideo2videoを行うだけ
distilled loraを使っていないが3ステップで生成する
detailer loraにステップ蒸留組み込まれてるのかな?わからないnomadoor.icon
SamplerCustomの代わりに🅛🅣🅧 LTXV Looping Samplerノードを使う
これはUltimate SD Upscalerのように、空間・時間をタイリングしてサンプリングするのでVRAMを節約できる
このworkflowでは時間方向にしかタイリングしていない
https://gyazo.com/88bc81a63caee73d471378717b8e8c56https://gyazo.com/2cc2f84329cc043b1554b9e2c320e551
GGUF
モデルのダウンロード
latent_upscale_models
https://huggingface.co/Lightricks/LTX-2/blob/main/ltx-2-spatial-upscaler-x2-1.0.safetensorsltx-2-spatial-upscaler-x2-1.0.safetensors
loras
https://huggingface.co/Lightricks/LTX-2/blob/main/ltx-2-19b-distilled-lora-384.safetensorsltx-2-19b-distilled-lora-384.safetensors
text_encoders (gguf)
https://huggingface.co/unsloth/gemma-3-12b-it-GGUF/tree/mainunsloth/gemma-3-12b-it-GGUF
https://huggingface.co/Kijai/LTXV2_comfy/blob/main/text_encoders/ltx-2-19b-embeddings_connector_dev_bf16.safetensorsltx-2-19b-embeddings_connector_dev_bf16.safetensors
unet
https://huggingface.co/QuantStack/LTX-2-GGUF/tree/main/LTX-2-devQuantStack/LTX-2-GGUF
vae
https://huggingface.co/Kijai/LTXV2_comfy/blob/main/VAE/LTX2_audio_vae_bf16.safetensorsLTX2_audio_vae_bf16.safetensors
https://huggingface.co/Kijai/LTXV2_comfy/blob/main/VAE/LTX2_video_vae_bf16.safetensorsLTX2_video_vae_bf16.safetensors
code:models
📂ComfyUI/
└── 📂models/
├── 📂latent_upscale_models/
│ └── ltx-2-spatial-upscaler-x2-1.0.safetensors
├── 📂loras/
│ └── ltx-2-19b-distilled-lora-384.safetensors
├── 📂text_encoders/
│ ├── gemma-3-12b-it-XXXX.gguf
│ └── ltx-2-19b-embeddings_connector_dev_bf16.safetensors
├── 📂unet/
│ └── LTX-2-dev-XXXX.gguf
└── 📂vae/
├── LTX2_audio_vae_bf16.safetensors
└── LTX2_video_vae_bf16.safetensors
text2video 8ステップ生成 (w/distilled lora)
https://gyazo.com/40eebde269f9710c01643212480dedd2
LTX-2_text2video_distilled_V2_gguf.json