使用媒体服务 REST API 创建筛选器

媒体服务徽标 v3


正在查找媒体服务 v2 文档?

将内容传送到客户(直播流活动或点播视频)时,客户端所需的灵活性可能比默认资产的清单文件中描述的灵活性更高。 使用 Azure 媒体服务可为内容定义帐户筛选器和资产筛选器。

警告

不建议尝试将媒体服务 REST API 直接包装到你自己的库代码中,因为针对生产用途正确执行此操作会要求你实现完整的 Azure 资源管理重试逻辑,并了解如何在 Azure 资源管理 API 中管理长时间运行的操作。 这由适用于各种语言(.NET、Java、Typescript、Python、Ruby 等)的客户端 SDK 自动为你进行处理,可降低重试逻辑出现问题或 API 调用失败的可能性。 客户端 SDK 都已对此进行了处理。 Postman 集合更多地是作为一种教学工具提供,用于演示在使用各种客户端 SDK 进行开发的过程中,客户端 SDK 在线实际执行的操作。

有关此功能及其使用方案的详细说明,请参阅动态清单筛选器

本主题展示了如何为点播视频资产定义筛选器,以及如何使用 REST API 创建帐户筛选器资产筛选器

注意

请确保查看 presentationTimeRange

必备条件

若要完成本主题中所述的步骤,必须:

定义筛选器

下面是请求正文示例,其中定义了添加到清单的曲目择条件。 此筛选器包括属于 EC-3 的任何音频曲目和比特率在 0-1000000 范围内的任何视频曲目。

{
    "properties": {
        "tracks": [
          {
                "trackSelections": [
                    {
                        "property": "Type",
                        "value": "Audio",
                        "operation": "Equal"
                    },
                    {
                        "property": "FourCC",
                        "value": "EC-3",
                        "operation": "Equal"
                    }
                ]
            },
            {
                "trackSelections": [
                    {
                        "property": "Type",
                        "value": "Video",
                        "operation": "Equal"
                    },
                    {
                        "property": "Bitrate",
                        "value": "0-1000000",
                        "operation": "Equal"
                    }
                ]
            }
        ]
     }
}

创建帐户筛选器

在下载的 Postman 集合中,选择 "帐户筛选器"- 创建或更新帐户筛选器

PUT HTTP 请求方法类似于:

PUT https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/accountFilters/{filterName}?api-version=2018-07-01

选择“正文” 选项卡并粘贴你之前定义的 json 代码。

选择“发送”。

筛选器已创建。

有关详细信息,请参阅创建或更新。 此外,请参阅筛选器的 JSON 示例

创建资产筛选器

在下载的 "媒体服务 v3" Postman 集合中,选择 "资产- 创建或更新资产筛选器"。

PUT HTTP 请求方法类似于:

PUT https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/assetFilters/{filterName}?api-version=2018-07-01

选择“正文” 选项卡并粘贴你之前定义的 json 代码。

选择“发送”。

资产筛选器已创建。

有关如何创建或更新资产筛选器的详细信息,请参阅创建或更新。 此外,请参阅筛选器的 JSON 示例

将筛选器与流定位器关联

可以指定资产或帐户筛选器的列表,这些筛选器将应用于流定位器。 动态打包程序(流式处理终结点)将此筛选器列表与客户端在 URL 中指定的筛选器一起应用。 此组合将生成动态清单,该清单基于你在流定位器上指定的“URL + 筛选器”中的筛选器。 如果要应用筛选器,但不希望在 URL 中公开筛选器名称,建议使用此功能。

若要使用 REST 创建筛选器并将其与流式处理定位符相关联,请使用 流式处理 定位符创建 API 并 请求正文中指定。

使用筛选器的流

定义筛选器后,客户端可以在流式 URL 中使用它们。 筛选器可应用到自适应比特率流式处理协议:Apple HTTP Live Streaming (HLS)、MPEG-DASH 和平滑流式处理。

下表显示了一些包含筛选器的 URL 示例:

协议 示例
HLS https://amsv3account-cne21.streaming.media.chinacloudapi.cn/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=m3u8-aapl,filter=myAccountFilter)
MPEG DASH https://amsv3account-cne21.streaming.media.chinacloudapi.cn/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=mpd-time-csf,filter=myAssetFilter)
平滑流 https://amsv3account-cne21.streaming.media.chinacloudapi.cn/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(filter=myAssetFilter)

后续步骤

流视频