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.
Você precisará do seguinte:
Se você não tiver um app, também precisará destes itens:
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.
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.
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:
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.
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.
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}
.
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.