你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
AssetFilter
AssetFilter
用于定义资产的流清单筛选器。 定义的筛选器可应用于以下任一流式处理协议:HLS、MPEG-DASH、平滑流式处理和 HDS。 Media Services 基于指定的筛选器动态生成清单。 可以在全局级别定义筛选器 (筛选器) 或资产级别 (AssetFilter
) 。 使用 AssetFilter
可将筛选器应用于特定资源。 使用 Filter
可将筛选器应用于任何资源。
有关动态生成的清单的详细概述和代码示例,请参阅 动态清单概述。
本主题提供 AssetFilter
实体(用于定义本地筛选器)的概述,并且还演示如何使用 Media Services REST API 执行各种操作。
重要
访问媒体服务中的实体时,必须在 HTTP 请求中设置特定标头字段和值。
有关详细信息,请参阅 设置媒体服务 REST API 开发 和使用 媒体服务 REST API 连接到媒体服务。
AssetFilter 属性
属性 | 类型 | 说明 |
---|---|---|
Id 只读。 由媒体服务在创建时设置。 |
Edm.String | 唯一标识符。 |
ParentAssetId |
Edm.String | 父资源的 ID,其中包含这些筛选器的集合。 |
Name |
Edm.String | AssetFilter 的友好名称。 |
PresentationTimeRange |
PresentationTimeRange | PresentationTimeRange 规则组用于筛选清单开始/结束点、演示窗口长度和实时起始位置。 Media Services 使用多个范围的交集来定义最终演示窗口。 |
Tracks |
FilterTrackSelect | 包含 FilterTrackPropertyCondition 的集合。 |
FirstQuality |
FirstQuality | 清单筛选器的第一质量,指示 HLS 的第一质量比特率。 |
创建筛选器
使用 HTTP POST 请求创建筛选器。
方法 | 请求 URI | HTTP 版本 |
---|---|---|
POST | https://< accountname.restv2>。<location.media.azure.net/api/AssetFilters> | HTTP/1.1 |
示例请求
可以在 Fiddler 的“编辑器”选项卡中尝试以下示例。
若要获取最新的 x-ms-version:
,请参阅 媒体服务 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"
}
]
}
]
}
响应
HTTP/1.1 201 Created
. . .
列出筛选器
返回与某个资源关联的所有 AssetFilter。
方法 | 请求 URI | HTTP 版本 |
---|---|---|
GET | https://< accountname.restv2>。<location.media.azure.net/api/Assets ('assetId') /AssetFilters () > | HTTP/1.1 |
通过指定创建实体时返回的 AssetFilter ID 返回特定 AssetFilter。
方法 | 请求 URI | HTTP 版本 |
---|---|---|
GET | https://< accountname.restv2>。<location.media.azure.net/api/> AssetFilters ('assetFilterID') | HTTP/1.1 |
示例请求
可以在 Fiddler 的“编辑器”选项卡中尝试以下示例。
若要获取最新的 x-ms-version:
,请参阅 媒体服务 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
更新筛选器
通过 PATCH、PUT 或 MERGE 使用新的属性值更新 AssetFilter。
注意
如果更新筛选器,则流式处理终结点需要 2 分钟的时间来刷新规则。 如果内容是通过使用此筛选器提供的(并在代理和 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。
请求标头:
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 请求删除筛选器。
方法 | 请求 URI | HTTP 版本 |
---|---|---|
DELETE | https://< accountname.restv2>。<location.media.azure.net/api/AssetFilters ('assetFilterId>') | HTTP/1.1 |
示例请求
可以在 Fiddler 的“编辑器”选项卡中试用以下示例。
若要获取最新的 x-ms-version:
,请参阅 媒体服务 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