package { import ColorVision.Simulate; import ColorVision.Daltonize; import flash.external.ExternalInterface import flash.display.*; import flash.events.*; import flash.system.Security; import flash.net.*; public class Main extends MovieClip { Security.allowDomain("*"); public var defaults = { }; public function filterImage(vars):void{ var tempFilters = [ ]; for(var id in vars) { defaults[id] = vars[id]; // record to defaults } if(defaults.Daltonize) { var daltonize:Daltonize; daltonize = new Daltonize(); daltonize.type = defaults.type; daltonize.amount = defaults.amount; tempFilters.push(daltonize); } if(defaults.Simulate) { var simulate:Simulate; simulate = new Simulate(); simulate.type = defaults.type; simulate.amount = defaults.amount; tempFilters.push(simulate); } this.filters = tempFilters; } private var player:Object; private var loader:Loader; public function Main():void { this.loaderInfo.addEventListener(Event.COMPLETE, function() { defaults.src = "media/Red_Green.jpg"; defaults.type = 1; defaults.amount = 1; defaults.Daltonize = true; defaults.Simulate = true; // Media Loader loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, runMovie); // http://code.google.com/apis/youtube/flash_api_reference.html loader.load(new URLRequest("http://www.youtube.com/apiplayer?version=3")); // loader.load(new URLRequest(defaults.src)); addChild(loader); // ExternalInterface ExternalInterface.addCallback("filterImage", filterImage); ExternalInterface.call("flashLoaded"); }); } public function runMovie(vars):void{ player = Sprite(loader.content); player.addEventListener("onReady", function() { player.loadVideoById("g7Owkm2xjLI"); player.setSize(500, 375); player.mute(); }); } } }