Introdução à inserção MediaTailor de anúncios - AWS Elemental MediaTailor

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Introdução à inserção MediaTailor de anúncios

Para usar AWS Elemental MediaTailor, você precisa de permissões Conta da AWS e para acessar, visualizar e editar MediaTailor configurações. Para obter informações sobre como fazer isso, consulte Conf AWS Elemental MediaTailor iguração.

Este tutorial de conceitos básicos mostra como executar as seguintes tarefas:

  • Prepare seus fluxos de conteúdo HLS ou DASH

  • Configurar um URL de modelo de servidor de decisão de anúncios (ADS)

  • Crie uma MediaTailor configuração que contenha um endpoint de reprodução

  • Use seu player ou rede de distribuição de conteúdo (CDN) para fazer uma solicitação de reprodução para MediaTailor

Quando terminar, você poderá enviar uma solicitação de reprodução MediaTailor para conteúdo de anúncio personalizado em seu stream.

Pré-requisitos

Antes de começar, é necessário concluir as etapas em Conf AWS Elemental MediaTailor iguração.

Etapa 1: Acesso AWS Elemental MediaTailor

Usando suas credenciais do IAM, faça login no MediaTailor console emhttps://console.aws.amazon.com/mediatailor/home.

Etapa 2: preparar um stream

Configure o servidor de origem a fim de produzir manifestos para HLS ou DASH compatíveis com o AWS Elemental MediaTailor.

Prepare um fluxo HLS

Os manifestos HLS devem atender aos seguintes requisitos:

  • Os manifestos devem ser acessíveis na internet pública.

  • Os manifestos devem ser ao vivo ou vídeo sob demanda (VOD).

  • Os manifestos devem ter um EXT-X-VERSION de 3 ou superior.

  • Para conteúdo ao vivo, os manifestos devem conter marcadores para delinear disponibilidades de anúncios. Isso é opcional para conteúdo VOD, que pode usar deslocamentos de tempo VMAP em vez disso.

    O arquivo manifesto deve ter slots de anúncios marcados com um dos seguintes:

    • #EXT-X-CUE-OUT / #EXT-X-CUE-IN (mais comum) com durações conforme mostrado no seguinte exemplo.

      #EXT-X-CUE-OUT:60.00 #EXT-X-CUE-IN
    • #EXT-X-DATERANGE (menos comum) com durações conforme mostrado no seguinte exemplo.

      #EXT-X-DATERANGE:ID="",START-DATE="",DURATION=30.000,SCTE35-OUT=0xF #EXT-X-DATERANGE:ID="",START-DATE="",DURATION=30.000,SCTE35-OUT=0xF

      Todos os campos mostrados para #EXT-X-DATERANGE são obrigatórios.

    A maneira como você configura os marcadores de anúncios no manifesto influencia se os anúncios são inseridos em um streaming ou substituem outros fragmentos no streaming. Para ter mais informações, consulte Entendendo MediaTailor o comportamento de inserção de anúncios.

  • Os manifestos principais do HLS devem seguir a especificação HLS documentada em HTTP live streaming: Master playlist tags. Em especial, #EXT-X-STREAM-INF deve incluir os campos RESOLUTION, BANDWIDTH e CODEC.

Depois que você tiver configurado o streaming, anote o prefixo do URL de origem do conteúdo do manifesto mestre. Você precisa dele para criar a configuração no AWS Elemental MediaTailor, posteriormente neste tutorial.

Prepare um stream DASH

