Skip to main content
このガイドでは、Weave のトレースで動画データをログおよびトラッキングする方法を説明します。これにより、Weave UI で動画を直接確認、再生、分析できます。対象は、トレースされた関数の動画の入力と出力を自動的に取得したい、動画処理アプリケーションを構築する開発者です。 Weave は moviepy を使用して動画を自動的にログします。動画の入力と出力をトレースされた関数に渡すことができ、Weave が動画データのアップロードと保存を自動的に処理します。
動画のサポートは Python でのみ利用できます。

使用するための前提条件

Weave で動画をログする前に、次の前提条件を満たしてください。
  1. weavemoviepy==1.0.3 をインストールします。
  2. W&B アカウントを作成します。

サポートされている動画タイプ

Weave では、さまざまな種類の moviepy クリップをそれぞれ異なる方法で扱います。どのタイプを使用しているかを把握すると、Weave が動画データをどのようにアップロードして保存するかを理解しやすくなります。 Weave は、次のような moviepy の動画クリップオブジェクトを認識します。
  • 動画ファイルから読み込まれた VideoFileClip オブジェクト。
  • ImageClipColorClipTextClip などのインメモリクリップ。

ファイルベースのクリップの直接アップロード

クリップがVideoFileClipで、サポート対象の拡張子を持つ有効なファイル名がある場合、Weave はそのファイルを直接アップロードします。 サポート対象のファイル拡張子:
  • .mp4
  • .webm
  • .gif

インメモリクリップのサポート

動画オブジェクトがインメモリの場合 (ディスク上にファイルがない場合) 、Weave はそれを .mp4 ファイルとしてエンコードし、自動的にアップロードします。これは、次のタイプのクリップに適用されます。
  • ImageClip
  • ColorClip
  • TextClip

例: 動画関数をトレースする

次のコードサンプルは、Weave で動画処理関数をトレースする方法を示しています。このコードサンプルでは、次のことを行います。
  1. Weave プロジェクト video-test を初期化します。
  2. 読み込んだ VideoFileClip から 1 秒のサブクリップを VideoClip として抽出する get_video 関数を、weave.op としてトラッキング対象にして定義します。
  3. クリップを Weave にアップロードしてトラッキングします。
  4. 動画が見つからない場合は、プレースホルダーの MP4 動画を自動生成します。
スレッドセーフティの問題を避けるため、VideoFileClip オブジェクトは Weave の op の外部で作成せず、必ずそのパスを渡してください。
次のコードスニペットを使用する前に、使用するための前提条件 を完了してください。
コードサンプルが正常に実行されると、project の トレース 表にあるリンクをクリックして動画を表示できます。
トレース表内の動画処理関数のトレース。
Weave にアップロードされた MP4 動画。トレースのポップアウトで表示されています。