高度なAI: ComfyUI

OpenShot は、ローカル ComfyUI サーバーに接続し、プロジェクト ファイルとタイムラインのコンテキスト メニューから AI ワークフローを実行できます。このページでは、これらのツールとは何か、必要なハードウェア、および組み込みのワークフロー テンプレートが存在する場所について説明します。

警告

OpenShot のAI機能は 実験的 であり、 ハイエンドワークステーション が必要です。

  • これらのツールはノートパソコン、中価格帯デスクトップ、または低価格システムには 推奨されません

  • ローカルの ComfyUI サーバーを実行する必要があります。

  • モデルのダウンロード、セットアップ作業、およびワークフローのトラブルシューティングが必要になることを想定してください。

インストールとセットアップ

OpenShotでAIワークフローを試す前に、このクイックセットアップ手順を使用してください:

  1. ComfyUIをインストールし、正しく起動することを確認してください。

  2. 必要なカスタムノード(以下に記載)をインストールしてください。

  3. 必要なモデルファイル(以下に記載)を対応するモデルフォルダにダウンロードしてください。

  4. ComfyUI を起動し、Edit->Preferences->Advanced を開き、ComfyUI URL を設定します。

  5. チェック をクリックして、OpenShotがサーバーに接続できることを確認してください。

ComfyUIの完全なインストール手順については、公式リポジトリをご覧ください: ComfyUI on GitHub.

必要なカスタムノード

必要なモデル / ファイル

  • ComfyUI/custom_nodes/ComfyUI-Frame-Interpolation/ckpts/rife/rife47.pth

  • ComfyUI/models/checkpoints/sd_xl_base_1.0.safetensors

  • ComfyUI/models/checkpoints/sd_xl_refiner_1.0.safetensors

  • ComfyUI/models/checkpoints/stable-audio-open-1.0.safetensors

  • ComfyUI/models/clip_vision/clip_vision_g.safetensors

  • ComfyUI/models/diffusion_models/wan2.2_ti2v_5B_fp16.safetensors

  • ComfyUI/models/grounding-dino/groundingdino_swint_ogc.pth

  • ComfyUI/models/sam2/sam2.1_hiera_base_plus.pt

  • ComfyUI/models/sam2/sam2.1_hiera_small-fp16.safetensors

  • ComfyUI/models/sam2/sam2.1_hiera_small.pt

  • ComfyUI/models/sam2/sam2.1_hiera_tiny-fp16.safetensors

  • ComfyUI/models/sam2/sam2.1_hiera_tiny.pt

  • ComfyUI/models/sam2/sam2_hiera_small.pt

  • ComfyUI/models/stt/whisper/large-v3.pt

  • ComfyUI/models/stt/whisper/medium.pt

  • ComfyUI/models/text_encoders/t5-base.safetensors

  • ComfyUI/models/text_encoders/umt5_xxl_fp8_e4m3fn_scaled.safetensors

  • ComfyUI/models/TTS/Ace-Step1.5/acestep-v15-turbo/silence_latent.pt

  • ComfyUI/models/upscale_models/RealESRGAN_x4plus.safetensors

  • ComfyUI/models/vae/split_files/vae/wan_2.1_vae.safetensors

  • ComfyUI/models/vae/wan_2.1_vae.safetensors

  • ComfyUI/models/vae/wan2.2_vae.safetensors

  • ComfyUI/models/VLM/transnetv2-pytorch-weights/transnetv2-pytorch-weights.pth

OpenShotでユーザーが見るもの

ComfyUIが利用可能な場合、OpenShotはコンテキストメニューにAIツールを表示します:

  • AIで作成 は新しいアセットを作成するためのものです

    ../_images/create-with-ai.jpg
  • AIで強化(画像) は画像アセットを処理するためのものです

    ../_images/enhance-with-ai-image.jpg
  • AIで強化(動画) は動画アセットを処理するためのものです

    ../_images/enhance-with-ai-video.jpg

生成されたファイルは進行状況のテキストとキューバッジと共に Project Files に追加されます。出力は .openshot_qt/comfyui-output/ に保存されます。

