你当前正在访问 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