Camara Web Alarma Codigo Fuente

El tamaño del proyecto

  • Ancho 350
  • Alto 600

Crear 2 botones insertando, nuevo simbolo, clic de pelicula, con os siguientes nombres.

  • capture_mc
  • save_mc

Algo asi..

Luego escribimos el siguiente codigo:

//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
stop();
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
import flash.events.ActivityEvent;
import flash.events.StatusEvent;
import flash.media.Microphone;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var rightClickMenu:ContextMenu = new ContextMenu();
var copyright0:ContextMenuItem = new ContextMenuItem("Pagina Principal" );
var copyright1:ContextMenuItem = new ContextMenuItem("Nosotros" );
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
copyright0.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, myLink0 );
copyright0.separatorBefore = false;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
copyright1.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, myLink1 );
copyright1.separatorBefore = false;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
rightClickMenu.hideBuiltInItems();
rightClickMenu.customItems.push(copyright0);
rightClickMenu.customItems.push(copyright1);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
this.contextMenu = rightClickMenu;
function myLink0(e:Event){
navigateToURL(new URLRequest("https://stricker-ruben-dario.webnode.es/"), "_blank" );
}
function myLink1(e:Event){
navigateToURL(new URLRequest("https://stricker-ruben-dario.webnode.es/nosotros/"), "_blank" );
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
import flash.display.Bitmap;
import flash.display.BitmapData;
import com.adobe.images.JPGEncoder;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var snd:Sound = new camerasound(); //nueva instancia de sonido para la "captura" clic de botón
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var bandwidth:int = 0; // La cantidad máxima de ancho de banda que la salida de vídeo actual se puede usar, en bytes por segundo.
var quality:int = 100; // Este valor es de 0 a 100, siendo 1 la más baja calidad.
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var cam:Camera = Camera.getCamera();
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
cam.setQuality(bandwidth, quality);
cam.setMode(320,240,30,false); //setMode (videoWidth, videoHeight, fps de vídeo, área de favor)
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var video:Video = new Video();
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
video.attachCamera(cam);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
video.x = 20;
video.y = 20;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
addChild(video);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var bitmapData:BitmapData = new BitmapData(video.width,video.height);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var bitmap:Bitmap = new Bitmap(bitmapData);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
bitmap.x = 20;
bitmap.y = 270;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
addChild(bitmap);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
capture_mc.buttonMode = true;
capture_mc.addEventListener(MouseEvent.CLICK,captureImage);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
function captureImage(e:MouseEvent):void {
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
snd.play();
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
bitmapData.draw(video);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
save_mc.buttonMode = true;
save_mc.addEventListener(MouseEvent.CLICK, onSaveJPG);
save_mc.alpha = 1;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
save_mc.alpha = .5;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
function onSaveJPG(e:Event):void{
var myEncoder:JPGEncoder = new JPGEncoder(100);
var byteArray:ByteArray = myEncoder.encode(bitmapData);
 
var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream");
 
var saveJPG:URLRequest = new URLRequest("save.php");
saveJPG.requestHeaders.push(header);
saveJPG.method = URLRequestMethod.POST;
saveJPG.data = byteArray;
 
var urlLoader:URLLoader = new URLLoader();
urlLoader.addEventListener(Event.COMPLETE, sendComplete);
urlLoader.load(saveJPG);
 
function sendComplete(event:Event):void{
warn.visible = true;
addChild(warn);
warn.addEventListener(MouseEvent.MOUSE_DOWN, warnDown);
warn.buttonMode = true;
}
}
function warnDown(e:MouseEvent):void{
navigateToURL(new URLRequest("images/"), "_blank");
warn.visible = false;
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
warn.visible = false;
//*************************************************************************************************
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var miTexto:TextField = new TextField();
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var deviceArray:Array = Microphone.names;
trace("Dispositivos de entrada de sonido disponibles:");
for (var i:int = 0; i < deviceArray.length; i++)
{
    trace("   " + deviceArray[i]);
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var mic:Microphone = Microphone.getMicrophone();
mic.gain = 100;
mic.rate = 11;
mic.setUseEchoSuppression(true);
mic.setLoopBack(true);
mic.setSilenceLevel(1, 100);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
mic.addEventListener(ActivityEvent.ACTIVITY, this.onMicActivity);
mic.addEventListener(StatusEvent.STATUS, this.onMicStatus);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
var micDetails:String = "Dispositivo de entrada: " + mic.name + '\n';
micDetails += "Ganancia: " + mic.gain + '\n';
micDetails += "Velocidad: " + mic.rate + " kHz" + '\n';
micDetails += "Silencio: " + mic.muted + '\n';
micDetails += "Nivel de silencio: " + mic.silenceLevel + '\n';
micDetails += "Tiempo de silencio: " + mic.silenceTimeout + '\n';
micDetails += "Supresión del eco: " + mic.useEchoSuppression + '\n';
trace(micDetails);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
function onMicActivity(event:ActivityEvent):void
{
    trace("Actividad: " + event.activating + ", Nivel: " + mic.activityLevel);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    miTexto.text = String(mic.activityLevel) ;
    addChild(miTexto);
   t_resultado.text=miTexto.text;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
if (t_resultado.text >  "1"){
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    t_alarma.text = ("Deteccion de Sonido...")
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    var arrMeses:Array =new Array ("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre","Octubre","Noviembre","Diciembre")
    var arrdias:Array =new Array ("Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado")
var fecha:Date= new Date;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    var hora=fecha.getHours();
    var minuto=fecha.getMinutes();
    var segundo=fecha.getSeconds();
    var dias:String =arrdias [fecha.getDay()];
    var dia=fecha.getDate();
    var mes:String =arrMeses [fecha.getMonth()];
    var año=fecha.getFullYear();
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    t_reloj.text= "Actividad detectada a las: " + hora +":"+ minuto +":"+ segundo ;
    t_fecha.text= "El " + dias + " "  + dia +" de  "+ mes +" de "+ año;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
snd.play();
bitmapData.draw(video);
save_mc.buttonMode = true;
save_mc.addEventListener(MouseEvent.CLICK, onSaveJPG);
save_mc.alpha = 1;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
} else {
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    t_alarma.text = ("Deteccion de Silencio...")}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
function onMicStatus(event:StatusEvent):void
{
    trace("Nivel de estado: " + event.level + ", Código: " + event.code);
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
}

 

Ir al ejemplo   Camara Web sonido.swf (64 kB)