forked from: forked from: falling snow
forked from forked from: falling snow (diff: 393)
import net.hires.debug.Stats;
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();
}
}
