import flash.media.Camera; private var camera:Camera; // = Camera.getCamera(); private var cameraId:String = ""; private var cameraNo:Number = 0; private function incno() : void { setid(cameraNo+1); } private function decno() : void { setid(cameraNo-1); } private function setid(n:Number = 0) : void { cameraId = "0"; cameraNo = n; if (n == 1) cameraId = "0"; else if (n == 2) cameraId = "1"; else if (n == 3) cameraId = "2"; else if (n == 4) cameraId = "3"; else if (n == 5) cameraId = "4"; else if (n == 6) cameraId = "5"; else if (n == 7) cameraId = "6"; else if (n == 8) cameraId = "7"; else if (n == 9) cameraId = "8"; cameralabel.label = "" + n; } private function attach() : void { stack.selectedIndex = 2; // activate before attach camera = Camera.getCamera(cameraId); ca.attachCamera(camera); //stack.selectedIndex = state; // delay until ready }
private var state:Number = 0; private var max:Number = 4; private function next():void { state+=1; if (state >= max) state = 0; stack.selectedIndex = state; //if (state == 2) attach(); }
private function loop(e : Event) : void { // shader.data.size.value = [ 10 + Math.random()*20 ]; // if (state == 3) shader.data.size.value = [ 0 + Math.random()*5 ]; stack.filters = [filter]; } private var shader:Shader; private var filter:ShaderFilter;
private function complete():void { //Pass the loaded filter to the Shader as a ByteArray shader = new Shader(new CustomFilter() as ByteArray); // shader.data.size.value = [20.0]; filter = new ShaderFilter(shader); //add the filter to the image stack.filters = [filter]; stage.addEventListener(Event.ENTER_FRAME, loop); } ]]> </mx:Script>
<ae:component_screen id="display"/> <mx:ViewStack id="stack" width="100%" height="100%"> <mx:Canvas> <mx:Image id="im" click="next();" right="0" left="0" top="0" bottom="0" maintainAspectRatio="false" source="@Embed(source='soutine.jpg')"/> </mx:Canvas> <mx:Canvas> <mx:Image id="vd" click="next();" right="0" left="0" top="0" bottom="0" maintainAspectRatio="false" source="@walk.png"/> </mx:Canvas><mx:Canvas> <mx:VideoDisplay id="ca" click="next();" right="0" left="0" top="0" bottom="0" maintainAspectRatio="false" source="../assets/clips/tube/balloon.flv"/> </mx:Canvas> <mx:Panel title="hello world" horizontalAlign="center" paddingTop="10" paddingBottom="10" paddingLeft="10" paddingRight="10"> <mx:Label id="myLabel" width="180" fontWeight="bold" fontSize="24"/> <mx:Button id="myButton" label="click me!" click="click(event);" /> </mx:Panel> </mx:ViewStack> <mx:HBox top="5" right="3"> <mx:VBox> <mx:Button id="cameralabel" color="gray" borderColor="0" fillAlphas="[0, 0]" label="camera" click="attach();"/> <mx:Button color="gray" label="+" click="incno();"/> <mx:Button color="gray" label="-" click="decno();"/> </mx:VBox>