新しいプロジェクト を開始するか 既存のプロジェクト を開くと、一時的な .openshot_qt AI 作業フォルダーがクリアされ、クリーンな状態から始められます。保存されたプロジェクトには影響せず、以前に PROJECTNAME_Assets フォルダーにコピーされたアセットはそのプロジェクトのディレクトリに残ります。

ComfyUI が利用できない場合、OpenShot は AI メニューを無効にします。 Edit->Preferences->Advanced でサーバー URL を構成し、Check ボタンを使用して接続をテストします。

ワークフローテンプレート

OpenShot は、組み込みテンプレートを comfyui/ から読み取ります。また、~/.openshot_qt/comfyui/ からカスタム ユーザー テンプレートを読み込みます。

独自のワークフローを追加するには:

  1. ComfyUI で、使用したいワークフロータブを開きます。

  2. Export (API) を選択して、ワークフローを *.json ファイルとして保存します。

  3. その JSON ファイルを ~/.openshot_qt/comfyui/ にコピーします。

  4. OpenShot を再起動するか、必要に応じてプロジェクトを再度開きます。

OpenShot はワークフローを自動的に読み込み、適切な AI メニューに表示します。OpenShot から起動すると、選択したソースファイルがワークフローに渡され、ワークフローの最終出力ノードの出力が Project Files にインポートされます。

OpenShot はまた、ComfyUI に送信された正確なリクエストを確認したい上級ユーザー向けに .openshot_qt/comfyui/debug.json ペイロードを書き出します。

AI アクションダイアログ

Create with AIEnhance with AI の両方が同じ生成ダイアログを開きます。

../_images/comfyui-prompt-dialog.jpg

このダイアログが重要な理由:

  • すべての AI 入力を一箇所にまとめます。

  • ジョブをキューに入れる前に必須フィールドを検証します。

  • 高負荷な処理の前にトラッキングプロンプトを設定できます。

このダイアログでできること:

  • ワークフロー/アクションを選択します。

  • プロンプトテキストを入力します。

  • 選択したソースファイルをプレビューします(強化ワークフロー用)。

  • 生成されるメディアの出力名を設定します。

  • トラッキングワークフロー用にトラッキングポイント/矩形を指定します。

  • Generate でジョブを開始するか、Cancel で閉じます。

トラッキング(マスク、ぼかし、ハイライト)

トラッキングワークフロー(Blur...Highlight...Mask...)は、含める部分と除外する部分をマークする領域画面を使用します。

../_images/comfyui-tracking-dialog-blue-red-dots.jpg

これが重要な理由

トラッキングは、効果が動く被写体に時間を通じて追従するのを助けます。例えば、顔をぼかしたり、選手をハイライトしたり、同じオブジェクトを複数フレームにわたって追うクリーンなマスクを生成できます。

トラッキングアイコン

アイコン/マーカー

意味

青い点

ポジティブトラッキング座標(前景/被写体のシードポイント)。

赤い点

ネガティブトラッキング座標(背景/除外のシードポイント)。

青い矩形

ポジティブ領域シード(広範囲の被写体ヒント)。

赤い矩形

ネガティブ領域シード(広範囲の除外ヒント)。

削除アイコン

現在のすべてのトラッキングシード(点/矩形)をクリアしてやり直します。

トラッキングの仕組み

OpenShot はポジティブおよびネガティブのマーカーをシード座標としてトラッキングモデルに送信し、被写体のマスクを作成して時間経過に沿って追跡します。より良いシードは通常、よりクリーンなマスクとドリフトの減少をもたらします。 [sam2]

使い方

  1. 被写体がはっきり見えるフレームを選びます。

  2. 被写体に青い点を一つ置いて始めます。

  3. 必要に応じて近くの背景に赤い点を追加します。

  4. より広範囲の選択を速く行いたい場合は矩形を追加します。

  5. 動きや形状が変わる場合は追加のフレームで繰り返します。

時間経過に合わせた調整(フレームスライダー):

  • クリップ内の異なる時点にフレームスライダーを移動します。

  • トラッキングがずれ始めたフレームで点や矩形を追加または調整します。

  • 追加のシードポイントは必要な箇所だけに使用します。特に遮蔽、速い動き、大きな形状変化のある場所で。

マスクプレビュー出力(このトラッキング処理から):

