Publicação WebRTC por WHIP¶
WHIP envia vídeo e áudio de um codificador ao Agora por WebRTC. Este guia usa o stream studio; após publicar, você pode assisti-lo por WHEP.
Prepare o stream¶
- Em Streams, crie ou abra
studio. Em Fontes, adicione uma entrada Publish e salve. - Em Layout, encontre o streamer que executa o stream. WHIP precisa do endereço HTTP(S) acessível desse streamer.
- Configure um token de publicação permitido em
auth.publish_tokenspelo central, ou autorize a publicação pelo backend. Entregue o token ao emissor. As permissões de publicação e reprodução são independentes.
Verifique a rede¶
As portas WebRTC do streamer podem ficar vazias: o serviço seleciona uma porta UDP livre. Se a rede limita portas de entrada, configure uma fixa, por exemplo 5005, e permita UDP do codificador e dos espectadores. Um proxy HTTPS sozinho não transporta mídia UDP.
Atrás de NAT, os candidatos ICE devem anunciar um endereço acessível pelo cliente. A seleção automática da porta não adiciona endereço público nem TURN. Veja a referência de rede do Sapsan.
Conecte o emissor¶
No OBS Studio, abra Settings → Stream e configure:
- Service:
WHIP. - Server:
https://streamer.example.com/streaming/whip/studio. - Bearer Token: o token de publicação.
Os campos estão no guia do OBS. Substitua streamer.example.com pelo endereço do streamer receptor. Se um proxy termina HTTPS, ele deve encaminhar /streaming/whip/ para esse streamer.
Selecione vídeo H.264 e áudio Opus e inicie a transmissão. AV1 também é suportado se o emissor e os espectadores o suportarem. Use uma única codificação de vídeo; o servidor não cria uma escada ABR a partir de simulcast WHIP.
Verifique a publicação¶
Abra a ficha do stream: a entrada Publish deve receber dados, e as informações de mídia devem mostrar vídeo e, quando houver áudio, Opus. Depois, conecte um reprodutor WHEP.
Um stream aceita um emissor WHIP ativo. Pare a transmissão antes de trocar de emissor. Após uma desconexão, o emissor deve reconectar; aplicam-se as regras de redundância.
Se a conexão falhar¶
| Sintoma | Verificação |
|---|---|
403 |
Token e permissão de publicação. |
404 |
Nome do stream, estado e streamer selecionado. |
409 |
Entrada Publish salva e livre; outro emissor pode estar usando-a. |
400 ou 415 |
SDP e codecs: vídeo H.264/AV1 e áudio Opus. |
501 no PATCH |
Desative Trickle ICE e reinício ICE: o serviço aceita SDP inicial completo. |
| HTTP conecta, mas não chega mídia | Acesso UDP e endereço ICE do streamer. |