Mais boas notícias do nosso velho amigo WebRTC.
Para ser mais preciso: três boas notícias e algumas mudanças menores na API.
RTCDataChannel para Chrome
O RTCDataChannel foi implementado no Chrome, e há uma ótima demonstração em simpl.info/dc.
Esta demonstração mostra a comunicação ponto a ponto de dados arbitrários, em menos de cem linhas de código. Para isso, você precisa do Chrome 25 ou mais recente, o que significa Beta ou Canary.
O RTCDataChannel aproveita ao máximo os recursos integrados à RTCPeerConnection, incluindo o uso do framework ICE para contornar firewalls e NATs, e tem muitos aplicativos em potencial em que a baixa latência é fundamental: jogos, aplicativos de área de trabalho remota, chat de texto em tempo real e transferência de arquivos.
Para mais informações sobre o RTCDataChannel, consulte Primeiros passos com o WebRTC.
Mudanças na API
Menos empolgante, mas ainda importante: a partir do Chrome 26, algumas propriedades da API RTCPeerConnection e MediaStream se tornaram métodos getter:
- A MediaStream agora tem o método
getAudioTracks()
em vez da propriedade audioTracks egetVideoTracks()
em vez devideoTracks
. - A RTCPeerConnection agora tem
getLocalStreams()
em vez delocalStreams
egetRemoteStreams()
em vez deremoteStreams
.
Para conferir a MediaStream em ação, confira a demonstração getUserMedia
simpl.info/gum. A variável stream
está no escopo global: examine-a no console. Da mesma forma, para RTCPeerConnection em simpl.info/pc: os objetos RTCPeerConnection pc1
e pc2
estão no escopo global.
Chrome <=> Firefox
E caso você não tenha perdido, o Chrome agora pode "falar" com o Firefox.
Você pode testar isso agora em webrtc.org/start, que tem instruções completas, links para o código-fonte e informações sobre as diferenças da API.
Agradecimentos aos profissionais da Mozilla e do Google que fizeram tudo acontecer.
Divirta-se com os códigos! Informe qualquer bug nos comentários desta postagem ou em bugs.chromium.org. E não se esqueça: você sempre pode conferir informações atualizadas sobre a implementação no excelente chromestatus.com.