../_images/comfyui-mask-example-preview.jpg

ベストプラクティス

  • まずは短いテストクリップを使用してください。

  • シンプルに始めましょう:青い点一つで十分なことが多いです。

  • トラッキングが失敗する箇所にのみ追加の点を加えます。

  • 必要に応じて、より詳細な正負のポイントと矩形を追加してください。

  • 正のポイントと負のポイントを明確に分けてください。

  • トラッキングが乱れた場合は、削除アイコンを使ってクリーンなシードからやり直してください。

[sam2]

SAM2 (Segment Anything Model 2) プロジェクト: facebookresearch/sam2

ジョブキュー、進行状況、およびキャンセル

生成 をクリックすると、リクエストはキューに入り、OpenShot の AI ジョブキューで実行されます。

  • 進行状況は プロジェクトファイル (バッジとステータステキスト)に表示されます。

  • 完了した出力は プロジェクトファイル にインポートされます。

  • アクティブなジョブは、進行状況バーが表示された生成されたプロジェクト ファイルを右クリックし、Cancel Job を選択することでキャンセルできます。

  • 出力は .openshot_qt/comfyui-output/ に書き込まれます。

組み込み JSON ワークフロー

以下のセクションは、comfyui/ の組み込み JSON テンプレートに直接マップされます。各サブセクションでは、これを使用する理由、実行方法、重要な詳細について説明します。

AI で作成

画像... (txt2img-basic)

  • 理由: テキストプロンプトから静止画像を生成します。

  • 方法: AI で作成 -> 画像... を選択し、プロンプトを入力して生成します。

  • 詳細: comfyui/txt2img-basic.jsonsd_xl_base_1.0.safetensors とともに使用します。

ビデオ... (txt2video-svd)

  • 理由: テキストから短いビデオクリップを生成します。

  • 方法: AI で作成 -> ビデオ... を選択し、プロンプトを入力して生成します。

  • 詳細: WAN ビデオ生成モデルで comfyui/txt2video-svd.json を使用します。

サウンド... (txt2audio-stable-open)

  • 理由: テキストプロンプトから非音楽的なオーディオを生成します。

  • 方法: AI で作成 -> サウンド... を選択し、プロンプトを入力して生成します。

  • 詳細: Stable Audio Open モデルでは comfyui/txt2audio-stable-open.json を使用します。

音楽... (txt2music-ace-step)

  • 理由: スタイルやタグ(およびオプションの歌詞)から音楽を生成します。

  • 方法: AI で作成 -> 音楽... を選択し、プロンプトテキストを入力して生成します。

  • 詳細: Ace-Step 1.5 チェックポイントで comfyui/txt2music-ace-step.json を使用します。

AI で強化

画像スタイルを変更... (img2img-basic)

  • 理由: 元の構図を保ちながら既存の画像のスタイルを変更します。

  • 方法: 画像で AI で強化 を選択し、スタイルプロンプトを入力して生成します。

  • 詳細: comfyui/img2img-basic.jsonsd_xl_base_1.0.safetensors とともに使用します。

画像からビデオへ... (img2video-svd)

  • 理由: 静止画像を生成されたビデオショットに変換します。

  • 方法: 画像で AI で強化 を選択し、プロンプトガイダンスを提供して生成します。

  • 詳細: WAN 画像からビデオへのモデルで comfyui/img2video-svd.json を使用します。

ビデオスタイルを変更... (video2video-basic)

  • 理由: 元のビデオに新しいビジュアルスタイルを適用します。

  • 方法: ビデオで AI で強化 を選択し、スタイルプロンプトを入力して生成します。

  • 詳細: comfyui/video2video-basic.jsonsd_xl_base_1.0.safetensors とともに使用します。

解像度を上げる(画像) (upscale-realesrgan-x4)

  • 理由: 低解像度の画像をアップスケールします。

  • 方法: 画像で AI で強化 を選択し、解像度を上げるを選んで生成します。

  • 詳細: comfyui/upscale-realesrgan-x4.jsonRealESRGAN_x4plus.safetensors とともに使用します。

