Player e embed

Coloque vídeos e transmissões da Spalla no seu site — do copiar e colar ao controle total.

O player da Spalla reproduz vídeos sob demanda e transmissões ao vivo no seu site, com qualidade de imagem que se adapta automaticamente à conexão de cada espectador, chat ao vivo e métricas de audiência integradas.

Existem duas formas de colocar o player na sua página:

FormaPara quem éO que exige
IframeQuem só quer o vídeo tocando, do jeito que estáCopiar e colar um código pronto
Player instalávelQuem quer ajustar o comportamento, criar botões próprios ou reagir ao que acontece com o vídeoAdicionar um script à página e um pouco de código

As duas formas mostram o mesmo player — mudam apenas o quanto você pode controlar. Ambas usam o identificador do conteúdo, o código único de cada vídeo ou transmissão na sua conta.

1. Onde fica o ID do conteúdo

Todo vídeo e toda transmissão tem um identificador próprio:

Você encontra esses códigos no Console Spalla, na página do vídeo ou da transmissão, ou na resposta da API no momento da criação. Nos exemplos deste guia eles aparecem como SEU_ID_AQUI — troque esse texto pelo seu código de verdade, sem os sinais de < >.

Precisa de um vídeo para testar?

Se sua conta ainda não tem conteúdo publicado, consulte a Spalla para receber um ID de teste válido para o seu domínio.

2. Caminho rápido: iframe

O iframe é uma "janelinha" dentro da sua página que mostra o player pronto. Não precisa programar nada.

Copie o código abaixo e cole no HTML da sua página, exatamente no lugar onde o vídeo deve aparecer:

<iframe
  src="https://beyond.spalla.io/player/?video=SEU_ID_AQUI"
  allowfullscreen
  width="960"
  height="540"
  allow="autoplay; fullscreen; picture-in-picture"
></iframe>

Em editores de site (WordPress, Wix e similares), use o bloco de HTML personalizado / incorporar código para colar esse trecho.

Troque SEU_ID_AQUI pelo ID do seu vídeo (passo 1).

Ajuste width e height se quiser outro tamanho, em pixels. Para o vídeo preencher toda a largura disponível, use width="100%".

Salve a página e abra no navegador — o vídeo já deve estar tocando no clique de play. Para transmissão ao vivo, troque o parâmetro para ?live=SEU_ID_AQUI, ou seja: https://beyond.spalla.io/player/?live=SEU_ID_AQUI.

Ajustes opcionais vão no final da URL, um depois do outro:

src="https://beyond.spalla.io/player/?video=SEU_ID_AQUI&autoplay=0&muted=1"

O embed já vem com a leitura de parâmetros de URL habilitada — são os mesmos aceitos pelo player instalável:

Prop

Tipo

Nas versões com miniplayer automático, os parâmetros autoPipViewport=1|0 e autoPipBlur=1|0 também são reconhecidos, mas os modos automáticos ficam inativos dentro de iframe — por isso não fazem sentido no embed. A precedência entre URL, construtor e backend está em Ajustes do player.

3. Caminho completo: player instalável

Com o player instalável, o vídeo passa a fazer parte da sua página de verdade — você define opções no código, cria botões próprios e recebe avisos quando algo acontece (veja Ajustes do player e Eventos do player).

Escolha de onde vem o script do player.

  • Via CDN (mais simples): aponte para https://beyond.spalla.io/player/spalla-player.min.js — a URL serve sempre a última versão publicada; não há como fixar uma versão específica por ela.

  • Arquivo próprio (recomendado para produção): baixe o tarball da release do player (ex.: spalla-player-1.0.0.tgz) e o arquivo .sha256 ao lado. Confira a integridade e extraia:

    shasum -a 256 -c spalla-player-1.0.0.tgz.sha256
    tar -xzf spalla-player-1.0.0.tgz

    Assim você decide quando atualizar de versão e consegue conferir a integridade do arquivo — o que a URL da CDN não oferece.

Sirva os arquivos do pacote no seu site.

ArquivoPara que serve
spalla-player.min.jsO player
spalla-player.transmuxer-worker.jsWorker de transmux — hospede no mesmo diretório do player, que o localiza sozinho
wasm_exec.jsReserva para políticas de CSP que proíbem script vindo de blob: (veja Solução de problemas)
LICENSE / THIRD-PARTY-NOTICES.txtLicenças — leia antes de distribuir

O WebAssembly de telemetria e multiCDN já vai embutido no spalla-player.min.js: não há arquivo .wasm separado para servir, a menos que o pacote da sua release inclua um spalla.wasm — nesse caso, hospede-o ao lado do script.

Coloque o espaço do player e o script na página:

<div id="player"></div>

<script src="spalla-player.min.js"></script>

O <div id="player"> é o retângulo onde o vídeo vai aparecer. Ele precisa existir na página antes do código do próximo passo rodar — por isso os scripts ficam no fim do corpo da página (antes de </body>).

Ligue um conteúdo ao player:

<script>
  const player = new SpallaPlayer('#player');
  player.load('SEU_ID_AQUI').catch(function (erro) {
    console.error(erro);
  });
</script>

O primeiro argumento é um seletor CSS (ou um elemento da página). O player detecta sozinho se o ID é de vídeo, live ou playlist. Qualquer opção passada no segundo argumento do construtor sempre vence o que foi configurado no backend da Spalla para aquele conteúdo.

Confirme que carregou. O evento ready só dispara depois que a mídia carrega de fato — escute também os erros:

player.on('ready', (event) => console.info('player pronto', event));
player.on('error', (e) => console.error(e));

Se algo der errado, siga o guia de solução de problemas.

Autoplay com som é bloqueado pelos navegadores

Todo navegador recusa iniciar reprodução com som sem que a pessoa tenha clicado em algo na página. Não é um defeito do player. Comece mudo — new SpallaPlayer('#player', { autoplay: true, muted: true }) — e deixe o espectador ativar o som no controle do próprio player.

4. Regras que valem para os dois caminhos

Domínios autorizados

Você pode restringir em quais domínios o vídeo pode ser incorporado nas configurações do vídeo na API (campo whitelisted_domains), evitando embeds não autorizados.

  • Página no ar, não no disco. O player busca a configuração do conteúdo pela internet: a página precisa ser aberta pelo endereço do site (https://...), não como arquivo salvo no computador (file://).
  • O ID precisa ser da mesma conta/ambiente. Um ID válido em produção não funciona no ambiente de teste, e vice-versa.

Próximos passos

Para personalização avançada, veja skins personalizadas e plugins, apps de TV (LG webOS e Samsung Tizen) e o exemplo em HTML puro no repositório do player.

Nesta página