Os manifestos DASH devem atender aos seguintes requisitos:

  • Os manifestos devem ser acessíveis na internet pública.

  • Os manifestos devem ser ao vivo ou vídeo sob demanda (VOD).

  • Os manifestos devem marcar eventos como disponibilidades de anúncios usando marcadores de inserção por emenda ou marcadores de sinal de tempo. Você pode fornecer os marcadores de anúncios em XML limpo ou em binário codificado em base64. Para inserção de emenda, o out-of-network indicador deve estar ativado. Para marcadores de sinal de tempo, o ID do tipo de segmentação, localizado dentro do UPID de segmentação, deve ser um valor de saída reconhecido por. AWS Elemental MediaTailor A disponibilidade de anúncios começa no início do evento e dura pela duração do evento, se especificada, ou até que o próximo evento começar.

    O exemplo a seguir mostra um evento designado como uma disponibilidade de anúncios usando marcadores de inserção por emenda. A duração dessa disponibilidade de anúncios é a duração do evento.

    <Period start="PT444806.040S" id="123586" duration="PT15.000S"> <EventStream timescale="90000" schemeIdUri="urn:scte:scte35:2013:xml"> <Event duration="1350000"> <scte35:SpliceInfoSection protocolVersion="0" ptsAdjustment="180832" tier="4095"> <scte35:SpliceInsert spliceEventId="4026531855" spliceEventCancelIndicator="false" outOfNetworkIndicator="true" spliceImmediateFlag="false" uniqueProgramId="1" availNum="1" availsExpected="1"> <scte35:Program><scte35:SpliceTime ptsTime="5672624400"/></scte35:Program> <scte35:BreakDuration autoReturn="true" duration="1350000"/> </scte35:SpliceInsert> </scte35:SpliceInfoSection> </Event> </EventStream> <AdaptationSet mimeType="video/mp4" ... </AdaptationSet> </Period>
  • Disponibilidades de anúncios devem ter as mesmas configurações AdaptationSet e Representation de streamings de conteúdo. O AWS Elemental MediaTailor usa essas configurações para transcodificar os anúncios de acordo com o streaming do conteúdo, tendo em vista uma alternância suave entre os dois.

Depois que você configurar o streaming, anote o prefixo do URL de origem do conteúdo do manifesto DASH. Você precisa dela para criar a configuração AWS Elemental MediaTailor, posteriormente neste tutorial.

Etapa 3: Configurar o URL de solicitação do ADS e os parâmetros de consulta

Para determinar os parâmetros de consulta exigidos pelo ADS, gere um URL da tag de anúncio com base no ADS. Esse URL funciona como um modelo para solicitações feitas ao ADS e consiste no seguinte:

  • Valores estáticos

  • Valores gerados por AWS Elemental MediaTailor (indicados por session ou parâmetros de avail consulta)

  • Valores gerados por players, obtidos do aplicativo cliente (indicados por parâmetros de consulta player_params.)

exemplo URL de tag de anúncio de um ADS
https://my.ads.com/ad?output=vast&content_id=12345678&playerSession=[session.id]&cust_params=[player_params.cust_params]

Em que:

  • output e content_id são valores estáticos

  • playerSession= [session.id] é um valor dinâmico fornecido por. AWS Elemental MediaTailor O valor de [session.id] muda para cada sessão de player e resulta em um URL diferente para a solicitação VAST de cada sessão.

  • cust_params são valores dinâmicos fornecidos pelo player

A solicitação de manifesto mestre do player deve fornecer pares de chave/valor correspondentes aos parâmetros de consulta player_params. na URL de solicitação ADS. Para obter mais informações sobre como configurar pares de chave/valor na solicitação ao AWS Elemental MediaTailor, consulte Usando variáveis dinâmicas de anúncios em AWS Elemental MediaTailor.

Insira o URL do “modelo” configurado ao criar o mapeamento de servidor/ADS de origem em, em MediaTailor. Etapa 4: Criar uma configuração

Testar

Use uma resposta VAST estática do ADS para fins de teste. O ideal é que a resposta VAST retorne uma versão MP4 de qualidade de mezanino que o AWS Elemental MediaTailor pode transcodificar. Se a resposta do ADS contiver várias representações de reprodução, MediaTailor selecionará a representação MP4 da mais alta qualidade e resolução e a enviará para o transcodificador.

Etapa 4: Criar uma configuração

A AWS Elemental MediaTailor configuração contém informações de mapeamento para o servidor de origem e o ADS.

