我正在尝试将相机流附加到视频对象(工作正常)。唯一的问题是,在流出现之前会有长达4秒的延迟。将事件侦听器添加到视频对象(如VideoEvent.READY)或camerea对象(如event.ACTIVATE)似乎不会被抛出。(onReady将捕获事件类型为*的两个事件)。我需要知道,因为当屏幕是白色时,我想显示一个缓冲区,并在显示网络摄像头数据时将其删除。
我必须注册参加什么活动?
由于这是一个空中应用程序,我没有进行安全对话,以防这是你的第一枪;)
我是这样做的:
cam = Camera.getCamera();
cam.addEventListener(Event.ACTIVATE, onReady)
if (cam != null) {
cam.setMode(1920, 1080, 25);
cam.setQuality(0, 100);
video = new Video();
addChild(video);
video.attachCamera(cam);
video.addEventListener(VideoEvent.READY, onReady, false, 0, true);
video.width = 1920;
video.height = 1080
}
谢谢!
试试这样的东西:
function cameraActivityHandler(event:ActivityEvent){
var cam:Camera = event.target as Camera;
if(cam.activityLevel > 0){
//Hide loading buffer...
}
}
function initCamera():void{
cam = Camera.getCamera();
cam.addEventListener(ActivityEvent.ACTIVITY, cameraActivityHandler);
if (cam != null) {
cam.setMode(1920, 1080, 25);
cam.setQuality(0, 100);
video = new Video(1920,1080);
addChild(video);
video.attachCamera(cam);
//Show loading buffer...
}
}