Código ActionScript :
import com.adobe.images.JPGEncoder; var video:Video; var camera:Camera; var imgBA:ByteArray; var imgBD:BitmapData; var imgBitmap:Bitmap; var phpPath:String; var jpgEncoder:JPGEncoder; var sendHeader:URLRequestHeader; var sendReq:URLRequest; var sendLoader:URLLoader; var imagePath:String; setupCamera(320,240); setupApplication(); function setupCamera(w:int,h:int):void { try { camera = Camera.getCamera(); } catch(e:Error) { trace("No Camera detected!"); } camera.addEventListener(StatusEvent.STATUS, camStatusHandler); camera.setMode(w,h,stage.frameRate); video = new Video(w,h); video.attachCamera(camera); addChild(video); } function camStatusHandler(event:StatusEvent):void { // Camera.Muted or Camera.Unmuted -> User's security trace(event.code); } function setupApplication():void { shotBtn.addEventListener(MouseEvent.CLICK, createSnapshot); removeBtn.addEventListener(MouseEvent.CLICK, removeSnapshot); sendBtn.addEventListener(MouseEvent.CLICK, sendImage); phpPath = "http://localhost/market/nuevo/saveimg.php" jpgEncoder = new JPGEncoder(90); sendHeader = new URLRequestHeader("Content-type","application/octet-stream"); sendReq = new URLRequest(phpPath); sendReq.requestHeaders.push(sendHeader); sendReq.method = URLRequestMethod.POST; sendLoader = new URLLoader(); sendLoader.addEventListener(Event.COMPLETE,imageSentHandler); } function createSnapshot(event:MouseEvent):void { imgBD = new BitmapData(video.width,video.height); imgBD.draw(video); imgBA.nombre.nombre_txt.text imgBitmap = new Bitmap(imgBD); addChild(imgBitmap); shotBtn.removeEventListener(MouseEvent.CLICK, createSnapshot); } function removeSnapshot(event:MouseEvent):void { removeChild(imgBitmap); shotBtn.addEventListener(MouseEvent.CLICK, createSnapshot); } function sendImage(event:MouseEvent):void { var vars:URLVariables = new URLVariables(); vars.nombre = txtnombre.text; sendReq.data =vars imgBA = jpgEncoder.encode(imgBD); sendReq.data = imgBA; sendLoader.load(sendReq); } function imageSentHandler(event:Event):void { var dataStr:String = event.currentTarget.data.toString(); var resultVars:URLVariables = new URLVariables(); resultVars.decode(dataStr); imagePath = "http://" + resultVars.base + "/" + resultVars.filename; trace("Uploaded to: " + imagePath); trace(nombre); }
en la funcion sendimage, es donde se ejecuta tod ya cuando esta listo la foto, lo he intentado de varias manera, inclusive por el metodo get, pero no me funciona, de ke otra manera puedo meter esa informacion de las cajas de texto en el bytearray, compartir o por separado, gracias