解像度を上げる(ビデオ) (video-upscale-gan)

  • 理由: ビデオフレームをアップスケールして、より高い見かけの詳細を実現します。

  • 方法: ビデオで AI で強化 を選択し、解像度を上げるを選んで生成します。

  • 詳細: comfyui/video-upscale-gan.jsonRealESRGAN_x4plus.safetensors とともに使用します。

スムーズモーション(2倍フレームレート) (video-frame-interpolation-rife2x)

  • 理由: より滑らかな動きを感じさせるためにフレームレートを上げます。

  • 方法: ビデオで AI で強化 を選択し、スムーズモーションを選んで生成します。

  • 詳細: comfyui/video-frame-interpolation-rife2x.jsonrife47.pth とともに使用します。

シーンに分割 (video-segment-scenes-transnet)

  • 理由: シーンの変化を自動検出し、長いクリップをセグメントに分割します。

  • 方法: ビデオで AI で強化 を選択し、シーン分割を選んで生成します。

  • 詳細: TransNetV2 で comfyui/video-segment-scenes-transnet.json を使用します。

音声から字幕を追加(video-whisper-srt

  • 理由: 音声を字幕/キャプションファイルに書き起こします。

  • 方法: 動画で Enhance with AI を選択し、字幕を選んでから生成します。

  • 詳細: comfyui/video-whisper-srt.json を使用し、SRT 出力を作成します。

トラッキングワークフロー(SAM2)

これらのワークフローは同じ領域/トラッキング入力フローを使用し、トラッキングのコンテキストメニューにまとめられています。

ぼかし...(画像)(image-blur-anything-sam2

  • 理由: 静止画像の選択した被写体領域をぼかします。

  • 方法: 被写体のポイントや矩形を選択し、生成します。

  • 詳細: SAM2 イメージ セグメンテーションで comfyui/image-blur-anything-sam2.json を使用します。

強調...(画像)(image-highlight-anything-sam2

  • 理由: 静止画像の選択した被写体領域を強調します。

  • 方法: 被写体のポイントや矩形を選択し、生成します。

  • 詳細: SAM2 イメージ セグメンテーションで comfyui/image-highlight-anything-sam2.json を使用します。

マスク...(画像)(image-mask-anything-sam2

  • 理由: 選択した被写体領域の画像マスクを生成します。

  • 方法: 被写体のポイントや矩形を選択し、生成します。

  • 詳細: SAM2 イメージ セグメンテーションで comfyui/image-mask-anything-sam2.json を使用します。

ぼかし...(動画)(video-blur-anything-sam2

  • 理由: 動画内の動く被写体を追跡してぼかします。

  • 方法: 領域画面で被写体/背景をマークし、生成します。

  • 詳細: SAM2 ビデオ トラッキングで comfyui/video-blur-anything-sam2.json を使用します。

強調...(動画)(video-highlight-anything-sam2

  • 理由: 動画内の動く被写体を追跡して強調します。

  • 方法: 領域画面で被写体/背景をマークし、生成します。

  • 詳細: SAM2 ビデオ トラッキングで comfyui/video-highlight-anything-sam2.json を使用します。

マスク...(動画)(video-mask-anything-sam2

  • 理由: 動く被写体に追従するアニメーションマスクを生成します。

  • 方法: 領域画面で被写体/背景をマークし、生成します。

  • 詳細: SAM2 ビデオ トラッキングで comfyui/video-mask-anything-sam2.json を使用します。

初心者向けの開始ポイント

これらのツールを初めて使う場合は、以下から始めてください:

  1. Create with AI -> Image

  2. Enhance with AI -> Increase Resolution

  3. Enhance with AI -> Smooth Motion

  4. Enhance with AI -> Split into Scenes

  5. Enhance with AI -> Add Captions

トラブルシューティング

AI メニューが表示されない、またはジョブがすぐに失敗する場合:

  1. ComfyUI が起動しており、設定された URL でアクセス可能か確認してください。

  2. 必要なモデルが ComfyUI 環境に存在するか確認してください。

  3. 選択したワークフローに必要なカスタムノードパッケージがインストールされているか確認してください。

  4. 長いクリップの場合はバッチ/チャンクサイズを減らしてください。

  5. まずは短いクリップや静止画像で再テストしてください。

一般的なパフォーマンスやキャッシュの調整については、環境設定再生 を参照してください。