Home Artigos técnicos Melhor transparência e solução de problemas para inserção de anúncios no lado do servidor (SSAI)
Applications

Melhor transparência e solução de problemas para inserção de anúncios no lado do servidor (SSAI)

About The Author

Outline

Melhorar o fornecimento de publicidade OTT, reprodução e verificação

OTT é uma excelente oportunidade para emissoras e criadores de conteúdo ir além da experiência de TV linear, tornando possível personalizar fluxos de vídeo com base nos interesses de cada espetador. Este alto nível de personalização também é um fator crítico para atrair receita de publicidade para fluxos OTT, permitindo a entrega de publicidade altamente direcionada a taxas premium de CPM.

No entanto, essa oportunidade está sendo mantida por desafios de fornecimento de anúncios, reprodução e verificação. Muitos dos padrões em torno da publicidade OTT estão nascentes e ainda estão evoluindo. Além disso, a depuração e análise aprofundadas em torno da qualidade do serviço (QoS) são muitas vezes limitadas. Também é importante entender a qualidade da experiência (QoE), como se um anúncio fosse reproduzido em níveis de volume consistentes.

Com esses desafios em mente e nosso compromisso contínuo de melhorar o dimensionamento e reduzir a latência, desenvolvemos um serviço de proxy de anúncios dedicado como parte de nossa plataforma. Originalmente projetado como um aprimoramento de back-end para melhorar a escalabilidade de nossa plataforma de streaming, ele também oferece várias vantagens de gerenciamento, incluindo muito mais visibilidade e controle no fluxo de trabalho de fornecimento e fornecimento de anúncios. Essas ferramentas permitem que os editores otimizem a entrega do anúncio certo para o visualizador certo e monitorem a QoS e muitos aspetos da QoE.

Fluxos personalizados com o servidor de manifesto

Em um post anterior, detalhamos o papel do servidor manifesto na personalização de fluxos para incorporar conteúdo publicitário personalizado. Como discutido nesse post, o servidor de manifesto é responsável por fazer solicitações de anúncios, analisar a resposta e, em seguida, baixar e processar criativos de publicidade como qualquer outro conteúdo. O servidor de manifesto então envia um fluxo integrado ao jogador, dando aos espetadores uma experiência mais consistente, maximizando a compatibilidade do dispositivo e ignorando os bloqueadores de anúncios.

Embora o servidor manifesto esteja bem equipado para lidar com a parte de reprodução e personalização, o trabalho envolvido com o fornecimento e verificação de publicidade traz um nível adicional de complexidade e novos desafios. À medida que continuamos a otimizar as arquiteturas de streaming que potenciam experiências personalizadas para milhões de espetadores simultâneos, isso levou ao desenvolvimento de um serviço de proxy de anúncios focado no suporte a essas atividades.

Desafios de sourcing e verificação

Para obter anúncios que serão inseridos em um fluxo, o conteúdo do anúncio deve ser obtido de um servidor de decisão de anúncios (anúncios), como o Freewheel ou o Google Ad Manager. Este processo envolve solicitar anúncios e passar ao longo do fluxo e todas as suas informações para que os anúncios corretos sejam colocados. O desafio é que muitos anúncios em um determinado servidor são apenas wrappers apontando para os anúncios reais em um servidor diferente.

Por exemplo, se houver quatro slots de anúncios a serem preenchidos, dois deles podem ser inseridos diretamente, mas os outros dois podem não ter ativos de anúncios e, em vez disso, são wrappers que dizem: “Seu anúncio não está aqui, é em outro lugar e você precisa ir obtê-lo aqui.” Tentamos desempacotar e obter um recurso de vídeo jogável para cada resposta de anúncio que vemos. Validamos as respostas à medida que as desempacotamos para garantir que um ativo de anúncios jogável esteja pronto para ser cosido no stream. Dado que nossa arquitetura é projetada para entregar um manifesto personalizado a cada espetador, esse processo é repetido para cada sessão, o que pode representar uma carga considerável.

Latência de pesquisa de anúncios

Rastrear ativos através de vários wrappers pode ser uma das principais causas de latência se não for tratada em paralelo. Alguns wrappers nunca se resolvem em um ativo real do anúncio. Para evitar que isso degrade a experiência de vídeo, limitamos essa “queda de água” antes de seguir para buscar o próximo anúncio. A exposição de dados e insights durante esse fluxo de trabalho ajuda os editores a identificar e resolver fontes de demanda que não resultam em anúncios sendo veiculados e garantem que os espetadores tenham uma experiência de visualização ininterrupta enquanto maximizam a receita de anúncios.

Garantir uma experiência de anúncio responsiva também significa analisar o impactos da pesquisa de anúncios no servidor de manifesto, que está ocupado montando fluxos personalizados com latência mínima. O servidor de manifesto não tem recursos ilimitados dedicados à geração e armazenamento de dados de desempenho de anúncios. Ele só armazena as informações de anúncio que precisa para gerar o manifesto, o que pode limitar a disponibilidade de dados para depurar chamadas de anúncio problemáticas e reprodução.

O Serviço de Proxy Ad assume o controlo

Os editores precisam hoje de uma plataforma escalável que interaja e gerencie o processo de inserção de anúncios cada vez mais complexo e forneça visibilidade do fluxo de trabalho e do relacionamento com seus parceiros de anúncios.

