Compartilhar via


Filtrar

Filters são usados para definir filtros para manifestos de streaming de ativos. Os filtros definidos podem ser aplicados a qualquer um dos seguintes protocolos de streaming: HLS, MPEG-DASH, Smooth Streaming e HDS. Os Serviços de Mídia geram manifestos dinamicamente com base em filtros especificados. Os filtros podem ser definidos em um nível global (Filter) ou no nível do ativo (AssetFilter). Use Filter para aplicar filtros a qualquer um de seus ativos. Use AssetFilter para aplicar filtros a um ativo específico.

Para obter uma visão geral detalhada e exemplos de código de manifestos gerados dinamicamente, consulte Visão geral de manifestos dinâmicos.

Este tópico fornece uma visão geral da Filter entidade (usada para definir filtros globais) e também demonstra como executar várias operações com a API REST dos Serviços de Mídia.

Importante

Ao acessar entidades nos serviços de mídia, você deve definir valores e campos de cabeçalho específicos nas suas solicitações HTTP.
Para obter mais informações, consulte Instalação para desenvolvimento de API REST dos Serviços de Mídia e Conexão aos Serviços de Mídia com a API REST dos Serviços de Mídia.

Propriedades do filtro

Propriedade Type Descrição
Name Edm.String Nome amigável do filtro.
PresentationTimeRange PresentationTimeRange O PresentationTimeRange grupo de regras é usado para filtrar pontos de início/término do manifesto, comprimento da janela de apresentação e a posição inicial dinâmica. Os Serviços de Mídia usam interseções de vários intervalos para definir a janela de apresentação final.
Tracks FilterTrackSelect Contém uma coleção de FilterTrackPropertyConditions.
FirstQuality FirstQuality First Quality of Manifest Filter indica a primeira taxa de bits de qualidade para HLS.

Crie um filtro

Crie um filtro usando a solicitação HTTP POST.

Método URI da solicitação Versão de HTTP
POST <https:// accountname.restv2>.<location.media.azure.net/api/Filters> HTTP/1.1

Solicitação de Exemplo

Você pode experimentar o exemplo a seguir na guia Compositor do Fiddler.

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

Cabeçalhos da solicitação

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  
  

Corpo da solicitação

{  
   "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"  
            }  
         ]  
      }  
   ]  
}  

Resposta

HTTP/1.1 201 Created  
. . .  
  

Listar filtros

Os filtros podem ser recuperados usando uma solicitação HTTP GET.

Método URI da solicitação Versão de HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Filters> HTTP/1.1
Método URI da solicitação Versão de HTTP
GET <https:// accountname.restv2>.<location.media.azure.net/api/Filters>('filterName') HTTP/1.1

Solicitação de Exemplo

Você pode experimentar o exemplo a seguir na guia Compositor do Fiddler.

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

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  
  

Atualizar um filtro

Use PATCH, PUT ou MERGE para atualizar um Filtro com novos valores de propriedade.

Observação

Ao atualizar um filtro, talvez sejam necessários até 2 minutos para que o ponto de extremidade do streaming atualize as regras. Se o conteúdo foi servido usando esse filtro (e armazenado em cache nos proxies e caches CDN), atualizar esse filtro pode resultar em falhas do player. É recomendável limpar o cache depois de atualizar o filtro. Se essa opção não for possível, considere usar um filtro diferente.

Método URI da solicitação Versão de HTTP
PATCH/PUT/MERGE

Para obter mais informações sobre essas operações, consulte PATCH, PUT, MERGE.
<https:// accountname.restv2>.<location.media.azure.net/api/Filters>('filterName') HTTP/1.1

Solicitação de Exemplo

Você pode experimentar o exemplo a seguir na guia Compositor do Fiddler.

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

Cabeçalhos de solicitação:

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  
  

Corpo da solicitação:

{  
   "Tracks":[    
      {    
         "PropertyConditions":  
         [    
            {    
               "Property":"Type",  
               "Value":"audio",  
               "Operator":"Equal"  
            },  
            {    
               "Property":"Bitrate",  
               "Value":"0-2147483647",  
               "Operator":"Equal"  
            }  
         ]  
      }  
   ]  
}  
  

Excluir um filtro

Os filtros podem ser excluídos usando uma solicitação HTTP DELETE.

Método URI da solicitação Versão de HTTP
Delete (excluir) <https:// accountname.restv2>.<location.media.azure.net/api/Filters>('filterName') HTTP/1.1

Solicitação de Exemplo

Você pode experimentar o exemplo a seguir na guia Compositor do Fiddler.

Para obter o mais recente x-ms-version:, consulte REST dos Serviços de Mídia.

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