|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Nov 2010
Сообщений: 91
|
Как правильно получить снапшот с камеры и отправить на сервер
доброе время суток.
столкнулся с такой проблемой, что нужно сделать снапшот пользователя с его камеры, показать ему что сфотографированно и потом отправить это на сервер. нашел вот эту библиотеку http://www.xarg.org/project/jquery-webcam-plugin/. начал разбираться. в итоге в as-файле есть такие ф-ции: public static function capture(time:Number):Boolean {//начало if (null != camera) { if (null != buffer) { return false; } buffer = new BitmapData(Stage.width, Stage.height); ExternalInterface.call('webcam.debug', "notify", "Capturing started."); if ("stream" == mode) { _stream(); return true; } if (!time) { time = -1; } else if (time > 10) { time = 10; } _capture(time + 1);//попадаем сюда return true; } return false; } private static function _capture(time:Number):Void { if (null != interval) { clearInterval(interval); } if (0 == time) { buffer.draw(_root.video); ExternalInterface.call('webcam.onCapture');//здесь конец ExternalInterface.call('webcam.debug', "notify", "Capturing finished."); } else { ExternalInterface.call('webcam.onTick', time - 1); interval = setInterval(_capture, 1000, time - 1); } } заранее спасибо за помощь! |
|
|||||
Регистрация: Mar 2007
Сообщений: 319
|
не понимаю зачем яваскрипт, jquery.
снапшот с отправкой на сервер будет так: var camera:Camera = Camera.getCamera(); var video:Video = new Video(camera.width, camera.height); video.attachCamera(camera); camera.addEventListener(ActivityEvent.ACTIVITY, onActivity); function onActivity (event:Event):void { camera.removeEventListener(ActivityEvent.ACTIVITY, onActivity); var bitmapData:BitmapData = new BitmapData(video.width, video.height); bitmapData.draw(video); var boundary:String = Math.round(Math.random() * 100000000).toString(); var byteArray:ByteArray = new ByteArray(); byteArray.writeUTFBytes("--" + boundary + "\nContent-Disposition: form-data; name=\"Filedata\"; filename=\"foto.png\"\nContent-Type: application/octet-stream\n\n"); bitmapData.encode(bitmapData.rect, new PNGEncoderOptions(), byteArray); byteArray.writeUTFBytes("\n--" + boundary + "-"); var request:URLRequest = new URLRequest("http://localhost/1.php"); request.contentType = "multipart/form-data; boundary=" + boundary; request.data = byteArray; request.method = URLRequestMethod.POST; var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, trace); loader.load(request); } Последний раз редактировалось Nooob; 19.07.2014 в 06:46. |
Часовой пояс GMT +4, время: 20:35. |
|
« Предыдущая тема | Следующая тема » |
|
|