

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
<a name="getting-started-ad-insertion"></a>

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](setting-up.md).

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

Para uma configuração avançada de URL do ADS usando variáveis dinâmicas e parâmetros do player, consulte[MediaTailor variáveis dinâmicas de anúncios para solicitações de ADS](variables.md). Para obter informações sobre a transmissão de parâmetros CDNs, consulte[MediaTailor parâmetros de consulta do manifesto](manifest-query-parameters.md).

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

**Topics**
+ [Pré-requisitos](#prerequisites)
+ [Etapa 1: Acesso AWS Elemental MediaTailor](#access-emt)
+ [Etapa 2: preparar um stream](#getting-started-prep-stream)
+ [Etapa 3: Configurar o URL de solicitação do ADS e os parâmetros de consulta](#getting-started-configure-request)
+ [Etapa 4: Criar uma configuração](#getting-started-add-mapping)
+ [Etapa 5: testar a configuração](#getting-started-test-config)
+ [Etapa 6: enviar a solicitação de reprodução para AWS Elemental MediaTailor](#send-request-to-mediatailor)
+ [Etapa 7 (opcional): monitorar a AWS Elemental MediaTailor atividade](#monitor-step)
+ [Etapa 8: Limpeza](#clean-up)

## Pré-requisitos
<a name="prerequisites"></a>

Antes de começar, é necessário concluir as etapas em [Conf AWS Elemental MediaTailor iguração](setting-up.md).

## Etapa 1: Acesso AWS Elemental MediaTailor
<a name="access-emt"></a>

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

## Etapa 2: preparar um stream
<a name="getting-started-prep-stream"></a>

Configure o servidor de origem a fim de produzir manifestos para HLS ou DASH compatíveis com o AWS Elemental MediaTailor. Seu servidor de origem deve usar portas HTTP padrão (porta 80) ou portas HTTPS (porta 443). MediaTailor não oferece suporte a portas personalizadas para comunicação com o servidor de origem. 

### Prepare um fluxo HLS
<a name="getting-started-prep-stream-hls"></a>

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:
  + **\$1EXT-X-CUE-OUT /\$1EXT -X-CUE-IN** (mais comum) com durações, conforme mostrado no exemplo a seguir.

    ```
    #EXT-X-CUE-OUT:60.00
    #EXT-X-CUE-IN
    ```
  + **\$1EXT-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 obter mais informações, consulte [Compreender o AWS Elemental MediaTailor comportamento de inserção de anúncios](ad-behavior.md).
+ As playlists multivariantes do HLS devem seguir a especificação HLS documentada em [HTTP live](https://tools.ietf.org/html/draft-pantos-http-live-streaming-21#section-4.3.4) streaming: Master playlist tags. Em especial, `#EXT-X-STREAM-INF` deve incluir os campos `RESOLUTION`, `BANDWIDTH` e `CODEC`.

Depois de configurar o stream, observe o prefixo do URL de origem do conteúdo para a playlist multivariante. Você precisa dele para criar a configuração no AWS Elemental MediaTailor, posteriormente neste tutorial.

### Prepare um stream DASH
<a name="getting-started-prep-stream-dash"></a>

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
<a name="getting-started-configure-request"></a>

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.`)

**Example 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\$1id** 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\$1params** são valores dinâmicos fornecidos pelo player

A solicitação de playlist multivariada do player deve fornecer pares de valores-chave que correspondam aos parâmetros de `player_params.` consulta no URL da solicitação do ADS. Para obter mais informações sobre como configurar pares de valores-chave na solicitação para AWS Elemental MediaTailor, consulte. [MediaTailor variáveis dinâmicas de anúncios para solicitações de ADS](variables.md)

Insira o URL “modelo” configurado ao criar o server/ADS mapeamento de origem em MediaTailor, em[Etapa 4: Criar uma configuração](#getting-started-add-mapping).

**Teste**  
Use uma resposta VAST estática do ADS para fins de teste. Idealmente, a resposta VAST retorna uma MP4 representação com qualidade de mezanino que pode ser transcodificada. AWS Elemental MediaTailor Se a resposta do ADS contiver várias representações de reprodução, MediaTailor selecionará a MP4 representação de maior qualidade e resolução e a enviará para o transcodificador.

## Etapa 4: Criar uma configuração
<a name="getting-started-add-mapping"></a>

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/](https://console.aws.amazon.com/mediatailor/).

1. Na página **Configurações**, selecione **Criar configuração**.

1. 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.

1.  Em **Fonte de conteúdo de vídeo**, insira o prefixo do URL da playlist multivariante HLS ou do manifesto DASH desse stream, menos o ID do ativo. Por exemplo, se o URL da playlist multivariante for`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.

1. **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](#getting-started-configure-request) 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 vale para o anúncio de mezanino URLs retornado pelo ADS. Do contrário, o MediaTailor deixa de recuperar e unir anúncios aos manifestos na origem do conteúdo.

1. (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](dash-location-feature.md).

1. (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\$1PERIOD**. Por padrão, MediaTailor trata os manifestos do DASH como manifestos de vários períodos. Para obter mais informações, consulte [Integrando uma fonte MPEG-DASH](manifest-dash.md).

1. Escolha **Criar configuração**.

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

## Etapa 5: testar a configuração
<a name="getting-started-test-config"></a>

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://777788889999.mediatailor.us-east-1.amazonaws.com
  ```
+ `hashed-account-id`é o seu Conta da AWS ID. 

  Exemplo

  ```
  777788889999
  ```
+ `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](#getting-started-add-mapping). 

Usando os valores dos exemplos anteriores, os valores completos URLs são os seguintes.
+ Exemplo: HLS

  ```
  https://777788889999.mediatailor.us-east-1.amazonaws.com/v1/master/AKIAIOSFODNN7EXAMPLE/myOrigin/master.m3u8
  ```
+ Exemplo: DASH

  ```
  https://777788889999.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
<a name="send-request-to-mediatailor"></a>

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](#getting-started-configure-request) devem ser definidas na solicitação de manifesto do player.

**Example**  
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://777788889999.mediatailor.us-east-1.amazonaws.com/v1/master/AKIAIOSFODNN7EXAMPLE/myOrigin/master.m3u8?ads.cust_params=viewerinfo
```

```
https://777788889999.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 [MediaTailor variáveis dinâmicas de anúncios para solicitações de ADS](variables.md).

## Etapa 7 (opcional): monitorar a AWS Elemental MediaTailor atividade
<a name="monitor-step"></a>

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 do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. No painel de navegação do console do IAM, escolha **Perfis** e, em seguida, **Criar perfil**.

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

1. Em **ID da conta**, insira seu Conta da AWS ID.

1. 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.

1. Escolha **Próximo: Permissões**.

1. 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)**:
   + **CloudWatchLogsFullAccess**para fornecer acesso total ao Amazon CloudWatch Logs
   + **CloudWatchFullAccess**para fornecer acesso total à Amazon CloudWatch

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

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

1. 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)**.

   1. Selecione **Editar relação de confiança**.

   1. 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.

   1. Selecione **Atualizar política de confiança**.

## Etapa 8: Limpeza
<a name="clean-up"></a>

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)**.

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

   AWS Elemental MediaTailor remove a configuração.