ltx2 について
ltx2は、Modal上でLTX-2.3 22B DiTモデルを使って短い動画を生成するコマンドラインスキルです。テキストプロンプトからの生成や入力画像のアニメーション化に対応し、サイズ、フレーム数、推論設定を調整できます。
主な機能
- 01テキストプロンプトから動画を生成
- 02入力画像をアニメーション化
- 03サイズ・フレーム数・FPSの設定
- 04品質・ステップ数・シードの指定
- 05環境音付きH.264 MP4を出力
活用シーン
- 01短いBロール素材の作成
- 02スライド画像への動きの追加
- 03静止ポートレートのアニメーション化
- 04抽象的なイントロ・アウトロ背景の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ calesthio/ openmontage --skill ltx2インストール後、Claude Code で/ltx2を入力して読み込まれたか確認します。
詳細
LTX-2.3 動画生成
LTX-2.3 22B DiT モデルを使用して、テキストプロンプトまたは画像から約5秒の動画クリップを生成します。
Modal(A100-80GB)で実行します。.env に MODAL_LTX2_ENDPOINT_URL が必要です。
クイックリファレンス
# Text-to-video
python3 tools/ltx2.py --prompt "A sunset over the ocean, golden light on waves, cinematic" --output sunset.mp4
# Image-to-video (animate a still image)
python3 tools/ltx2.py --prompt "Gentle camera drift, soft ambient motion" --input photo.jpg --output animated.mp4
# Custom resolution and duration
python3 tools/ltx2.py --prompt "..." --width 1024 --height 576 --num-frames 161 --output wide.mp4
# Fast mode (fewer steps, quicker)
python3 tools/ltx2.py --prompt "..." --quality fast --output quick.mp4
# Reproducible output
python3 tools/ltx2.py --prompt "..." --seed 42 --output reproducible.mp4
パラメーター
| パラメーター | デフォルト | 説明 |
|---|---|---|
--prompt | (必須) | 動画のテキストによる説明 |
--input | - | 画像から動画を生成する場合の入力画像 |
--width | 768 | 動画の幅(64で割り切れる値) |
--height | 512 | 動画の高さ(64で割り切れる値) |
--num-frames | 121 | フレーム数。(n-1) % 8 == 0 を満たす必要があります |
--fps | 24 | 1秒あたりのフレーム数 |
--quality | standard | standard(30ステップ)または fast(15ステップ) |
--steps | 30 | 推論ステップ数を直接指定して上書き |
--seed | random | 再現性のためのシード |
--output | auto | 出力ファイルのパス |
--negative-prompt | 適切なデフォルト値 | 避ける内容 |
有効なフレーム数
(n - 1) % 8 == 0:25(約1秒)、49(約2秒)、73(約3秒)、97(約4秒)、121(約5秒、デフォルト)、161(約6.7秒)、193(実用上の最大値、約8秒)。
よく使う解像度
| 解像度 | 比率 | 備考 |
|---|---|---|
| 768x512 | 3:2 | デフォルト。バランスに優れています |
| 512x512 | 1:1 | 正方形。最速です |
| 1024x576 | 16:9 | ワイドスクリーン |
| 576x1024 | 9:16 | ポートレート/縦向き |
プロンプトガイド
LTX-2 は映画的な描写によく反応します。次の要素を組み合わせてください。
- カメラ:「ゆっくり前進するドリー撮影」「空撮ドローンショット」「トラッキングショット」「固定の広角ショット」
- 照明:「ゴールデンアワー」「映画のような照明」「ネオン照明」「柔らかな拡散光」
- 動き:「……のタイムラプス」「スローモーション」「カメラがゆっくり漂う」「徐々に移り変わる」
- スタイル:「35mmフィルムで撮影」「ドキュメンタリー風」「すっきりとしたミニマルな美しさ」
- ネガティブ:「最低品質、ぼやけ、揺れ、透かし、テキスト、ロゴ」は常に暗黙的に回避されます。
プロンプトは200語未満にしてください。シーンを具体的に描写してください。
良いプロンプト
# Atmospheric b-roll
"Aerial drone shot slowly flying over turquoise ocean waves breaking on white sand, golden hour sunlight, cinematic"
# Product/tech scene
"Close-up of hands typing on a mechanical keyboard, shallow depth of field, soft desk lamp lighting, cozy atmosphere"
# Abstract background
"Dark moody abstract background with flowing blue light streaks, subtle geometric grid, bokeh particles floating, cinematic tech atmosphere"
# Animate a portrait
"Professional headshot, subtle natural head movement, confident warm expression, studio lighting, shallow depth of field"
# Animate a slide/screenshot
"Gentle subtle particle effects floating across a presentation slide, soft ambient light shifts, very slight camera drift"
悪いプロンプト
# Too vague
"A cool video"
# Too many competing ideas
"A cat riding a skateboard while juggling fire on the moon during a thunderstorm"
# Describing text/UI (model can't render text reliably)
"A website showing the text 'Welcome to our platform'"
動画制作のユースケース
Bロールクリップ
ナレーション付きのシーン間に挿入する、雰囲気のある5秒のショットを生成します。
python3 tools/ltx2.py --prompt "Futuristic holographic interface, glowing data visualizations, clean workspace, cinematic" --output broll_tech.mp4
python3 tools/ltx2.py --prompt "Aerial view of European city at golden hour, modern architecture" --output broll_europe.mp4
アニメーション付きスライド背景
スライドのスクリーンショットを入力し、控えめな動きを加えます。
python3 tools/ltx2.py --prompt "Gentle particle effects, soft ambient light shifts, very slight camera drift" --input slide.png --output animated_slide.mp4
アニメーション付きポートレート
静止した顔写真に命を吹き込みます。
python3 tools/ltx2.py --prompt "Subtle natural head movement, warm expression, professional lighting" --input headshot.png --output animated_portrait.mp4
ブランド付きイントロ/アウトロ
タイトルカード用に抽象的なモーション背景を生成します。
python3 tools/ltx2.py --prompt "Dark moody background with flowing blue and coral light streaks, bokeh particles, cinematic tech atmosphere, no text" --output intro_bg.mp4
他のツールとの組み合わせ
LTX-2 は加工前のクリップを生成します。ツールキットのほかのツールと組み合わせてください。
| ワークフロー | ツール |
|---|---|
| クリップを生成 → アップスケール | ltx2.py → upscale.py |
| クリップを生成 → Remotion に追加 | ltx2.py → コンポジション内で <OffthreadVideo> として使用 |
| 画像を生成 → アニメーション化 | flux2.py → ltx2.py --input |
| クリップを生成 → 音声を抽出 | ltx2.py → ffmpeg -i clip.mp4 -vn audio.wav |
| クリップを生成 → ナレーションを追加 | ltx2.py → qwen3_tts.py の出力とミックス |
技術詳細
- モデル: LTX-2.3 22B DiT(Lightricks)、bf16
- GPU: Modal 上の A100-80GB(約$4.68/時間)
- 推論: クリップあたり約2.5分(768x512、121フレーム、30ステップ)
- コスト: 5秒のクリップあたり約$0.20〜0.25
- コールドスタート: 約60〜90秒(約55GBの重みを読み込み)
- 出力: 同期された環境音付きの H.264 MP4(24fps)
- 最大長: クリップあたり約8秒(193フレーム)
既知の制限事項
- 学習データ由来のアーティファクト: 生成の約30%で、学習データに由来する不要なロゴやテキストが含まれる場合があります。別の
--seedで再実行してください。 - テキスト描画: 動画内に読みやすいテキストを安定して生成できません。代わりに Remotion のオーバーレイを使用してください。
- 最大長: クリップあたり約8秒です。より長いコンテンツには、クリップの結合が必要です。
- 音声: 生成される音声は環境音のみです。音声や音楽には、ナレーション/音楽ツールを使用してください。
- ライセンス: Community License — 収益が$10M未満の場合は無料です。それ以上の場合は商用ライセンスが必要です。
セットアップ
# 1. Create Modal secret for HuggingFace (one-time)
modal secret create huggingface-token HF_TOKEN=hf_your_token
# 2. Deploy (downloads ~55GB of weights, takes ~10 min)
modal deploy docker/modal-ltx2/app.py
# 3. Save endpoint URL to .env
echo "MODAL_LTX2_ENDPOINT_URL=https://yourname--video-toolkit-ltx2-ltx2-generate.modal.run" >> .env
# 4. Test
python3 tools/ltx2.py --prompt "A candle flickering on a dark table, cinematic" --output test.mp4
重要: HuggingFace トークンには read-access スコープが必要です。デプロイする前にGemma 3 ライセンスに同意してください。認証なしのダウンロードは大幅にレート制限されます。
コメント
Markdown 対応