篩選
Filter
用於定義資產串流資訊清單的篩選。 已定義的篩選可以套用至下列任何串流通訊協定:HLS、MPEG-DASH、Smooth Streaming 和 HDS。 媒體服務會根據指定的篩選動態產生資訊清單。 篩選準則可以在全域層級定義 () Filter
或資產層級 (AssetFilter) 。 使用 Filter
將篩選套用至任何資產。 使用 AssetFilter
將篩選套用至特定資產。
如需動態產生資訊清單的詳細概觀和程式碼範例,請參閱 動態資訊清單概觀。
本主題提供 Filter
用來定義全域篩選) 實體 (的概觀,並示範如何使用媒體服務 REST API 執行各種作業。
重要
在媒體服務中存取實體時,您必須在 HTTP 要求中設定特定的標頭欄位和值。
如需詳細資訊,請參閱媒體服務 REST API 開發和使用媒體服務 REST API 連線到媒體服務。
篩選屬性
屬性 | 類型 | 描述 |
---|---|---|
Name |
Edm.String | 篩選準則的易記名稱。 |
PresentationTimeRange |
PresentationTimeRange | 規則 PresentationTimeRange 群組用於篩選資訊清單開始/結束點、簡報視窗長度,以及即時開始位置。 媒體服務會使用多個範圍的交集來定義最終的簡報視窗。 |
Tracks |
FilterTrackSelect | 包含 的 FilterTrackPropertyCondition 集合。 |
FirstQuality |
FirstQuality | 資訊清單篩選的第一個品質,表示 HLS 的第一個品質位元速率。 |
建立篩選
使用 HTTP POST 要求建立篩選。
方法 | 要求 URI | HTTP 版本 |
---|---|---|
POST | HTTPs:// < accountname.restv2 > 。 <location.media.azure.net/api/Filters > | HTTP/1.1 |
範例要求
您可以在 Fiddler的 [編輯器] 索引標籤中試用下列範例。
若要取得最新的 x-ms-version:
,請參閱 媒體服務 REST。
要求標頭
POST https://<accountname>.restv2.<location>.media.azure.net/api/Filters 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":"Mobile",
"PresentationTimeRange":{
"StartTimestamp":"0",
"EndTimestamp":"9223372036854775807",
"PresentationWindowDuration":"12000000000",
"LiveBackoffDuration":"0",
"Timescale":"10000000"
},
"Tracks":[
{
"PropertyConditions":[
{
"Property":"Type",
"Value":"video",
"Operator":"Equal"
},
{
"Property":"Bitrate",
"Value":"550000-1350000",
"Operator":"Equal"
}
]
}
]
}
回應
HTTP/1.1 201 Created
. . .
清單篩選器
您可以使用 HTTP GET 要求來擷取篩選。
方法 | 要求 URI | HTTP 版本 |
---|---|---|
GET | HTTPs:// < accountname.restv2 > 。 <location.media.azure.net/api/Filters > | HTTP/1.1 |
方法 | 要求 URI | HTTP 版本 |
---|---|---|
GET | HTTPs:// < accountname.restv2 > 。 <location.media.azure.net/api/Filters ('filterName > ') | HTTP/1.1 |
範例要求
您可以在 Fiddler的 [編輯器] 索引標籤中試用下列範例。
若要取得最新的 x-ms-version:
,請參閱 媒體服務 REST。
GET https://<accountname>.restv2.<location>.media.azure.net/api/Filters 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
更新篩選
使用 PATCH、PUT 或 MERGE,以新的屬性值更新篩選。
注意
如果您更新篩選器,則資料流端點需要 2 分鐘的時間來重新整理規則。 如果內容是使用此篩選器提供的 (並快取在 Proxy 與 CDN 快取中),則更新此篩選器會造成播放程式失敗。 建議在更新篩選器之後清除快取。 如果這個選項無法執行,請考慮使用不同的篩選器。
方法 | 要求 URI | HTTP 版本 |
---|---|---|
PATCH/PUT/MERGE 如需這些作業的詳細資訊,請參閱 PATCH/PUT/MERGE。 |
HTTPs:// < accountname.restv2 > 。 <location.media.azure.net/api/Filters ('filterName > ') | HTTP/1.1 |
範例要求
您可以在 Fiddler的 [編輯器] 索引標籤中試用下列範例。
若要取得最新的 x-ms-version:
,請參閱 媒體服務 REST。
要求標頭:
PATCH https://<accountname>.restv2.<location>.media.azure.net/api/Filters('filterName') 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 要求來刪除篩選。
方法 | 要求 URI | HTTP 版本 |
---|---|---|
刪除 | HTTPs:// < accountname.restv2 > 。 <location.media.azure.net/api/Filters ('filterName > ') | HTTP/1.1 |
範例要求
您可以在 Fiddler的 [編輯器] 索引標籤中試用下列範例。
若要取得最新的 x-ms-version:
,請參閱 媒體服務 REST。
DELETE https://<accountname>.restv2.<location>.media.azure.net/api/Filters('Mobile') 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