你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

筛选器

Filter 用于定义资源的流清单的筛选器。 定义的筛选器可应用于以下任一流式处理协议:HLS、MPEG-DASH、平滑流式处理和 HDS。 Media Services 基于指定的筛选器动态生成清单。 可以在全局级别定义筛选器 () Filter 或资产级别 (AssetFilter) 。 使用 Filter 可将筛选器应用于任何资源。 使用 AssetFilter 可将筛选器应用于特定资源。

有关动态生成的清单的详细概述和代码示例,请参阅 动态清单概述

本主题提供 Filter 实体(用于定义全局筛选器)的概述,并且还演示如何使用 Media Services REST API 执行各种操作。

重要

访问媒体服务中的实体时,必须在 HTTP 请求中设置特定标头字段和值。
有关详细信息,请参阅设置媒体服务 REST API 开发和使用媒体服务 REST API 连接到媒体服务

筛选器属性

属性 类型 说明
Name Edm.String 筛选器的友好名称。
PresentationTimeRange PresentationTimeRange PresentationTimeRange 规则组用于筛选清单开始/结束点、演示窗口长度和实时起始位置。 Media Services 使用多个范围的交集来定义最终演示窗口。
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 分钟的时间来刷新规则。 如果内容是通过使用此筛选器提供的(并在代理和 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 版本
DELETE <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