0 3 mins 2 semanas

La gente de Macromedia (ahora Adobe), nos han puesto bastante sencillo lo que en otros lenguajes puede dificultarse un poco. Como plataforma interactiva, Flash permite en pocos pasos controlar el

hardware de entrada y salida. Esto se debe a que incorpora clases predefinidas que distribuyen, a través de propiedades y métodos, todo lo necesario para dominar tanto la emisión de información por la pantalla, impresora y altavoces, como la recepción de datos a través de la red, el teclado, el micrófono o una cámara de video digital. Este último ejemplo es el que utilizaremos para explicar cómo se accede a las funcionalidades de un objeto creado en tiempo de ejecución.

En las últimas ediciones de Flash podemos crear objetos a partir de la clase Camera que, diseñada para utilizarse sobre servidores web, también puede ser ejecutada en modo local para visualizar el contenido captado en tiempo real por una WebCam conectada a nuestra PC.

Para poder obtener información gráfica de la WebCam se debe utilizar un objeto de la clase Video como contenedor. Este puede crearse en tiempo de ejecución, pero podemos hacerlo también manualmente. Para ello, se debe abrir la Biblioteca, hacer clic derecho sobre el área de elementos y seleccionar Nuevo Video. En sus propiedades se debe seleccionar la opción que le permite ser controlado por ActionScript y luego ubicar una instancia en el escenario, a la que nombraremos _video.

Las siguientes líneas capturan los datos provenientes de la WebCam en dicho objeto, con una calidad y ancho de banda determinado:

var webcam:Camera = Camera.get(); // Se inicia la captura
webcam.setQuality(8192,100);
_video.attachVideo(webcam); // Ubicar el objeto en el contenedor de video

Podemos agregar al MovieClip resultante una interfaz, donde se apliquen efectos a la secuencia importada, además de mostrar en cuadros de texto dinámico (o en cualquier componente que lo permita), propiedades intrínsecas del contenido recibido de la WebCam, como la calidad, el ancho de banda y la cantidad de cuadros por segundo. Se pudiera también, mediante propiedades y eventos de la clase Camera, declarar un sensor de movimientos. Con Camera.setMotionLevel() y Camera.onActivity = function(bool){}, se puede lograr muy buenos resultados para situaciones como aquellas donde se desea ejecutar una función ante una cantidad de movimiento específica en la región enfocada por la cámara de video digital.

Para saber más…

Escrito por ZorphDark [blackhat4all@gmail.com]

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *