forked from: forked from: falling snow

by xzardaz forked from forked from: falling snow (diff: 393)
import net.hires.debug.Stats;
♥0 | Line 132 | Modified 2013-05-22 21:35:03 | MIT License
play

ActionScript3 source code

/**
 * Copyright xzardaz ( http://wonderfl.net/user/xzardaz )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/50Za
 */

// forked from dmk's forked from: falling snow

// forked from shin-go's falling snow

// forked from shin-go's forked from: webCam

// forked from shin-go's webCam


package {
    
    
//var meg:String="ok";

  import flash.display.AVM1Movie;

  import flash.display.Bitmap;

  import flash.display.BitmapData;

  import flash.display.Sprite;

  import flash.events.ActivityEvent;

  import flash.events.ContextMenuEvent;

  import flash.events.Event;

  import flash.filters.ConvolutionFilter;

  import flash.geom.Point;

  import flash.media.Camera;

  import flash.media.Video;

  import flash.text.TextField;
  import flash.system.Security;

  //import net.hires.debug.Stats;

  import flash.net.NetStream;

  import flash.net.NetConnection;

  import flash.net.Socket;

  public class dd extends Sprite {
      

      protected var video:Video;

      protected var bmpd:BitmapData;

      protected var convolitionFilter:ConvolutionFilter;



        private var secureSocket:CustomSocket;

      public function dd() {
          //Security.loadPolicyFile("http://127.0.0.1/pf.xml");

          // write as3 code here..

          setCamera();

          
        var txt:TextField=addChild(new TextField())as TextField;

          //secureSocket = new CustomSocket();
          //  secureSocket.connect( "127.0.0.1", 10226 );
          //txt.text=secureSocket.sendRequest();
          //txt.text="alabala";

          

          //addChild(new Stats());

      }

      protected function setCamera():void{

          //CameraAVM1Movie
//trace("setcam");
          var camera:Camera = Camera.getCamera();

          if (camera != null) {
              

              camera.setMode(160,120,30);

              camera.setQuality(0,10);

              video = new Video(stage.stageWidth,stage.stageWidth*3/4);

              //video=new Video(camera.width, camera.height);

              video.attachCamera(camera);

              camera.addEventListener(ActivityEvent.ACTIVITY, onActivity);

          camera.addEventListener(Event.DEACTIVATE, onDeactivate);

              addChild(video);
              
              //sequreSocket.sendRequest();

          }else {

              var txt:TextField = addChild(new TextField()) as TextField;

              txt.text = "No Camera!";

          }

      }
      
      

      

      protected function onActivity(e:ActivityEvent):void {

                secureSocket.sendRequest();
          if (e.activating == true) {
              setFilter();

          }else{

              var txt:TextField = addChild(new TextField()) as TextField;

              txt.text = "No Camera!";          }

      }

      protected function onDeactivate(e:Event):void {

            var txt:TextField = addChild(new TextField()) as TextField;

            txt.text = "No Camera!";

      }

      

      protected function setFilter():void {
        //secureSocket.sendRequest();
          var txtfld:TextField=addChild(new TextField()) as TextField;

          if (!bmpd) bmpd = new (1024, 768, false, 0x000000);

          var bmp:Bitmap = addChild(new Bitmap(bmpd)) as Bitmap;

          bmp.width = bmpd.width / 3;

          bmp.height = bmpd.height / 3;

          bmp.x = stage.stageWidth - bmp.width;

          bmpd.draw(video);

          var edges:Array = [0, -1, 0,

                                -1, 4, -1,

                                0, -1, 0];



          convolitionFilter = new (3, 3, edges, 1);

          bmp.filters = [convolitionFilter];

          

          addEventListener(Event.ENTER_FRAME, onEnter);

          function onEnter(e:Event):void {

              bmpd.draw(video);

          }

      }

          

   

  

}



    

}
import flash.text.TextField;







import flash.errors.*;



import flash.events.*;



import flash.net.Socket;







class CustomSocket extends Socket {



    private var response:String;







    public function CustomSocket(host:String = null, port:uint = 0) {



        super();



        configureListeners();



        if (host && port)  {



            super.connect("127.0.0.1", 10226);



        }



    }






    private function configureListeners():void {



        addEventListener(Event.CLOSE, closeHandler);



        addEventListener(Event.CONNECT, connectHandler);



        addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);



        addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);



        addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);



    }







    private function writeln(str:String):void {



        str += "\n";



        try {



            writeUTFBytes(str);



        }



        catch(e:IOError) {



            trace(e);



        }



    }







    public function sendRequest():String {


        
        trace("sendRequest");



        response = "";



        writeln("gg");



        flush();
        return "aksfjdhaskfjdhkasjfkls";



    }







    public function readResponse():void {



        var str:String = readUTFBytes(bytesAvailable);



        response += str;



    }







    private function closeHandler(event:Event):void {



        trace("closeHandler: " + event);



        trace(response.toString());



    }







    private function connectHandler(event:Event):void {



        trace("connectHandler: " + event);



        sendRequest();



    }







    private function ioErrorHandler(event:IOErrorEvent):void {



        trace("ioErrorHandler: " + event);



    }







    private function securityErrorHandler(event:SecurityErrorEvent):void {



        trace("securityErrorHandler: " + event);



    }







    private function socketDataHandler(event:ProgressEvent):void {



        trace("socketDataHandler: " + event);



        readResponse();



    }



}