Flash Player AS -> веб-камера получает буферные байты - PullRequest
0 голосов
/ 25 сентября 2011

Я работаю над системой флеш-видео чата.Мне нужно получить байты видеобуфера от веб-камеры, чтобы можно было передавать видеоконтент через сокет-сервер.Я не уверен, как это сделать, у кого-нибудь есть идеи?Спасибо.

Я знаю, как использовать основы веб-камеры, код:

var camera = Camera.getCamera();
var video = new Video(camera.width, camera.height);
video.attachCamrea(camera);

/*
 I need something like
 var byte_buffer = video.getBytes();
*/

Я не знаю, как это сделать, любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 26 сентября 2011

Нет проблем. Вам нужно будет создать объект BitmapData и «нарисовать» ваш экранный объект - объект, на который ссылается переменная video, - в эти растровые данные. Затем вы можете получить доступ к пикселям, скажем, с помощью метода getPixels, который возвращает ByteArray, который является вашим буферным классом de facto во Flash Player. Рисование похоже на создание растровой копии вашего экранного объекта.

Узнайте больше на Adobe ActionScript 3 Справочник, который должен быть вашим лучшим другом, если вы программируете Flash Player: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/BitmapData.html

Вот код для иллюстрации:

var bd = new BitmapData(320, 240, false, 0x000000);
bd.draw(video);
var byte_buffer = bd.getPixels(); /// For example...
...