Criando filtros com a CLI

Logotipo dos Serviços de Mídia v3


Aviso

Os Serviços de Mídia do Azure serão desativados em 30 de junho de 2024. Para obter mais informações, consulte o Guia de Desativação do AMS.

Ao fornecer conteúdo aos clientes (eventos de transmissão ao vivo ou vídeo sob demanda), seu cliente pode precisar de mais flexibilidade que o que é descrito no arquivo de manifesto do ativo padrão. Os Serviços de Mídia do Azure permitem definir filtros de conta e filtros de recursos para o seu conteúdo.

Veja a descrição detalhada do recurso e os cenários em que ele é usado em Manifestos dinâmicos e Filtros.

Este tópico mostra como configurar um filtro para um ativo de vídeo sob demanda e usar a CLI para os Serviços de Mídia do Microsoft Azure v3 criem filtros de conta e filtros de ativo.

Observação

Examine presentationTimeRange.

Pré-requisitos

Definir um filtro

O exemplo a seguir define as condições de seleção de faixas adicionadas ao manifesto final. Esse filtro inclui quaisquer faixas de áudio que sejam EC-3 e quaisquer faixas de vídeo com taxa de bits na faixa de 0 a 1000000.

Dica

Se você planeja definir Filtros em REST, é necessário incluir o objeto JSON do wrapper "Propriedades".

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

Crie filtros de conta

O comando az ams account-filter a seguir cria um filtro de conta com seleções de trilha de filtro que foram definidas anteriormente.

O comando permite que passar um parâmetro opcional --tracks que contém o JSON que representa as seleções de faixa. Use @{file} para carregar o JSON de um arquivo. Se estiver usando a CLI do Azure localmente, especifique o caminho do arquivo inteiro:

az ams account-filter create -a amsAccount -g resourceGroup -n filterName --tracks @tracks.json

Além disso, veja exemplos de JSON para filtros.

Crie filtros de ativos

O comando az-s-asset-filter a seguir cria um filtro de ativos com seleções de trilha de filtro definidas anteriormente.

az ams asset-filter create -a amsAccount -g resourceGroup -n filterName --asset-name assetName --tracks @tracks.json

Além disso, veja exemplos de JSON para filtros.

Associar filtros ao Localizador de Streaming

Filtrar seus manifestos HLS ou DASH na criação de um Localizador de Streaming

Os Serviços de Mídia permitem que você crie um Localizador de Streaming pré-filtrado passando uma coleção de filtros na propriedade de filtro na entidade do localizador de streaming. Isso permite que você filtre previamente todos os manifestos no localizador de streaming. O manifesto original não está mais disponível por meio desse localizador de streaming, e somente a resposta filtrada estará acessível para clientes que solicitam as URLs para DASH ou HLS do localizador de streaming filtrado. Isso é útil em situações em que você deseja publicar apenas uma parte de um ativo e impedir que os usuários obtenham acesso ao manifesto original completo do ativo, manipulando a cadeia de caracteres de consulta da URL do manifesto HLS ou DASH. Recomendamos esse recurso caso você queira aplicar filtros sem expor os nomes deles na URL para que os clientes manipulem por conta própria.

Você pode especificar uma lista de filtros de conta ou ativo, ao seu Localizador de Streaming. O Empacotador Dinâmico aplica essa lista de filtros com aqueles que o cliente especifica na URL. Essa combinação gera um Manifesto Dinâmico, que é baseado nos filtros na URL e nos filtros especificados no Localizador de Streaming.

Atualizar os filtros

Filtros e localizadores de streaming podem ser atualizações em tempo real, mas tenha em mente que pode levar até 10 segundos para que todas as atualizações sejam feitas nos servidores Web front-end, e pode haver problemas com o cache de CDN downstream do conteúdo caso você esteja atualizando o mesmo Localizador de Streaming que já foi publicado e usado na produção.

Não é recomendável atualizar a definição de filtros associados a um Localizador de Streaming publicado ativamente, em particular quando a CDN está habilitada. Os servidores de streaming e CDNs podem ter caches internos que podem resultar no retorno de dados armazenados em cache obsoletos.

Se a definição de filtro precisar ser alterada, considere criar um novo filtro e adicioná-lo à URL do Localizador de Streaming ou publicar um Localizador de Streaming totalmente novo que faça referência diretamente ao filtro.

Usar a CLI para criar um Localizador de Streaming filtrado

O código da CLI a seguir mostra como criar um Localizador de Streaming e especificar filters. Essa é uma propriedade opcional que tem uma lista separada por espaço de nomes de filtros de ativos e/ou nomes de filtros de contas.

az ams streaming-locator create -a amsAccount -g resourceGroup -n streamingLocatorName \
                                --asset-name assetName \
                                --streaming-policy-name policyName \
                                --filters filterName1 filterName2

Stream usando filtros

Depois que você definir filtros, seus clientes poderão usá-los na URL de streaming. Os filtros podem ser aplicados a protocolos de streaming de taxa de bits adaptáveis: Apple HTTP Live Streaming (HLS), MPEG-DASH e Smooth Streaming.

A tabela a seguir mostra alguns exemplos de URLs com filtros:

Protocolo Exemplo
HLS https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=m3u8-aapl,filter=myAccountFilter)
MPEG DASH https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=mpd-time-csf,filter=myAssetFilter)
Smooth Streaming https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(filter=myAssetFilter)

Confira também

CLI do Azure

Obter ajuda e suporte

Você pode entrar em contato com os Serviços de Mídia com perguntas ou seguir nossas atualizações por um dos seguintes métodos: