ActionScript Управление камерой в эфире - PullRequest
0 голосов
/ 05 января 2012

Кто-нибудь знает имя события, которое отправляется attachCamera (), я хотел бы сделать снимок, загруженный камерой, я пытаюсь выполнить свой код после вызова attachCamera, но он принимает VideoDisplay пустым почему я хотел бы знать, происходит ли событие после полной загрузки attachcamera ().

Ответы [ 3 ]

1 голос
/ 18 мая 2012

Чтобы «сделать» снимок, вам нужно нарисовать растровое изображение, которое использует вход камеры в качестве источника.Вы должны определить x / y контейнера растрового изображения и поместить его внутрь ...

Есть несколько вещей, которые вы можете сделать с растровым изображением после его отрисовки ... Зависит от того, что вы хотите.

0 голосов
/ 22 мая 2012

Таймер сработает, но более прямым решением является обработка первого ActivityEvent, отправленного экземпляром Camera после вызова Video.attachCamera (). Вот так:

var video:Video = new Video();
var camera:Camera = Camera.getCamera();
camera.addEventListener(ActivityEvent.ACTIVITY, onCameraActivity);

private function onCameraActivity (evt:ActivityEvent) :void {
    camera.removeEventListener(ActivityEvent.ACTIVITY, onCameraActivity);

    // wait a bit to ensure the camera frame is not empty    
    var timer:Timer = new Timer(50, 1);
    timer.addEventListener(TimerEvent.TIMER_COMPLETE,
        function (evt:TimerEvent) :void {
            timer.removeEventListener(TimerEvent.TIMER_COMPLETE, arguments.callee);

            // take snapshot here
            var bitmapData:BitmapData = new BitmapData(video.width, video.height);
            bitmapData.draw(video);
        }
    );
    timer.start();
}

РЕДАКТИРОВАТЬ: некоторые камеры требуют немного времени для инициализации, поэтому захват первого кадра после ActivityEvent.ACTIVITY приводит к пустому кадру. Добавлен короткий тайм-аут для решения этой проблемы.

0 голосов
/ 08 января 2012

Вы можете увидеть, как может работать камера, взглянув на этот пример в документации Adobe в классе Camera.Кроме того, исследование о том, как использовать Видео , полезно для понимания того, как Air может использовать канал камеры (это, конечно, зависит от использования Видео класса ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...