重要
- Azure AI Content Understanding はプレビュー版として使用できます。 パブリック プレビュー リリースでは、開発中の機能に早期にアクセスできます。
- 機能、アプローチ、およびプロセスは、一般公開 (GA) の前に変更されたり、機能が制限されたりする可能性があります。
- 詳細については、「Microsoft Azure プレビューの追加の使用条件」を "参照" してください。
Azure AI Content Understanding を使用すると、生成モデルの機能を使用して、ビデオ メタデータの標準セットを生成し、特定のユース ケースのカスタム フィールドを作成できます。 Content Understanding は、ビデオ アセットのワークフローの管理、分類、取得、ビルドを効率的に行うのに役立ちます。 これは、メディア アセット ライブラリの強化、強調表示の生成などのワークフローのサポート、コンテンツの分類、取得拡張生成 (RAG) などのアプリケーションの容易化を行います。
事前に構築されたビデオ アナライザーは、次を含む RAG 対応 Markdown を出力します。
- トランスクリプト: 標準 WEBVTT 形式のインライン トランスクリプト
- 形容: 視覚コンテキストと音声コンテキストを使用した自然言語セグメントの説明
- セグメンテーション: ビデオを論理的なチャンクに分割する自動シーンセグメント化
- キー フレーム: より詳細な分析を可能にする順序付きキーフレームサムネイル
この形式は、エージェントまたは RAG ワークフローを有効にするためにベクター ストアに直接ドロップできます。後処理は必要ありません。
そこから アナライザーをカスタマイズ して、出力をより細かく制御できます。 ユーザー設定フィールド、セグメントを定義したり、顔識別を有効にしたりできます。 カスタマイズを使用すると、生成モデルのフル パワーを使用して、ビデオのビジュアルとオーディオの詳細から詳細な分析情報を抽出できます。
たとえば、カスタマイズを使用すると、次のことができます。
- カスタム フィールドを定義する: ビデオで表示またはメンションされる製品とブランドを識別します。
- カスタム セグメントを生成する: 話し合ったトピックやニュース記事に基づいてニュースブロードキャストを章に分割します。
- ユーザー ディレクトリを使用してユーザーを識別 します。これにより、顧客は顔識別 (
CEO John Doe
、CFO Jane Smith
など) を使用して映像内の会議講演者にラベルを付けられます。
ビデオに Content Understanding を使用する理由
ビデオ コンテンツの解釈には、幅広い潜在的な用途があります。 たとえば、メタデータをカスタマイズしてトレーニング ビデオの特定のシーンにタグを付けると、従業員は重要なセクションを簡単に見つけたり、見直したりすることができます。 また、メタデータのカスタマイズを使用してプロモーション ビデオ内の製品の配置を特定することもできます。これは、マーケティング チームがブランドの露出を分析するのに役立ちます。 その他のユース ケースは以下のとおりです。
- 放送メディアとエンターテイメント: 各アセットの詳細なメタデータを生成して、ショー、映画、クリップの大規模なライブラリを管理します。
- 教育とeラーニング: 教育ビデオや講義の特定の瞬間にインデックス作成を行い、特定の瞬間を取得します。
- 企業のトレーニング: トレーニング ビデオを主要なトピック、シーン、または重要な瞬間別に整理します。
- マーケティングと広告: プロモーション ビデオを分析して、製品の配置、ブランドの外観、および主要なメッセージを抽出します。
事前構築済みのビデオ アナライザーの例
事前構築済みのビデオ アナライザー (事前構築済みの videoAnalyzer) を使用すると、ビデオをアップロードしてすぐに使用可能なナレッジ資産を取得できます。 このサービスでは、すべてのクリップが豊富に書式設定された Markdown と JSON の両方にパッケージ化されます。 このプロセスにより、検索インデックスまたはチャットエージェントがカスタムの接着剤コードなしで取り込むことができます。
たとえば、次のようにベース
prebuilt-videoAnalyzer
を作成します。{ "config": {}, "BaseAnalyzerId": "prebuilt-videoAnalyzer", }
次に、30 秒の広告ビデオを分析すると、次の出力が生成されます。
# Video: 00:00.000 => 00:30.000 Width: 1280 Height: 720 ## Segment 1: 00:00.000 => 00:06.000 A lively room filled with people is shown, where a group of friends is gathered around a television. They are watching a sports event, possibly a football match, as indicated by the decorations and the atmosphere. Transcript WEBVTT 00:03.600 --> 00:06.000 <Speaker 1>Get new years ready. Key Frames - 00:00.600  - 00:01.200  ## Segment 2: 00:06.000 => 00:10.080 The scene transitions to a more vibrant and energetic setting, where the group of friends is now celebrating. The room is decorated with football-themed items, and everyone is cheering and enjoying the moment. Transcript WEBVTT 00:03.600 --> 00:06.000 <Speaker 1>Go team! Key Frames - 00:06.200  - 00:07.080  *…additional data omitted for brevity…*
チュートリアル
最近、Content Understanding を使用した RAG on Video のチュートリアルを公開しました。 https://www.youtube.com/watch?v=fafneWnT2kw&lc=Ugy2XXFsSlm7PgIsWQt4AaABAg
能力
内部では、2 つのステージによって生のピクセルがビジネスに対応した分析情報に変換されます。 次の図は、抽出フィードの生成方法を示しています。各ダウンストリーム ステップに必要なコンテキストがあることを確認します。
サービスは 2 つの段階で動作します。 コンテンツ抽出の最初の段階では、トランスクリプト、ショット、顔などの基本的なメタデータをキャプチャします。 2 番目のステージであるフィールド抽出では、生成モデルを使用してカスタム フィールドを生成し、セグメント化を実行します。 さらに、必要に応じて Face アドオンを有効にして、個人を識別し、ビデオで説明することもできます。
コンテンツ抽出機能
最初のパスは、最初の一連の詳細 (誰が話しているか、カットがどこにあり、どの顔が繰り返し発生するか) を抽出する方法です。 後の手順で推論できるソリッド メタデータ バックボーンが作成されます。
転写: 会話型オーディオを WebVTT 形式で検索可能で分析可能なテキスト ベースのトランスクリプトに変換します。
"returnDetails": true
が設定されている場合は、文レベルのタイムスタンプを使用できます。 Content Understanding では、Azure AI Speech の音声テキスト変換言語の完全なセットがサポートされています。 ビデオの言語サポートの詳細はオーディオと同じです。詳細については、「オーディオ言語処理」を参照してください。 次の文字起こしの詳細を考慮する必要があります。Diarization: 出力内の会話の話者を区別し、トランスクリプトの一部を特定の話者に帰属します。
多言語文字起こし: 多言語トランスクリプトを生成します。 言語/ロケールは、トランスクリプト内のフレーズごとに適用されます。
"returnDetails": true
が設定されている場合に出力される語句。 言語検出からの逸脱この機能は、言語/ロケールが指定されていない場合、または言語がauto
に設定されている場合に有効になります。注
多言語文字起こしを使用すると、サポートされていないロケールを持つすべてのファイルが、サポートされている最も近いロケールに基づいて結果を生成します。これは間違っている可能性があります。 この結果は既知の動作です。 多言語文字起こしがサポートされているロケールを使用しない場合はロケールを構成することで、文字起こし品質の問題を回避します。
キー フレームの抽出: ビデオからキー フレームを抽出して各ショットを完全に表します。各ショットには、フィールド抽出を効果的に機能させるために十分なキー フレームがあることを確認します。
ショット検出: ビデオのセグメントを可能な限りショット境界に合わせて識別し、正確な編集ができるようにします。これにより、既存の編集に合わせてコンテンツを中断することなく再パッケージ化することができます。 出力は、
cameraShotTimesMs
のタイムスタンプの一覧 (ミリ秒単位) です。 出力は、"returnDetails": true
が設定されている場合にのみ返されます。
フィールドの抽出とセグメント化
次に、生成モデルがシーンにタグを付け、アクションを要約し、あなたの要求に応じて映像をセグメントに分割します。 このアクションは、プロンプトが構造化データに変わる場所です。
カスタム フィールド
ビジネスボキャブラリに合わせて出力を整形します。 各エントリがフィールドの名前、型、および説明を定義する fieldSchema
オブジェクトを使用します。 実行時に、生成モデルは、すべてのセグメントに対してこれらのフィールドを埋めます。
例:
メディア資産管理:
- ビデオ カテゴリ: 編集者やプロデューサーがコンテンツをニュース、スポーツ、インタビュー、ドキュメンタリー、広告などに分類することで、コンテンツを整理するのに役立ちます。メタデータのタグ付けや、より迅速なコンテンツのフィルター処理と取得に役立ちます。
- 配色: 物語の一貫性と視聴者の関与に不可欠な気分と雰囲気を伝えます。 テーマを色で識別すると、一致するクリップを見つけやすくなり、ビデオ編集を高速化するのに役立ちます。
広告:
- ブランド: 広告への影響、ブランドの可視性、製品との関連付けを分析するために重要なブランドプレゼンスを識別します。 この機能により、広告主はブランドの知名度を評価し、ブランド ガイドラインに確実に準拠することができます。
- 広告カテゴリ: 広告の種類を業界、製品タイプ、またはオーディエンス セグメント別に分類します。これは、ターゲット広告戦略、分類、パフォーマンス分析をサポートします。
例:
"fieldSchema": {
"description": "Extract brand presence and sentiment per scene",
"fields": {
"brandLogo": {
"type": "string",
"method": "generate",
"description": "Brand being promoted in the video. Include the product name if available."
},
"Sentiment": {
"type": "string",
"method": "classify",
"description": "Ad categories",
"enum": [
"Consumer Packaged Goods",
"Groceries",
"Technology"
]
}
}
}
セグメント化モード
注
セグメント化を設定すると、フィールドが定義されていない場合でもフィールド抽出がトリガーされます。
Content Understanding には、ビデオをスライスする 3 つの方法が用意されています。これにより、ビデオ全体または短いクリップに必要な出力を取得できます。 これらのオプションは、カスタム アナライザーで SegmentationMode
プロパティを設定することで使用できます。
ビデオ全体 –
segmentationMode : noSegmentation
このサービスは、ビデオ ファイル全体を 1 つのセグメントとして扱い、その完全な期間にわたってメタデータを抽出します。例:
- 広告内の任意の場所で特定のブランド安全性の問題を探すコンプライアンス チェック
- 全文のわかりやすい要約
自動セグメント化 –
segmentationMode = auto
サービスによってタイムラインが分析され、自動的に分割されます。 連続するショットを一貫したシーンにグループ化し、それぞれ 1 分に制限します。例:
- ショーからストーリーボードを作成する
- 論理的な一時停止時にミッドロール広告を挿入する。
カスタム セグメント化 –
segmentationMode : custom
自然言語でロジックを記述し、モデルによって一致するセグメントが作成されます。 ビデオをセグメント化する方法を説明する文字列でsegmentationDefinition
を設定します。 カスタムでは、プロンプトに応じて、秒から分までの長さの異なるセグメントを使用できます。例:
- ニュース配信をストーリーに分割します。
{ "segmentationMode": "custom", "segmentationDefinition": "news broadcasts divided by individual stories" }
顔識別と説明アドオン
注
この機能にはアクセス制限があり、顔の識別とグループ化が含まれます。お客様は、顔認識でアクセスを登録する必要があります。 Face の機能では、追加のコストが発生します。
顔識別の説明は、顔情報を使用してコンテンツ抽出とフィールド抽出にコンテキストを提供するアドオンです。
コンテンツ抽出 - グループ化と識別
顔アドオンを使用すると、コンテンツ抽出セクションからの出力としてグループ化と識別を行うことができます。 顔の機能を有効にするには、アナライザー構成で "enableFace":true
を設定します。
- グルーピング: ビデオに表示されるグループ化された顔は、人物ごとに 1 つの代表的な顔画像を抽出し、それぞれの顔が存在するセグメントを提供します。 グループ化された顔データはメタデータとして使用でき、アナライザーの
returnDetails: true
時にカスタマイズされたメタデータ フィールドを生成するために使用できます。 - 識別: Face API person ディレクトリに基づいて、ビデオ内の個人に名前を付けます。 お客様は、アナライザーの
personDirectoryId
プロパティで、現在のリソース内の Face API ディレクトリの名前を指定することで、この機能を有効にすることができます。 この機能を使用するには、まず personDirectory を作成してから、アナライザーで参照する必要があります。 その方法の詳細については、person ディレクトリを構築する方法に関するページを参照してください。
フィールド抽出 - 顔の説明
フィールド抽出機能は、ビデオで識別された顔の詳細な説明を提供することで強化されています。 この機能には、顔の毛、感情、有名人の存在などの属性が含まれます。これは、さまざまな分析およびインデックス作成の目的で重要になる可能性があります。 アナライザー構成で顔の説明機能を有効にするには、disableFaceBlurring : true
を設定します。
例:
- フィールドの例: emotionDescription: このクリップの主要人物の感情状態の説明を提供します (例:
happy
、sad
、angry
) - フィールドの例: facialHairDescription: 顔の髪の種類 (
beard
、mustache
、clean-shaven
など) について説明します。
主な利点
Content Understanding には、他のビデオ分析ソリューションと比較して、いくつかの重要な利点があります。
- セグメントベースのマルチフレーム分析: 個々のフレームではなく、各ビデオ セグメントの複数のフレームを分析して、アクション、イベント、トピック、テーマを特定します。
- カスタマイズ: 特定のユース ケースに応じてスキーマを変更して、生成するフィールドとセグメント化をカスタマイズします。
- 生成モデル: 抽出するコンテンツを自然言語で記述し、Content Understanding では生成モデルを使用してそのメタデータを抽出します。
- 最適化された前処理: AI 生成モデルに豊富なコンテキストを提供するように最適化された、文字起こしやシーン検出など、いくつかのコンテンツ抽出の前処理手順を実行します。
技術的な制約と制限事項
注意すべきビデオ処理の具体的な制限事項:
- フレーム サンプリング (最大 1 FPS):アナライザーは、1 秒あたり約 1 フレームを検査します。 迅速なモーションや単一フレームのイベントが見逃される可能性があります。
- フレーム解像度 (512 × 512 px): サンプリングされたフレームのサイズが 512 ピクセルの正方形に変更されます。 小さいテキストや離れたオブジェクトは失われる可能性があります。
- 音声: 読み上げられた単語のみが文字起こしされます。 音楽、サウンド エフェクト、アンビエント ノイズは無視されます。
入力の要件
サポートされている形式については、「 サービスのクォータと制限」を参照してください。
サポートされている言語とリージョン
言語と地域のサポートを参照してください。
データのプライバシーとセキュリティ
すべての Azure AI サービスと同様に、Microsoft の データ、保護、プライバシー に関するドキュメントを確認してください。
重要
生体認証データを処理する場合 (顔のグループ化や顔識別を有効にするなど)、GDPR またはその他の適用法に基づくすべての通知、同意、削除の要件を満たす必要があります。 Face の データとプライバシーを参照してください。
次のステップ
Azure AI Foundry ポータルでビデオを処理します。
クイック スタート: アナライザー テンプレートを使用してビデオ コンテンツを分析する。
サンプル: