AssetFilter
AssetFilter
は、アセットのストリーミング マニフェスト用のフィルターを定義するために使用されます。 定義したフィルターはストリーミング プロトコルの HLS、MPEG-DASH、Smooth Streaming、HDS のいずれかに適用できます。 Media Services は、指定されたフィルターに基づいてマニフェストを動的に生成します。 フィルターは、グローバル レベル (フィルター) または資産レベル (AssetFilter
) で定義できます。 特定のアセットにフィルターを適用するには、AssetFilter
を使用します。 任意のアセットにフィルターを適用するには、Filter
を使用します。
動的に生成されるマニフェストの詳細な概要とコード サンプルについては、「 動的マニフェストの概要」を参照してください。
このトピックでは、AssetFilter
エンティティ (ローカル フィルターの定義に使用されます) の概説を説明し、Media Services REST API でさまざまな操作を実行する方法を示します。
重要
Media Services でエンティティにアクセスするときは、HTTP 要求で特定のヘッダー フィールドと値を設定する必要があります。
詳細については、「 Media Services REST API 開発のセットアップ」および「Media Services REST APIを使用した Media Services への接続」を参照してください。
AssetFilter のプロパティ
プロパティ | Type | 説明 |
---|---|---|
Id 読み取り専用です。 作成時に Media Services によって設定されます。 |
Edm.String | 一意識別子。 |
ParentAssetId |
Edm.String | これらのフィルターのコレクションを含む親アセットの ID です。 |
Name |
Edm.String | AssetFilter のフレンドリ名です。 |
PresentationTimeRange |
PresentationTimeRange |
PresentationTimeRange ルール グループは、マニフェストの開始/終了ポイント、プレゼンテーションのウィンドウ長、ライブの開始位置をフィルター処理するために使用されます。 Media Services は複数の範囲の共通部分を利用し、最終的なプレゼンテーション ウィンドウを定義します。 |
Tracks |
FilterTrackSelect |
FilterTrackPropertyCondition のコレクションが含まれます。 |
FirstQuality |
FirstQuality | マニフェスト フィルターの最初の品質は、HLS の最初の品質ビットレートを示します。 |
フィルターを作成する
HTTP POST 要求を使用してフィルターを作成します。
Method | 要求 URI | HTTP バージョン |
---|---|---|
POST | <https:// accountname.restv2>。<location.media.azure.net/api/AssetFilters> | HTTP/1.1 |
要求のサンプル
Fiddler の [Composer] タブで次の例を試すことができます。
最新 x-ms-version:
の を取得するには、「 Media Services REST」を参照してください。
要求ヘッダー
POST https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Content-Type: application/json
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
要求本文
{
"Name":"TestFilter",
"ParentAssetId":"nb:cid:UUID:536e555d-1500-80c3-92dc-f1e4fdc6c592",
"PresentationTimeRange":{
"StartTimestamp":"0",
"EndTimestamp":"9223372036854775807",
"PresentationWindowDuration":"12000000000",
"LiveBackoffDuration":"0",
"Timescale":"10000000"
},
"Tracks":[
{
"PropertyConditions":
[
{
"Property":"Type",
"Value":"audio",
"Operator":"Equal"
},
{
"Property":"Bitrate",
"Value":"0-2147483647",
"Operator":"Equal"
}
]
}
]
}
Response
HTTP/1.1 201 Created
. . .
フィルターの一覧
アセットに関連付けられているすべての AssetFilter を返します。
Method | 要求 URI | HTTP バージョン |
---|---|---|
GET | <https:// accountname.restv2>。<location.media.azure.net/api/Assets>('assetId')/AssetFilters() | HTTP/1.1 |
エンティティ作成時に返された AssetFilter ID を指定すると、特定の AssetFilter が返されます。
Method | 要求 URI | HTTP バージョン |
---|---|---|
GET | <https:// accountname.restv2>。<location.media.azure.net/api/> AssetFilters('assetFilterID') | HTTP/1.1 |
要求のサンプル
Fiddler の [Composer] タブで次の例を試すことができます。
最新 x-ms-version:
の を取得するには、「 Media Services REST」を参照してください。
アセットに関連付けられているすべての AssetFilter を取得します。
GET https://<accountname>.restv2.<location>.media.azure.net/api/Assets('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592')/AssetFilters HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
ID に基づいて AssetFilter を取得します。
GET https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592__%23%23%23__TestFilter') HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
フィルターの更新
AssetFilter を新しいプロパティ値で更新するには、PATCH、PUT、または MERGE を使用します。
注意
フィルターを更新する場合、ストリーミング エンドポイントでルールを更新するのに最大 2 分かかります。 このフィルターを使用してコンテンツが処理された場合 (また、プロキシと CDN にキャッシュされている場合)、このフィルターを更新するとプレイヤーでエラーが発生します。 フィルターを更新した後にキャッシュをクリアすることをお勧めします。 このオプションが利用できない場合は、別のフィルターを使用することを検討してください。
Method | 要求 URI | HTTP バージョン |
---|---|---|
PATCH/PUT/MERGE これらの操作の詳細については、「 PATCH/PUT/MERGE」を参照してください。 |
<https:// accountname.restv2>。<location.media.azure.net/api/Filters>('filterName') | HTTP/1.1 |
要求のサンプル
Fiddler の [Composer] タブで次の例を試すことができます。
最新 x-ms-version:
の を取得するには、「 Media Services REST」を参照してください。
要求ヘッダー:
MERGE https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592__%23%23%23__TestFilter') HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Content-Type: application/json
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
x-ms-client-request-id: 00000000-0000-0000-0000-000000000000
Host: media.windows.net
要求本文:
{
"Tracks":[
{
"PropertyConditions":
[
{
"Property":"Type",
"Value":"audio",
"Operator":"Equal"
},
{
"Property":"Bitrate",
"Value":"0-2147483647",
"Operator":"Equal"
}
]
}
]
}
フィルターの削除
フィルターは、HTTP DELETE 要求を使用して削除できます。
Method | 要求 URI | HTTP バージョン |
---|---|---|
DELETE | <https:// accountname.restv2>。<location.media.azure.net/api/AssetFilters>('assetFilterId') | HTTP/1.1 |
要求のサンプル
Fiddler の [Composer] タブで次の例を試すことができます。
最新 x-ms-version:
の を取得するには、「 Media Services REST」を参照してください。
DELETE https://<accountname>.restv2.<location>.media.azure.net/api/AssetFilters('nb%3Acid%3AUUID%3A536e555d-1500-80c3-92dc-f1e4fdc6c592__%23%23%23__TestFilter') HTTP/1.1
DataServiceVersion: 3.0
MaxDataServiceVersion: 3.0
Accept: application/json
Accept-Charset: UTF-8
Authorization: Bearer <token value>
x-ms-version: 2.19
Host: media.windows.net