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.
Tópicos
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
de3
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 exemplo a seguir.
#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 obter mais informações, consulte Entendendo AWS Elemental 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 camposRESOLUTION
,BANDWIDTH
eCODEC
.
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
eRepresentation
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 deavail
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 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
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 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)
Abra o MediaTailor console em https://console.aws.amazon.com/mediatailor/
. -
Na página Configurations (Configurações), selecione Create configuration (Criar configuração).
-
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.
-
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ê digitariahttp://origin-server.com/a/
. Também é possível inserir um prefixo mais curto, comohttp://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.
-
Em Servidor de decisão de anúncios, 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 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.
-
(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.
-
(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 obter mais informações, consulte Integrando uma fonte MPEG-DASH.
-
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://777788889999.mediatailor.us-east-1.amazonaws.com
-
hashed-account-id
é sua Conta da AWS identidade.Exemplo
777788889999
-
origin-id
é o nome dado quando se cria a configuração.Exemplo
myOrigin
-
master.m3u8
oumanifest.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 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
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://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 Usando variáveis dinâmicas de anúncios em 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 for 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)
Abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação do console do IAM, escolha Perfis e, em seguida, Criar perfil.
-
Escolha o outro tipo de Conta da AWS função.
-
Em ID da conta, insira seu Conta da AWS ID.
-
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 osts:ExternalID
correto. -
Escolha Próximo: Permissões.
-
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
-
-
Em Role name (Nome da função), digite
MediaTailorLogger
e escolha Create role (Criar função). -
Na página Roles (Funções), selecione a função recém-criada.
-
Edite a relação de confiança para atualizar a entidade principal:
-
Na página Summary (Resumo) da função, escolha a guia Trust relationship (Relação de confiança).
-
Selecione Edit trust relationship (Editar relação de confiança).
-
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" } } } ] }
-
Selecione Atualizar política de confiança.
-
Etapa 8: Limpeza
Para evitar custos adicionais, exclua todas as configurações desnecessárias.
Para excluir uma configuração (console)
-
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).
-
-
Na caixa de confirmação Delete configuration (Excluir configuração), digite
Delete
e escolha Delete (Excluir) novamente.AWS Elemental MediaTailor remove a configuração.