Abaixo é mostrada a arquitetura de fluxo do Serviço Ad Proxy. No front-end do fluxo, o jogador solicita o servidor de manifesto até que ele tenha informações suficientes para solicitar anúncios dos anúncios. Uma vez que isso acontece, em vez de entrar em contato com os ANÚNCIOS em si, o servidor manifesto entrega essa tarefa ao Serviço de Proxy de Anúncios. Este descarregamento não só funciona a partir do servidor de manifesto, mas também permite várias outras vantagens, como latência reduzida e captura de muito mais dados de depuração.

O trabalho de busca e verificação de um anúncio é tratado pelo Serviço de Proxy de Anúncios, que libera recursos para que o servidor de manifesto sete os anúncios no fluxo para reprodução e ofereça uma experiência de visualização perfeita.

  1. O jogador solicita um manifesto.
  2. O conteúdo pede a Ad Proxy para buscar anúncios. Depois de receber um identificador exclusivo para o trabalho, o conteúdo passa para outras etapas em uma geração de manifesto.
  3. O Ad Proxy começa a fazer o trabalho solicitado.
    1. O trabalho é colocado em uma fila para esperar que sua vez seja processada.
    2. O servidor “trabalhador” puxa uma tarefa da fila e começa a solicitar ativos de anúncios DOS anúncios e salvar as etapas do trabalho que está sendo feito e quaisquer dados resultantes no banco de dados.
  4. O conteúdo pergunta Ad Proxy, “Onde estão meus anúncios para job x”, referenciando o identificador exclusivo. O Ad Proxy retorna os anúncios ao conteúdo, e o conteúdo os coloca no manifesto e retorna isso ao player.

Escala da pesquisa de anúncios

À medida que o Serviço Ad Proxy recebe solicitações, ele as coloca em fila para continuar recebendo novas solicitações, melhorando a escalabilidade. Ele também fornece ao servidor de manifesto um ID de tarefa como um marcador de posição enquanto os anúncios são rastreados para que o servidor de manifesto possa seguir em frente sem ter que esperar pelo Proxy de anúncio. O TRABALHADOR DE ANÚNCIOS então começa a mastigar os “anúncios” na fila chamando para os anúncios e enviando todos os dados do jogador capturados e outras informações de fluxo para que os ANÚNCIOS possam fornecer os anúncios apropriados. Uma das principais vantagens desse processo é que os TRABALHADORES DE ANÚNCIOS buscam anúncios em paralelo, eliminando possíveis gargalos e reduzindo a latência.

Padronizar dados DE ANÚNCIOS

Durante todo o processo, a comunicação entre o Ad Proxy e OS ANÚNCIOS é gravada juntamente com os anúncios e armazenada em um banco de dados. Os dados, que podem variar de provedor para provedor, são analisados e normalizados com convenções de nomenclatura consistentes. Isso torna muito mais eficiente usar os DADOS DO ADS durante a análise ou depuração.

Entregar os anúncios

O processo é concluído quando o servidor de manifesto chega ao ponto em que ele precisa dos anúncios. Ele chama Ad Proxy e diz: “Aqui está o ID do trabalho que você me deu, me dê os anúncios.” O proxy do anúncio então os busca do banco de dados e os envia junto.

Indexação e armazenamento da atividade do sinalizador de anúncios

O Serviço Ad Proxy também é responsável por capturar e armazenar informações do beacon do jogador, uma chave para garantir a monetização adequada. Os beacons são armazenados como objetos individuais com uma chave primária. Devido a isso, quando o servidor manifesto solicita anúncios, o serviço Ad Proxy também fornece informações de beacon. Então, quando o jogador atinge um ponto de verificação específico, ele dispara um sinalizador baseado no que foi instruído a fazer no manifesto. O beacon worker então busca os objetos do banco de dados e, em seguida, faz atualizações apropriadas para dizer que isso foi disparado neste momento; a resposta de volta DOS ANÚNCIOS foi x, ele teve um erro ou não teve um erro, e ele armazena todas essas informações.

Resolução de problemas de reprodução de anúncios

O acompanhamento e a análise estão incluídos no processo. A arquitetura Ad Proxy fornece informações abrangentes sobre o desempenho e a visualização de anúncios através de uma API, GUI e logs de envio. Sabemos “se” e “por quê” há um problema de anúncio, então não há mais apontar o dedo se um anúncio não carregar – você pode apontar para os dados. Cada sessão é incluída sem configuração adicional, e os dados são acessíveis por um máximo de 14 dias.

Através da API, os editores de conteúdo podem analisar informações como:

  • Dados brutos de solicitação e resposta dos anúncios externos
  • Tempo de resposta e tamanho
  • Número de anúncios devolvidos
  • Localização do ad pod
  • Tipo de dispositivo
  • Número de invólucros
  • Erros (por exemplo, sem retorno de anúncios, falhas de análise, erros de conexão)
  • Avisos de Provedores de Anúncios (por exemplo, um param opcional, mas recomendado, está em falta)
  • Falhas de solicitação (por exemplo, VPAID)

Conclusão

Os editores que desejam envolver cada espetador com uma experiência de vídeo personalizada devem arquitetar suas cargas de trabalho de streaming para escalar. Criar um serviço dedicado para processamento de anúncios não só melhora o desempenho do servidor de manifesto, o mecanismo que alimenta anúncios personalizados, conteúdo e apagões para visualizadores individuais, mas também cria uma ferramenta poderosa para solucionar problemas de fluxos de vídeo suportados por publicidade e garante uma experiência de visualização de TV de alta qualidade.

Com uma melhor compreensão da causa raiz dos problemas com os serviços de proxy de anúncios, os editores de conteúdo e as emissoras têm visibilidade do fluxo de trabalho operacional de anúncios. Eles podem se correlacionar com outros dados para aumentar a retenção do visualizador e maximizar a receita de anúncios.