Suporte

Perguntas frequentes

O software de streaming, ou software de codificação RTMP, pega a chave e a URL de stream RTMP e as envia para o Facebook. Não fornecemos o software de streaming. Muitos streams ao vivo podem usar o OBS (Open Broadcasting Software) ou o Player.me. Ambos oferecem versões gratuitas.

É possível começar a usar a Live API imediatamente. No entanto, se a intenção for criar um stream de qualidade de produção completa, com várias câmeras e gráficos, o processo pode levar de 1 a 2 semanas (ou mais), dependendo da análise do aplicativo.

Há um atraso de cerca de 4 a 5 segundos a partir do momento em que você faz a transmissão ao vivo até seu vídeo ser exibido no Facebook. Você saberá que está no ar ao ver o vídeo sendo reproduzido na sua página de teste (ou pública).

Se estiver enfrentando problemas com relação aos seus streams ao vivo, consulte nosso guia sobre Solução de problemas de vídeos ao vivo. Também recomendamos nosso guia de Especificações para garantir que suas configurações sejam as mais adequadas para um stream ao vivo de qualidade. Se acredita que encontrou um erro, envie sua solicitação diretamente para nossa Ferramenta de erros e um engenheiro entrará em contato com você.

Sim, isso é possível. O segundo stream provavelmente receberá menos notificações inferidas do que o primeiro. Consulte nossa documentação para mais informações sobre como as notificações ao vivo funcionam.

Não necessariamente. Se você quiser fazer stream para duas (ou mais) páginas diferentes, existem codificadores e APIs disponíveis que podem tornar isso possível, como o Wowza e o Streamshark. Embora seja possível fazer stream para páginas diferentes a partir de um codificador, recomendamos fazer um streaming para uma página e compartilhar para as outras páginas. Assim, os comentários, as reações e as contagens de visualizadores ficarão consolidados.

Nossa proporção padrão é 16 x 9, embora façamos a inferência da proporção a partir do stream. Para mais especificações técnicas, consulte nosso guia de Especificações, Conteúdo de marca e Direitos autorais.

Vídeos ao vivo podem ser incorporados com o parâmetro embeddable por meio da API de Vídeo ao vivo.

Envie uma solicitação POST /{live_video_id} e defina o parâmetro embeddable como true. Use uma Página ou Token de acesso do usuário com as mesmas permissões que são solicitadas durante a criação de um vídeo ao vivo.

