Azure AI Video Indexer の出力を調べる
[アーティクル]
08/02/2023
5 人の共同作成者
フィードバック
この記事の内容
ビデオのインデックスが作成されると、Azure AI Video Indexer によって、指定されたビデオ分析情報の詳細を含む JSON コンテンツが生成されます。 分析情報には、トランスクリプト、光学式文字認識要素 (OCR)、顔、トピックなどの詳細が含まれます。 各種の分析情報には、その分析情報がビデオにいつ現れたかを示す時間範囲のインスタンスが含まれます。
詳細については、 Azure AI Video Indexer の分析情報に関するページを 参照してください。
分析情報のルート要素
名前
説明
accountId
プレイリストの VI アカウント ID
id
プレイリストの ID
name
プレイリストの名前
description
プレイリストの説明
userName
プレイリストを作成したユーザーの名前
created
プレイリストの作成時刻
privacyMode
プレイリストのプライバシー モード (Private
または Public
)。
state
プレイリストの状態 (Uploaded
、Processing
、Processed
、Failed
、または Quarantined
)。
isOwned
現在のユーザーがプレイリストを作成したかどうかを示します。
isEditable
現在のユーザーにプレイリストを編集する権限があるかどうかを示します。
isBase
プレイリストがベースのプレイリスト (ビデオ) か、他のビデオによって構成されたプレイリスト (派生) かどうかを示します。
durationInSeconds
プレイリストの合計期間
summarizedInsights
生成された JSON 出力には、Insights
と SummarizedInsights
の要素が含まれます。 Insights
を使用し、SummarizedInsights
(後方互換対応のために存在します) は使用しないことをお勧めします。
videos
プレイリストを構成するビデオ の一覧。 このプレイリストが他のビデオの時間範囲 (派生) で構成されている場合、このリストのビデオには、含まれている時間範囲のデータのみが含まれます。
{
...
"accountId": "00000000-0000-0000-0000-000000000000",
"id": "abc3454321",
"name": "My first video",
"description": "I am trying VI",
"userName": "Some name",
"created": "2018/2/2 18:00:00.000",
"privacyMode": "Private",
"state": "Processed",
"isOwned": true,
"isEditable": false,
"isBase": false,
"durationInSeconds": 120,
"summarizedInsights" : null,
"videos": [{ . . . }]
}
ヒント
生成された JSON 出力には、Insights
と SummarizedInsights
の要素が含まれます。 Insights
を使用し、SummarizedInsights
(後方互換対応のために存在) は使用しないことを強くお勧めします。
分析情報の概要
このセクションには、分析情報の概要が表示されます。
属性
説明
name
ビデオの名前 (例: Azure Monitor
)。
id
ビデオの ID (例: 63c6d532ff
)。
privacyMode
内訳には次のいずれかのモードがあります。Public
ビデオは、アカウント内のすべてのユーザーと、ビデオへのリンクを持っているすべてのユーザーに表示されます。 Private
ビデオは、アカウント内のすべてのユーザーに表示されます。
duration
分析情報が発生した時間 (秒単位)。
thumbnailVideoId
サムネイルの取得元のビデオの ID。
thumbnailId
ビデオのサムネイル ID。 実際のサムネイルを取得するには、Get-Thumbnail を呼び出し、thumbnailVideoId
と thumbnailId
を渡します。
faces
0 個以上の顔を含めます。 詳細については、「 顔 」を参照してください。
keywords
0 個以上のキーワードを含めます。 詳細については、「keywords 」を参照してください。
sentiments
0 個以上のセンチメントを含めます。 詳細については、「sentiments 」を参照してください。
audioEffects
0 個以上のオーディオ エフェクトを含めます。 詳細については、「audioEffects 」を参照してください。
labels
0 個以上のラベルを含めます。 詳細については、「labels 」を参照してください。
brands
0 個以上のブランドを含めます。 詳細については、「brands 」を参照してください。
statistics
詳細については、「統計 」を参照してください。
emotions
0 個以上の感情を含めます。 詳細については、「emotions 」を参照してください。
topics
0 個以上のトピックを含めます。 詳細については、「topics 」を参照してください。
videos
名前
説明
accountId
ビデオの VI アカウント ID
id
ビデオの ID
name
ビデオの名前
state
ビデオの状態 (Uploaded
、Processing
、Processed
、Failed
、または Quarantined
)。
processingProgress
処理中の進行状況。 (例: 20%
)。
failureCode
ビデオの処理に失敗した場合のエラー コード。 (例: UnsupportedFileType
)。
failureMessage
ビデオの処理に失敗した場合のエラー メッセージ。
externalId
ビデオの外部 ID (ユーザーが指定した場合)。
externalUrl
ビデオの外部 URL (ユーザーが指定した場合)。
metadata
ビデオの外部メタデータ (ユーザーが指定した場合)。
isAdult
ビデオが手動でレビューされ、成人向けビデオとして識別されたかどうかを示します。
insights
分析情報オブジェクト 詳細については、「分析情報 」を参照してください。
thumbnailId
ビデオのサムネイル ID。 実際のサムネイルを取得するには、Get-Thumbnail を呼び出し、ビデオ ID とサムネイル ID に渡します。
publishedUrl
ビデオをストリーミングする URL。
publishedUrlProxy
Apple デバイス上のビデオをストリーミングする URL。
viewToken
ビデオ ストリーミング用の短命表示トークン。
sourceLanguage
ビデオのソース言語
language
ビデオの実際の言語 (翻訳)
indexingPreset
ビデオのインデックス付けに使用するプリセット
streamingPreset
ビデオの発行に使用するプリセット
linguisticModelId
ビデオの文字起こしに使われるトランスクリプト カスタマイズ (CRIS) モデル。
statistics
詳細については、「統計 」を参照してください。
{
"videos": [{
"accountId": "2cbbed36-1972-4506-9bc7-55367912df2d",
"id": "142a356aa6",
"state": "Processed",
"privacyMode": "Private",
"processingProgress": "100%",
"failureCode": "General",
"failureMessage": "",
"externalId": null,
"externalUrl": null,
"metadata": null,
"insights": {. . . },
"thumbnailId": "89d7192c-1dab-4377-9872-473eac723845",
"publishedUrl": "https://videvmediaservices.streaming.mediaservices.windows.net:443/d88a652d-334b-4a66-a294-3826402100cd/Xamarine.ism/manifest",
"publishedProxyUrl": null,
"viewToken": "Bearer=<token>",
"sourceLanguage": "En-US",
"language": "En-US",
"indexingPreset": "Default",
"linguisticModelId": "00000000-0000-0000-0000-000000000000"
}],
}
insights
各分析情報 (トランスクリプト行、顔、ブランドなど) には、一意の要素の一覧 (face1
、face2
、face3
など) が含まれています。 各要素には、独自のメタデータと、追加のメタデータを含む時間範囲であるインスタンスの一覧があります。
顔には、ID、名前、サムネイル、その他のメタデータ、そのテンポラル インスタンスのリスト (、、00:00:05 – 00:00:10
00:01:00 - 00:02:30
、 00:41:21 – 00:41:49
など) が含まれる場合があります。 各テンポラル インスタンスは、追加のメタデータを持つことができます。 たとえば、メタデータには、顔の四角形の座標 (20,230,60,60
) を含めることができます。
例:
{
"version": "0.9.0.0",
"sourceLanguage": "en-US",
"language": "es-ES",
"transcript": ...,
"ocr": ...,
"keywords": ...,
"faces": ...,
"labels": ...,
"shots": ...,
"brands": ...,
"audioEffects": ...,
"sentiments": ...,
"visualContentModeration": ...,
"textualContentModeration": ...
}
transcript
名前
説明
id
行 ID。
text
トランスクリプトそのもの。
confidence
トランスクリプトの精度の信頼度レベル。
speakerId
話者の ID。
language
トランスクリプトの言語。 各行の言語が異なる可能性があるトランスクリプトをサポートすることを目的としています。
instances
この行が出現する時間範囲の一覧。 インスタンスがトランスクリプト内にある場合、インスタンスは 1 つだけです。
例:
"transcript":[
{
"id":1,
"text":"Well, good morning everyone and welcome to",
"confidence":0.8839,
"speakerId":1,
"language":"en-US",
"instances":[
{
"adjustedStart":"0:00:10.21",
"adjustedEnd":"0:00:12.81",
"start":"0:00:10.21",
"end":"0:00:12.81"
}
]
},
{
"id":2,
"text":"ignite 2016. Your mission at Microsoft is to empower every",
"confidence":0.8944,
"speakerId":2,
"language":"en-US",
"instances":[
{
"adjustedStart":"0:00:12.81",
"adjustedEnd":"0:00:17.03",
"start":"0:00:12.81",
"end":"0:00:17.03"
}
]
}
ocr
名前
説明
id
OCR の行 ID。
text
OCR のテキスト。
confidence
認識の信頼度。
language
OCR の言語。
instances
この OCR が出現する時間範囲の一覧 (同じ OCR が複数回出現する可能性があります)。
height
OCR 四角形の高さ。
top
上部の位置 (ピクセル単位)。
left
左側の位置 (ピクセル単位)。
width
OCR 四角形の幅。
angle
OCR 四角形の角度 (-180
から 180
)。 0
の値は左から右方向の水平を意味します。 90
の値は上から下方向の垂直を意味します。 180
の値は右から左方向の水平を意味します。 -90
の値は下から上方向の垂直を意味します。 30
の値は左上から右下方向を意味します。
"ocr": [
{
"id": 0,
"text": "LIVE FROM NEW YORK",
"confidence": 675.971,
"height": 35,
"language": "en-US",
"left": 31,
"top": 97,
"width": 400,
"angle": 30,
"instances": [
{
"start": "00:00:26",
"end": "00:00:52"
}
]
}
],
keywords
名前
説明
id
キーワードの ID。
text
キーワードのテキスト。
confidence
キーワードの認識の信頼度。
language
キーワードの言語 (翻訳時)。
instances
このキーワードが出現した時間範囲の一覧 (1 つのキーワードが複数回出現する可能性があります)。
{
id: 0,
text: "technology",
confidence: 1,
language: "en-US",
instances: [{
adjustedStart: "0:05:15.782",
adjustedEnd: "0:05:16.249",
start: "0:05:15.782",
end: "0:05:16.249"
},
{
adjustedStart: "0:04:54.761",
adjustedEnd: "0:04:55.228",
start: "0:04:54.761",
end: "0:04:55.228"
}]
}
faces
顔が存在する場合、Azure AI Video Indexer は、すべてのビデオのフレームで Face API を使用して顔と有名人を検出します。
名前
説明
id
顔の ID。
name
顔の名前。 Unknown #0
、識別された著名人、または顧客のトレーニング担当者の場合があります。
confidence
顔識別の信頼度レベル。
description
著名人の説明
thumbnailId
その顔のサムネイルの ID
knownPersonId
既知の人物の場合は、内部 ID。
referenceId
Bing に登録されている著名人の場合は、Bing ID。
referenceType
現時点では Bing のみ。
title
著名人の場合は、その人物のタイトル。 (例: Microsoft's CEO
)。
imageUrl
著名人の場合は、画像の URL。
instances
時間範囲の中で顔が出現したインスタンス。 各インスタンスには thumbnailsIds
値もあります。
"faces": [{
"id": 2002,
"name": "Xam 007",
"confidence": 0.93844,
"description": null,
"thumbnailId": "00000000-aee4-4be2-a4d5-d01817c07955",
"knownPersonId": "8340004b-5cf5-4611-9cc4-3b13cca10634",
"referenceId": null,
"title": null,
"imageUrl": null,
"instances": [{
"thumbnailsIds": ["00000000-9f68-4bb2-ab27-3b4d9f2d998e",
"cef03f24-b0c7-4145-94d4-a84f81bb588c"],
"adjustedStart": "00:00:07.2400000",
"adjustedEnd": "00:00:45.6780000",
"start": "00:00:07.2400000",
"end": "00:00:45.6780000"
},
{
"thumbnailsIds": ["00000000-51e5-4260-91a5-890fa05c68b0"],
"adjustedStart": "00:10:23.9570000",
"adjustedEnd": "00:10:39.2390000",
"start": "00:10:23.9570000",
"end": "00:10:39.2390000"
}]
}]
labels
名前
説明
id
ラベルの ID。
name
ラベルの名前。 たとえば、Computer
や TV
などです。
language
BCP-47 文字列形式のラベルの名前の言語 (翻訳済みの場合)。
instances
このラベルが出現する時間範囲の一覧 (ラベルは複数回出現する場合があります)。各インスタンスには信頼度フィールドがあります。
"labels": [
{
"id": 0,
"name": "person",
"language": "en-US",
"instances": [
{
"confidence": 1.0,
"start": "00: 00: 00.0000000",
"end": "00: 00: 25.6000000"
},
{
"confidence": 1.0,
"start": "00: 01: 33.8670000",
"end": "00: 01: 39.2000000"
}
]
},
{
"name": "indoor",
"language": "en-US",
"id": 1,
"instances": [
{
"confidence": 1.0,
"start": "00: 00: 06.4000000",
"end": "00: 00: 07.4670000"
},
{
"confidence": 1.0,
"start": "00: 00: 09.6000000",
"end": "00: 00: 10.6670000"
},
{
"confidence": 1.0,
"start": "00: 00: 11.7330000",
"end": "00: 00: 20.2670000"
},
{
"confidence": 1.0,
"start": "00: 00: 21.3330000",
"end": "00: 00: 25.6000000"
}
]
}
]
scenes
名前
説明
id
シーンの ID。
instances
このシーンの時間範囲の一覧 (1 つのシーンは 1 つのインスタンスのみを持つことができます)。
"scenes":[
{
"id":0,
"instances":[
{
"start":"0:00:00",
"end":"0:00:06.34",
"duration":"0:00:06.34"
}
]
},
{
"id":1,
"instances":[
{
"start":"0:00:06.34",
"end":"0:00:47.047",
"duration":"0:00:40.707"
}
]
},
]
shots
名前
説明
id
ショットの ID。
keyFrames
ショット内のキーフレームの一覧。 ID と、インスタンスの時間範囲の一覧がそれぞれにあります。 各キーフレーム インスタンスには、キーフレームのサムネイル ID を保持する thumbnailId
フィールドがあります。
instances
このショットの時間範囲の一覧 (1 つのショットは 1 つのインスタンスのみを持つことができます)。
"shots":[
{
"id":0,
"keyFrames":[
{
"id":0,
"instances":[
{
"thumbnailId":"00000000-0000-0000-0000-000000000000",
"start":"0:00:00.209",
"end":"0:00:00.251",
"duration":"0:00:00.042"
}
]
},
{
"id":1,
"instances":[
{
"thumbnailId":"00000000-0000-0000-0000-000000000000",
"start":"0:00:04.755",
"end":"0:00:04.797",
"duration":"0:00:00.042"
}
]
}
],
"instances":[
{
"start":"0:00:00",
"end":"0:00:06.34",
"duration":"0:00:06.34"
}
]
},
]
brands
Azure AI Video Indexer は、音声テキスト変換トランスクリプトやビデオ OCR でビジネスおよび製品のブランド名を検出します。 この情報には、ブランドやロゴ検出の視覚的な認識は含まれません。
"brands": [
{
"id": 0,
"name": "MicrosoftExcel",
"referenceId": "Microsoft_Excel",
"referenceUrl": "http: //en.wikipedia.org/wiki/Microsoft_Excel",
"referenceType": "Wiki",
"description": "Microsoft Excel is a sprea..",
"tags": [],
"confidence": 0.975,
"instances": [
{
"brandType": "Transcript",
"start": "00: 00: 31.3000000",
"end": "00: 00: 39.0600000"
}
]
},
{
"id": 1,
"name": "Microsoft",
"referenceId": "Microsoft",
"referenceUrl": "http: //en.wikipedia.org/wiki/Microsoft",
"description": "Microsoft Corporation is...",
"tags": [
"competitors",
"technology"
],
"confidence": 1.0,
"instances": [
{
"brandType": "Transcript",
"start": "00: 01: 44",
"end": "00: 01: 45.3670000"
},
{
"brandType": "Ocr",
"start": "00: 01: 54",
"end": "00: 02: 45.3670000"
}
]
}
]
statistics
名前
説明
CorrespondenceCount
ビデオ内の通知の数。
SpeakerWordCount
話者あたり単語の数
SpeakerNumberOfFragments
ビデオ内で話者が持っているフラグメント数。
SpeakerLongestMonolog
話者の最も長いモノローグ。 モノローグでの話者の沈黙がある場合、それも含まれます。 モノローグの先頭と末尾の無音は削除されます。
SpeakerTalkToListenRatio
計算は、ビデオの合計時間で割られた話者のモノローグに費やされた時間に基づきます (間の無音は含みません)。 時間は、小数点第 3 位に丸められます。
audioEffects (プレビュー)
名前
説明
id
オーディオ エフェクトの ID。
type
オーディオ エフェクトの種類。
name
JSON のインデックスが作成された言語でのオーディオ エフェクトの種類。
instances
このオーディオ エフェクトが出現する時間範囲の一覧。 各インスタンスに confidence フィールドがあります。
start
+ end
元のビデオの時間の範囲。
adjustedStart
+ adjustedEnd
時間範囲と調整された時間範囲
audioEffects: [{
{
id: 0,
type: "Laughter",
name: "Laughter",
instances: [{
confidence: 0.8815,
adjustedStart: "0:00:10.2",
adjustedEnd: "0:00:11.2",
start: "0:00:10.2",
end: "0:00:11.2"
}, {
confidence: 0.8554,
adjustedStart: "0:00:48.26",
adjustedEnd: "0:00:49.56",
start: "0:00:48.26",
end: "0:00:49.56"
}, {
confidence: 0.8492,
adjustedStart: "0:00:59.66",
adjustedEnd: "0:01:00.66",
start: "0:00:59.66",
end: "0:01:00.66"
}
]
}
],
sentiments
センチメントは、フィールド (Positive
、、Neutral
またはNegative
) によってsentimentType
集計されます。 例: 0-0.1
, 0.1-0.2
。
名前
説明
id
センチメントの ID。
averageScore
センチメントの種類が同じすべてのインスタンスのすべてのスコアの平均値。
instances
このセンチメントが出現する時間範囲の一覧。
sentimentType
種類には Positive
、Neutral
、または Negative
を指定できます。
"sentiments": [
{
"id": 0,
"averageScore": 0.87,
"sentimentType": "Positive",
"instances": [
{
"start": "00:00:23",
"end": "00:00:41"
}
]
}, {
"id": 1,
"averageScore": 0.11,
"sentimentType": "Positive",
"instances": [
{
"start": "00:00:13",
"end": "00:00:21"
}
]
}
]
visualContentModeration
トラン visualContentModeration
スクリプトには、Azure AI Video Indexer が成人向けコンテンツを持つ可能性がある時間範囲が含まれています。 visualContentModeration
が空の場合、成人向けコンテンツは識別されません。
成人向けまたはわいせつなコンテンツを含むビデオでは、プライベート ビューしか利用できない場合があります。 ユーザーは、コンテンツの人間によるレビューの要求を送信できます。 その場合、 IsAdult
属性には人間によるレビューの結果が含まれます。
名前
説明
id
ビジュアル コンテンツ モデレーションの ID。
adultScore
(コンテンツ モデレーションからの) 成人スコア。
racyScore
(コンテンツ モデレーションからの) わいせつスコア
instances
このビジュアル コンテンツ モデレーションが発生した時間範囲の一覧
visualContentModeration の詳細を確認する
"visualContentModeration": [
{
"id": 0,
"adultScore": 0.00069,
"racyScore": 0.91129,
"instances": [
{
"start": "00:00:25.4840000",
"end": "00:00:25.5260000"
}
]
},
{
"id": 1,
"adultScore": 0.99231,
"racyScore": 0.99912,
"instances": [
{
"start": "00:00:35.5360000",
"end": "00:00:35.5780000"
}
]
}
]
textualContentModeration
名前
説明
id
テキスト コンテンツ モデレーションの ID。
bannedWordsCount
禁止された単語の数
bannedWordsRatio
単語の合計数に対する禁止された単語の比率。
textualContentModeration の詳細を確認する
emotions
Azure AI Video Indexer は、音声とオーディオの手掛かりに基づいて感情を識別します。
名前
説明
id
感情の ID。
type
識別されたセンチメントの種類: Joy
、Sadness
、Anger
、または Fear
。
instances
この感情が出現した時間範囲の一覧。
"emotions": [{
"id": 0,
"type": "Fear",
"instances": [{
"adjustedStart": "0:00:39.47",
"adjustedEnd": "0:00:45.56",
"start": "0:00:39.47",
"end": "0:00:45.56"
},
{
"adjustedStart": "0:07:19.57",
"adjustedEnd": "0:07:23.25",
"start": "0:07:19.57",
"end": "0:07:23.25"
}]
},
{
"id": 1,
"type": "Anger",
"instances": [{
"adjustedStart": "0:03:55.99",
"adjustedEnd": "0:04:05.06",
"start": "0:03:55.99",
"end": "0:04:05.06"
},
{
"adjustedStart": "0:04:56.5",
"adjustedEnd": "0:05:04.35",
"start": "0:04:56.5",
"end": "0:05:04.35"
}]
},
{
"id": 2,
"type": "Joy",
"instances": [{
"adjustedStart": "0:12:23.68",
"adjustedEnd": "0:12:34.76",
"start": "0:12:23.68",
"end": "0:12:34.76"
},
{
"adjustedStart": "0:12:46.73",
"adjustedEnd": "0:12:52.8",
"start": "0:12:46.73",
"end": "0:12:52.8"
},
{
"adjustedStart": "0:30:11.29",
"adjustedEnd": "0:30:16.43",
"start": "0:30:11.29",
"end": "0:30:16.43"
},
{
"adjustedStart": "0:41:37.23",
"adjustedEnd": "0:41:39.85",
"start": "0:41:37.23",
"end": "0:41:39.85"
}]
},
{
"id": 3,
"type": "Sad",
"instances": [{
"adjustedStart": "0:13:38.67",
"adjustedEnd": "0:13:41.3",
"start": "0:13:38.67",
"end": "0:13:41.3"
},
{
"adjustedStart": "0:28:08.88",
"adjustedEnd": "0:28:18.16",
"start": "0:28:08.88",
"end": "0:28:18.16"
}]
}
],
topics
Azure AI Video Indexer は、トランスクリプトからメイントピックを推論します。 可能な場合は、第 2 レベルの IPTC 分類が含まれています。
名前
説明
id
トピックの ID。
name
トピックの名前。 (例: Pharmaceuticals
)。
referenceId
トピックの階層を反映する階層リンク。 (例: HEALTH AND WELLBEING/MEDICINE AND HEALTHCARE/PHARMACEUTICALS
)。
confidence
範囲が 0
-1
の信頼度スコア。 高いほど信頼度が高くなります。
language
トピックで使用されている言語。
iptcName
IPTC メディア コード名 (検出された場合)。
instances
現在、Azure AI Video Indexer では、トピックに時間間隔のインデックスは付けられません。 ビデオ全体が間隔として使用されます。
"topics": [{
"id": 0,
"name": "INTERNATIONAL RELATIONS",
"referenceId": "POLITICS AND GOVERNMENT/FOREIGN POLICY/INTERNATIONAL RELATIONS",
"referenceType": "VideoIndexer",
"confidence": 1,
"language": "en-US",
"instances": [{
"adjustedStart": "0:00:00",
"adjustedEnd": "0:03:36.25",
"start": "0:00:00",
"end": "0:03:36.25"
}]
}, {
"id": 1,
"name": "Politics and Government",
"referenceType": "VideoIndexer",
"iptcName": "Politics",
"confidence": 0.9041,
"language": "en-US",
"instances": [{
"adjustedStart": "0:00:00",
"adjustedEnd": "0:03:36.25",
"start": "0:00:00",
"end": "0:03:36.25"
}]
}]
. . .
speakers
名前
説明
id
話者の ID。
name
Speaker #<number>
形式の話者の名前。 (例: Speaker #1
)。
instances
この話者が出現した時間範囲の一覧。
"speakers":[
{
"id":1,
"name":"Speaker #1",
"instances":[
{
"adjustedStart":"0:00:10.21",
"adjustedEnd":"0:00:12.81",
"start":"0:00:10.21",
"end":"0:00:12.81"
}
]
},
{
"id":2,
"name":"Speaker #2",
"instances":[
{
"adjustedStart":"0:00:12.81",
"adjustedEnd":"0:00:17.03",
"start":"0:00:12.81",
"end":"0:00:17.03"
}
]
},
次のステップ
Azure AI Video Indexer API 開発者ポータル を調べる。
アプリケーションにウィジェットを埋め込む方法については、「 Azure AI Video Indexer ウィジェットをアプリケーションに埋め込む 」を参照してください。