VPC環境で利用できます。
メディアアセットを分析し、分析結果であるインデックスを作成します。メディアアセットの登録が完了した後、分析をリクエストすると、分析プロセスが実行されます。ワークフローの詳細は次の通りです。

リクエスト
リクエスト形式を説明します。リクエスト形式は次の通りです。
| メソッド | URI |
|---|---|
| POST | /api/v1/workspaces/{workspace_name}/projects/{project_id}/assets/{asset_id}/analyze |
リクエストヘッダ
Media Intelligence APIで共通して使用されるヘッダの詳細は、Media Intelligenceのリクエストヘッダをご参照ください。
リクエストパスパラメータ
リクエストパスパラメータの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
workspace_name |
String | Required | ワークスペース名 |
project_id |
String | Required | プロジェクト ID
|
asset_id |
String | Required | メディアアセット ID |
リクエストボディ
リクエストボディの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
sceneRange |
String | Optional | (ビデオ分析時) 自動で分割されるシーンの長さ
|
minSceneDurationSec |
Integer | Optional | (ビデオ分析時) シーンの最小時間 (秒)
|
maxSceneDurationSec |
Integer | Optional | (ビデオ分析時) シーンの最大時間 (秒)
|
analysisPersonCount |
Integer | Required | 分析時に検出する人物の数
|
tagIdList |
Array<String> | Optional | 分析時に検出する人物のタグ
|
sourceLanguage |
enum | Optional | 分析対象ソースの言語情報
|
detectAudioEffects |
Boolean | Optional | (ビデオ分析時)音声効果を検出するか
|
参考
sceneRangeとminSceneDurationSec、maxSceneDurationSecは、同時には使用できません。シーンの長さをカスタム設定する場合は、必ずminSceneDurationSecとmaxSceneDurationSecを併せて入力してください。
リクエスト例
リクエストのサンプルコードは次の通りです。
プリセット方式
curl --location --request POST 'https://mi.apigw.ntruss.com/api/v1/workspaces/my-workspace/projects/1234/assets/5678/analyze' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
"sceneRange": "LONG",
"sourceLanguage": "KO",
"detectAudioEffects": false,
"analysisPersonCount": 3,
"tagIdList": [101, 203, 307]
}'
シーンの長さを直接指定
curl --location --request POST 'https://mi.apigw.ntruss.com/api/v1/workspaces/my-workspace/projects/1234/assets/5678/analyze' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
"minSceneDurationSec": 15,
"maxSceneDurationSec": 60,
"sourceLanguage": "KO",
"detectAudioEffects": false,
"analysisPersonCount": 3
}'
レスポンス
レスポンス形式を説明します。
レスポンスボディ
レスポンスボディの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
code |
String | - | API処理結果コード |
message |
String | - | API処理結果メッセージ |
result |
Object | - | 分析結果 |
result.id |
Integer | - | メディアアセット ID |
result.createdTime |
String | - | インデックスの作成日時
|
result.createdUserName |
String | - | インデックスを作成したユーザー名 |
レスポンスステータスコード
Media Intelligence APIで共通して使用されるレスポンスステータスコードの詳細は、Media Intelligenceのレスポンスステータスコードをご参照ください。
| エラーコード | メッセージ | 説明 |
|---|---|---|
| 400 | sceneRange and minSceneDurationSec/maxSceneDurationSec are mutually exclusive | sceneRangeとカスタム範囲を同時入力 |
| 400 | minSceneDurationSec and maxSceneDurationSec must be provided together | minSceneDurationSecまたはmaxSceneDurationSecを単独で入力 |
| 400 | minSceneDurationSec must be less than or equal to maxSceneDurationSec | minSceneDurationSec > maxSceneDurationSecの場合 |
| 400 | minSceneDurationSec out of range (10–30) | minSceneDurationSecの有効な範囲を超過 |
| 400 | maxSceneDurationSec out of range (25–300) | maxSceneDurationSecの有効な範囲を超過 |
レスポンス例
レスポンスのサンプルコードは次の通りです。
{
"code": "0",
"message": "success",
"result": {
"id": 1001,
"createdTime": "2025-04-23T17:13:48",
"createdUserName": "username"
}
}