curl -i -X POST \
 "https://graph.facebook.com/{your-live-video-id}
   ?embeddable=true&access_token={your-access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{your-live-video-id}",
  new JSONObject("{}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-live-video-id}"
           parameters:@{ @"embeddable": @"true",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-live-video-id}',
  'POST',
  {"embeddable":"true"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{your-live-video-id}',
    array (
      'embeddable' => 'true'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Para obter o HTML incorporado, envie uma solicitação GET /{live_video_id}?fields=embed_html. Use uma Página ou Token de acesso do usuário com as mesmas permissões que são solicitadas durante a criação de um vídeo ao vivo.

curl -i -X GET \
 "https://graph.facebook.com/{your-live_video_id}
   ?fields=embed_html
   &access_token={your-access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{your-live_video_id}",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "embed_html");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-live_video_id}"
           parameters:@{ @"fields": @"embed_html",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-live_video_id}',
  'GET',
  {"fields":"embed_html"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{your-live_video_id}',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemplo de resposta

{ "embed_html": "<iframe src=\"https://www.facebook.com/plugins/video.php?href=https%3A%2F%2Fwww.facebook.com%2Fyourpage%2Fvideos%2F{your-page-id}%2F&width=0\" width=\"0\" height=\"0\" style=\"border:none;overflow:hidden\" scrolling=\"no\" frameborder=\"0\" allowTransparency=\"true\" allowFullScreen=\"true\"></iframe>", "id": "{your-live-video-id}" } 

Não, esse é o comportamento esperado. No momento, não oferecemos suporte a assistir vídeos ao vivo em web móvel até que sejam disponibilizados como VODs (vídeos sob demanda). No entanto, se quiser assistir no web móvel a um vídeo ao vivo que tenha sido incorporado a outro site, será feito o redirecionamento para que você assista no aplicativo do Facebook.

Existem algumas razões pelas quais isso pode ter acontecido. Veja alguns dos motivos mais comuns:

  1. Se houver música tocando no plano de fundo do seu vídeo ao vivo, ele pode ser retirado por violação de direitos autorais. Isso pode acontecer durante o vídeo ao vivo ou depois, quando o VOD reproduzir novamente.
  2. Você, ou outro autor da sua página, pode ter excluído o vídeo ao vivo. Se um vídeo ao vivo foi excluído manualmente, não é possível recuperá-lo.
  3. O vídeo pode ter sido sinalizado automaticamente por violação de IP. Se isso ocorrer, o Facebook enviará um email com um link para você analisar a remoção e reenviar o vídeo para revisão da nossa equipe de políticas.

Isso ocorre quando a transmissão não inicia o encerramento ou o processamento após sinalizar o fim do vídeo ao vivo. Certifique-se de ter enviado uma solicitação POST com o parâmetro end_live_video. Se isso ocorrer novamente, registre um erro na nossa ferramenta de erros e certifique-se de incluir o ID do seu vídeo.

A distorção do áudio pode ocorrer quando o Facebook recebe um stream de vídeo com áudio distorcido ou após o recebimento dos quadros, mas antes da recodificação para a transmissão. Uma possível razão para esse tipo de erro é que a taxa de bits usada é maior do que a taxa que a conexão entre o ponto de extremidade da transmissão e os servidores do Facebook pode manter. Se isso acontecer, ou se houver um pacote perdido, parte da faixa de vídeo ou áudio não será recebida corretamente e isso pode causar distorção no áudio.

Problemas de sincronização entre áudio e vídeo podem ocorrer quando uma transmissão ao vivo é entregue com largura de banda limitada ao cliente ou o cliente não tem largura de banda para visualizá-la ao vivo. Além disso, se o stream recebido pelo servidor do Facebook estiver dessincronizado, o vídeo ao vivo também ficará fora de sincronia. Lembre-se de verificar o hardware de gravação e codificação em busca de possíveis locais em que o áudio possa estar desalinhado com o vídeo.

A API de Vídeo ao vivo requer áudio. Se você tentar fazer stream apenas de vídeo, o stream é encerrado.

Seu feed ao vivo pode ser interrompido devido a uma falha no codificador ou conectividade fraca com a rede. Se isso acontecer, você tem de 2 a 3 minutos para se reconectar à URL de stream original gerada para sua publicação ao vivo. Caso contrário, será necessário gerar uma URL e uma chave de stream novas para continuar o stream ao vivo.

Sim, é possível restringir geograficamente (restringir quem pode ver seu vídeo dependendo da localização do visualizador). Confira nosso guia de Usos avançados sobre direcionamento a um público para saber mais sobre o campo targeting do vídeo ao vivo.

Sim, os vídeos retirados por violação de direitos autorais podem ser restaurados. Você receberá uma notificação que oferece a opção de restaurar o vídeo. No entanto, se você não fizer isso ao receber a notificação, o vídeo não poderá mais ser restaurado.

Não. Infelizmente, vídeos ao vivo não podem ser impulsionados no momento.

Atualmente, não há ponto de extremidade para a criação de legendas. No entanto, é possível adicionar legendas às transmissões de LiveVideo após elas serem encerradas ou adicionar legendas ao seu stream de vídeo ao vivo à medida que ele é transmitido para nossos servidores, por meio do padrão de legendas CEA-608.

Para adicionar legendas a um LiveVideo que foi encerrado (por exemplo, com um status de VOD), consulte nosso tópico de ajuda “Como posso adicionar legendas ao vídeo da minha página?”. Para adicionar legendas usando o padrão CEA-608, consulte nosso guia de Legendas.

É contra a política de vídeo ao vivo do Facebook incluir anúncios de terceiros em streams ao vivo. Por exemplo, não inclua bumpers, pre-roll, mid-roll ou post-roll.

Incentivamos todas as transmissões ao vivo a conter exclusivamente conteúdo ao vivo, a fim de preservar a integridade da experiência do visualizador. No entanto, há casos únicos em que o corte em um clipe pré-gravado faz sentido, semelhante ao modo como um programa de notícias pode exibir conteúdo gravado anteriormente na TV ao vivo. Consulte nosso guia de Especificações, Conteúdo de marca e Direitos autorais.

Sim, é possível fazer a publicação cruzada de um vídeo ao vivo. Consulte Como carregar com vídeos de publicação cruzada e a Central de Ajuda, Como fazer a publicação cruzada de outro vídeo da página. Comentários e reações são exibidos somente na página original.

Para aparecer no mapa ao vivo, você precisa definir a localização do seu vídeo. Para isso, use o parâmetro place em uma solicitação POST /{live_video_id}.

Para redefinir uma chave persistente, acesse www.facebook.com/live/create, clique em Criar um stream ao vivo, marque a caixa de seleção Usar uma chave de stream persistente e clique no botão Redefinir.

Como relatar bugs

Caso você encontre bugs na Live API, use a ferramenta de relatos para que um engenheiro possa analisar o problema. Também é possível pesquisar bugs existentes por códigos de erro da API, métodos do SDK e muito mais.

Relatar um bug