Para criar uma configuração (console)
  1. Abra o MediaTailor console em https://console.aws.amazon.com/mediatailor/.

  2. Na página Configurations (Configurações), selecione Create configuration (Criar configuração).

  3. Na seção Configuration (Configuração) na parte inferior da página, em Configuration name (Nome da configuração), digite um nome exclusivo que descreva a configuração. O nome é o principal identificador da configuração. O tamanho máximo permitido é de 512 caracteres.

  4. Em Video content source (Origem do conteúdo de vídeo), insira o prefixo do URL do manifesto mestre HLS ou do manifesto DASH desse streaming, menos o ID do ativo. Por exemplo, se o URL do manifesto mestre fosse http://origin-server.com/a/master.m3u8, você digitaria http://origin-server.com/a/. Também é possível inserir um prefixo mais curto, como http://origin-server.com, mas você deve incluir o /a/ no ID do ativo na solicitação do player para o conteúdo. O tamanho máximo é de 512 caracteres.

    nota

    Caso a origem do conteúdo use HTTPS, o certificado deve ser de uma autoridade de certificação bem conhecida. (Ele não pode ser um certificado autoassinado.) Caso contrário, AWS Elemental MediaTailor não conseguirá se conectar à origem do conteúdo e não poderá veicular manifestos em resposta às solicitações dos jogadores.

  5. Em Ad Decision Server, insira o URL do seu ADS. Esse é o URL com variáveis conforme descrito em Etapa 3: Configurar o URL de solicitação do ADS e os parâmetros de consulta ou o URL VAST estático que você está usando para fins de teste. O tamanho máximo é de 25.000 caracteres.

    nota

    Caso o ADS use HTTPS, o certificado deve ser de uma autoridade de certificação bem conhecida. (Ele não pode ser um certificado autoassinado.) O mesmo acontece com URLs de anúncios de mezanino retornados pelo ADS. Caso contrário, MediaTailor não conseguirá recuperar e incluir anúncios nos manifestos a partir da origem do conteúdo.

  6. (Opcional conforme necessário para o DASH) Em Localização, escolha DISABLED se você tiver regras de roteamento de CDN configuradas para acessar MediaTailor manifestos e estiver usando relatórios do lado do cliente ou se seus jogadores aceitarem redirecionamentos HTTP fixos.

    Para obter mais informações sobre o recurso Location (Local), consulte Recurso de localização do DASH.

  7. (Opcional) Se o seu servidor de origem produz um manifesto DASH de período único, escolha DASH mpd manifest origin type (Tipo de origem do manifesto mpd DASH) e escolha SINGLE_PERIOD. Por padrão, MediaTailor trata os manifestos do DASH como manifestos de vários períodos. Para ter mais informações, consulte Integrando uma fonte MPEG-DASH.

  8. Escolha Criar configuração.

    AWS Elemental MediaTailor exibe a nova configuração na página Configurações.

Etapa 5: testar a configuração

Depois de salvar a configuração, teste o streaming usando um URL no formato apropriado ao protocolo de streaming:

  • Exemplo: HLS

    playback-endpoint/v1/master/hashed-account-id/origin-id/master.m3u8
  • Exemplo: DASH

    playback-endpoint/v1/dash/hashed-account-id/origin-id/manifest.mpd

Em que:

  • playback-endpoint é o endpoint de reprodução exclusivo gerado pelo AWS Elemental MediaTailor quando a configuração foi criada.

    Exemplo

    https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com
  • hashed-account-idé sua Conta da AWS identidade.

    Exemplo

    AKIAIOSFODNN7EXAMPLE
  • origin-id é o nome dado quando se cria a configuração.

    Exemplo

    myOrigin
  • master.m3u8 ou manifest.mpd é o nome do manifesto do streaming de teste mais a extensão do arquivo. Defina isso para que você obtenha um manifesto totalmente identificado ao anexá-lo à origem do conteúdo do vídeo configurada em Etapa 4: Criar uma configuração.

Usando os valores dos exemplos anteriores, os URLs completos são os seguintes.

  • Exemplo: HLS

    https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/master/AKIAIOSFODNN7EXAMPLE/myOrigin/master.m3u8
  • Exemplo: DASH

    https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/dash/AKIAIOSFODNN7EXAMPLE/myOrigin/manifest.mpd

Teste o streaming usando um dos seguintes métodos.

  • Conforme mostrado no exemplo anterior, digite o URL em um player autônomo.

  • Teste o streaming no próprio ambiente do player.

Etapa 6: enviar a solicitação de reprodução para AWS Elemental MediaTailor

