getUserMedia
Importante: até a data de criação desta postagem, para o recurso getUserMedia() é necessário que esteja utilizando um navegador com suporte “beta” ao mesmo, como Google Chrome Canary ou Opera Labs Camera
Caso escolha o Google Chrome Canary, digite na barra de endereços about:flags, habilite a opção ”Enable MediaStream” e reinicie o navegador
Andei estudando sobre getUserMedia e resolvi compartilhar o que tenho aprendido.
Trata-se da maneira em que o HTML captura recursos de mídia locais como câmera e microfone.
Hoje em dia apenas alguns browsers possuem este recurso disponível (como mostrado no caniuse.com) mas, com certeza, é algo que em breve estará disponível em todos os navegadores, devido a chamada WebRTC (explicado no final do texto).
Exemplo de uso do getUserMedia()
No markup do documento:
1
| |
No final do arquivo, antes de </body> e dentro de uma tag <script> (o código está comentado para facilitar o entendimento):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | |
Você pode ver a demonstração do código acima clicando aqui. (caso esteja usando um dos navegadores que suportam getUserMedia).
Aplicações e maneiras de uso
A maioria dos exemplos que estão aparecendo pelo pessoal do chamado “Creative Programming” com uso do getUserMedia baseia-se em uma premissa: canvas.
Eles fazem toda a manipulação capturando a imagem da câmera, transportando ela para um elemento canvas e fazendo toda a manipulação do bitmap como se fosse uma imagem estática. Também começaram a aparecer exemplos utilizando webGL + getUserMedia, como este experimento do Paul Neave: HTML5 Webcam Toy.
Pensando desta maneira, é possível ter uma gama imensa.
WebRTC
WebRTC é um esforço/projeto aberto que tem como foco a realização da comunicação em tempo real (Real Time Communication) através de chamadas simples de APIs Javascript.
Este assunto é está sendo extremamente difundido hoje, mas desde outubro de 2012 o tópico é abordado (rtc-web.alvestrand.com / pessoas/empresas envolvidas).




