Introdução

Este documento explica como usar a API de Vídeo ao Vivo para criar uma transmissão de vídeo ao vivo no seu próprio perfil de usuário usando o seu app. Se você não tiver um app, é possível usar o Explorador da Graph API e um software de streaming gratuito como o OBS ou o Player.me.

Antes de começar

Você precisará do seguinte:

  • Uma conta de desenvolvedor do Facebook
  • Um app do Facebook registrado com as configurações básicas definidas

Se você não tiver um app, também precisará destes itens:

1. Configurar o Login do Facebook

Adicione o produto Login do Facebook ao seu app no Painel de Aplicativos.

Você pode deixar todas as configurações com os valores-padrão. Se estiver implementando o Login do Facebook manualmente (o que não recomendamos), insira o seu redirect_uri no campo URIs de redirecionamento do OAuth válidos. Caso você use um dos nossos SDKs, deixe esse campo em branco.

2. Implementar o Login do Facebook

Siga as instruções na documentação de Login do Facebook referente à sua plataforma e implemente o Login do Facebook no app. Se o app estiver em um dispositivo sem interface de login no Facebook, implemente o Login do Facebook para Dispositivos.

O app precisará das permissões a seguir:

Se o app ainda não estiver pronto e você estiver usando o Explorador da Graph API e um software de streaming, pule esta etapa.

3. Obter um token de acesso

Após implementar o Login do Facebook, verifique se você está conectado à sua conta de desenvolvedor do Facebook, acesse o app e ative o modal de Login do Facebook. Se você estiver usando o Explorador da Graph API, selecione o app no menu suspenso do app do Facebook e clique no botão Gerar token de acesso.

Depois de acionar o modal, clique no menu suspenso e selecione Somente eu. Assim, você será a única pessoa que poderá ver a transmissão. Clique em OK e, no modal seguinte, clique novamente em OK para conceder a permissão publish_video ao app. A API retornará um token de acesso do usuário. Capture o token para que o app possa usá-lo nas consultas seguintes.

Se você estiver usando o Explorador da Graph API, ele será capturado automaticamente e exibido para referência no campo Token de acesso:

4. Criar um objeto LiveVideo

Agora que você tem um token de acesso com a permissão publish_video, é possível usá-lo para criar um objeto LiveVideo no perfil de usuário.

Envie uma solicitação ao ponto de extremidade POST /me/live_videos?status=LIVE_NOW. Por exemplo:

curl -i -X POST \
 "https://graph.facebook.com/v3.3/me/live_videos?status=LIVE_NOW&access_token={access-token}"

A resposta retornada será semelhante a esta:

{ 
  "id": "10214937378883406",  //The LiveVideo object ID
  "stream_url": "rtmp://rtmp-api.faceboo...",
  "secure_stream_url": "rtmps://rtmp-api.faceboo...", //The stream URL
  "stream_secondary_urls": [],
  "secure_stream_secondary_urls": []
}

Capture os valores id e secure_stream_url retornados. O id é o ID do objeto LiveVideo, que pode ser usado para manipular a transmissão. O secure_stream_url é a URL de ingestão que você usará para fazer stream dos dados de vídeo ao vivo do codificador para o objeto LiveVideo.

5. Fazer stream para a URL de stream seguro

Passe o valor secure_stream_url que você capturou na última etapa ao dispositivo de codificação e transmita os dados de vídeo ao vivo para ele. Quando o objeto LiveVideo detectar os dados, a transmissão entrará ao vivo no perfil de usuário.

Visualize o seu perfil para verificar se uma nova publicação de vídeo ao vivo foi criada e está transmitindo os dados de streaming.

Se você estiver usando um software de streaming em vez de desenvolver o próprio app, adicione manualmente o valor secure_stream_url ao software. Dependendo do software de streaming, pode ser necessário dividir a URL de stream no servidor dela (rtmps://rtmp-api.facebook.com/rtmp/) e nos componentes importantes (todas as informações depois de /rtmp/).

Por exemplo, no OBS, escolha OBS > Preferences. Com isso, será aberta a tela Settings. Defina o Service como Facebook Live. Depois, adicione a URL de stream em Settings > Stream > Stream Key e inicie o stream.

6. Finalizar a transmissão

Depois de confirmar que está transmitindo o vídeo ao vivo, finalize a transmissão. Para isso, envie uma solicitação ao ponto de extremidade POST /{live-video-id}?end_live_video=true. Por exemplo:

curl -i -X POST \
  "https://graph.facebook.com/v3.3/{live-video-id}?end_live_video=true&access_token={access-token}"

Com isso, a transmissão será encerrada e salva como um vídeo sob demanda (VOD, pelas iniciais em inglês). Para excluir o VOD, envie uma solicitação ao ponto de extremidade DELETE /{live-video-id}.

Próximas etapas

Veja mais exemplos de uso da API de Vídeo ao vivo para agendar um vídeo ao vivo, publicar em uma Página ou um Grupo e obter as reações e os comentários de usuários em Common Uses.