Configure o player downstream ou a CDN para enviar solicitações de reprodução ao endpoint de reprodução da configuração fornecido pelo AWS Elemental MediaTailor. Todas as variáveis dinâmicas definidas pelo player usadas no URL de solicitação ADS em Etapa 3: Configurar o URL de solicitação do ADS e os parâmetros de consulta devem ser definidas na solicitação de manifesto do player.

exemplo

Vamos supor que o URL ADS do modelo seja o seguinte.

https://my.ads.com/ad?output=vast&content_id=12345678&playerSession=[session.id]&cust_params=[player_params.cust_params]

Em seguida, defina [player_params.cust_params] na solicitação do player prefaciando o par de valores-chave com. ads. AWS Elemental MediaTailor passa parâmetros que não são precedidos ads. para o servidor de origem em vez do ADS.

O URL de solicitação do player é uma variação dos seguintes exemplos HLS e DASH,

https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/master/AKIAIOSFODNN7EXAMPLE/myOrigin/master.m3u8?ads.cust_params=viewerinfo
https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/dash/AKIAIOSFODNN7EXAMPLE/myOrigin/manifest.mpd?ads.cust_params=viewerinfo

Quando AWS Elemental MediaTailor recebe a solicitação do jogador, ele define as variáveis do jogador com base nas informações da solicitação. O URL da solicitação ADS resultante é uma variação disso.

https://my.ads.com/ad?output=vast&content_id=12345678&playerSession=<filled_in_session_id>&cust_params=viewerinfo

Para obter mais informações sobre como configurar pares de chave/valor a serem passados ao ADS, consulte Usando variáveis dinâmicas de anúncios em AWS Elemental MediaTailor.

Etapa 7 (opcional): monitorar a AWS Elemental MediaTailor atividade

Use a Amazon CloudWatch e o Amazon CloudWatch Logs para rastrear AWS Elemental MediaTailor atividades, como contagens de solicitações, erros e anúncios publicados.

Se esta é a primeira vez que você usa CloudWatch com AWS Elemental MediaTailor, crie uma função AWS Identity and Access Management (IAM) para permitir a comunicação entre os serviços.

Para permitir AWS Elemental MediaTailor o acesso a CloudWatch (console)
  1. Abra o console IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação do console do IAM, escolha Funções e, em seguida, Criar função.

  3. Escolha o outro tipo de Conta da AWS função.

  4. Em ID da conta, insira seu Conta da AWS ID.

  5. Selecione Require external ID (Exigir ID externo) e digite midas. Essa opção adiciona automaticamente uma condição à política de confiança que só permite ao serviço assumir a função caso a solicitação inclua o sts:ExternalID correto.

  6. Escolha Próximo: permissões.

  7. Adicione uma política de permissões que especifique quais ações essa função pode concluir. Selecione uma das seguintes opções e escolha Next: Review (Avançar: revisar):

    • CloudWatchLogsFullAccesspara fornecer acesso total ao Amazon CloudWatch Logs

    • CloudWatchFullAccesspara fornecer acesso total à Amazon CloudWatch

  8. Em Role name (Nome da função), digite MediaTailorLogger e escolha Create role (Criar função).

  9. Na página Roles (Funções), selecione a função recém-criada.

  10. Edite a relação de confiança para atualizar a entidade principal:

    1. Na página Summary (Resumo) da função, escolha a guia Trust relationship (Relação de confiança).

    2. Selecione Edit trust relationship (Editar relação de confiança).

    3. No documento da política, altere a entidade principal para o serviço AWS Elemental MediaTailor . A aparência deve ser semelhante à seguinte.

      "Principal": { "Service": "mediatailor.amazonaws.com" },

      Toda a política deve ser lida da seguinte maneira.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "Midas" } } } ] }
    4. Escolha Update Trust Policy.

Etapa 8: Limpeza

Para evitar custos adicionais, exclua todas as configurações desnecessárias.

Para excluir uma configuração (console)
  1. Na página AWS Elemental MediaTailor Configurações, faça o seguinte:

    • Escolha o Configuration name (Nome da configuração) que deseja excluir.

    • Na coluna Configuration name (Nome da configuração), escolha o botão de opção e Delete (Excluir).

  2. Na caixa de confirmação Delete configuration (Excluir configuração), digite Delete e escolha Delete (Excluir) novamente.

    AWS Elemental MediaTailor remove a configuração.