Solução de problemas
Evite as armadilhas que falham em silêncio
A maior parte destas falha sem erro nenhum. O player carrega, a página parece certa, e uma coisa simplesmente não acontece — que é justamente por isso que estão reunidas aqui, em vez de espalhadas como notas nas páginas onde se aplicam.
play() não faz nada
Navegadores recusam autoplay de vídeo com áudio até o visitante ter interagido com a página. Quando isso acontece, o play() não inicia a reprodução, e parece que nada aconteceu.
Chame a partir de um clique ou toque real, confirme com o video:play, ou ative o SmartAutoPlay no painel, que começa o vídeo mudo e tira o mudo na primeira interação.
Esperar um evento que nunca dispara
O player:ready dispara só no elemento customizado. O iframe:connected dispara só no iframe. Código que espera o errado espera para sempre, sem nenhum erro para apontar.
Se você atende aos dois embeds na mesma página, escute os dois.
Variáveis CSS não fazem nada no iframe
Variáveis CSS param na fronteira de origem, e os atributos fluid e pauseonetouch também. O navegador está aplicando isolamento cross-origin, então não há contorno — reestilizar exige o embed por elemento customizado. Veja Elemento vs iframe.
fluid corta o vídeo ou esconde os CTAs
O fluid faz o player preencher o container. Se esse container tem altura fixa e o player também tem headlines ou chamadas para ação, os dois disputam o mesmo espaço: ou o vídeo é cortado, ou os CTAs ficam fora da área visível.
Limite a largura e deixe o aspect-ratio definir a altura.
<script> na headline nunca executa
Uma tag <script> escrita dentro do HTML da headline é inerte. O campo de JS personalizado é o único caminho de execução para código de headline.
Código da headline não roda sob CSP
Se o seu site envia uma Content Security Policy, a tag do player precisa do mesmo nonce que os seus outros scripts confiáveis carregam. Liberar o scripts.converteai.net não basta sozinho.
Sem o nonce, o player carrega e a headline mostra texto e estilo — só o seu código é ignorado, com uma mensagem de Content Security Policy no console. E no embed em iframe o nonce deliberadamente não é repassado, então código de headline nunca roda lá sob uma política. Configuração completa em JS da headline.
conversionKey está vazio
Ele devolve string vazia até o player estar pronto. Leia depois do player:ready ou do iframe:connected, não no carregamento. Veja Parâmetros de conversão em URLs.
duration é 0
A duração do vídeo é desconhecida até ele carregar, e 0 é o que você recebe nesse meio-tempo. Não é um vídeo de duração zero.