Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 As3在网络摄像头出现在视频上之前播放不必要的延迟_Actionscript 3_Video_Air_Webcam - Fatal编程技术网

Actionscript 3 As3在网络摄像头出现在视频上之前播放不必要的延迟

Actionscript 3 As3在网络摄像头出现在视频上之前播放不必要的延迟,actionscript-3,video,air,webcam,Actionscript 3,Video,Air,Webcam,我正在尝试将摄影机流附加到视频对象(工作正常)。唯一的问题是,在流显示之前有一个长达4秒的延迟。向视频对象(如VideoEvent.READY)或camerea对象(如event.ACTIVATE)添加事件侦听器似乎不会被抛出。(onReady将捕获事件类型为=*)的两个事件。我需要知道,因为当屏幕为白色时,我想显示一个缓冲区,并在显示网络摄像头数据时将其删除 我必须注册参加什么活动 由于这是一个air应用程序,我没有安全对话,以防这是您的第一次尝试;) 我是这样做的: cam = Camera

我正在尝试将摄影机流附加到视频对象(工作正常)。唯一的问题是,在流显示之前有一个长达4秒的延迟。向视频对象(如VideoEvent.READY)或camerea对象(如event.ACTIVATE)添加事件侦听器似乎不会被抛出。(onReady将捕获事件类型为=*)的两个事件。我需要知道,因为当屏幕为白色时,我想显示一个缓冲区,并在显示网络摄像头数据时将其删除

我必须注册参加什么活动

由于这是一个air应用程序,我没有安全对话,以防这是您的第一次尝试;)

我是这样做的:

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...
  }      
}

谢谢大家!

试试这样的方法:

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...
  }      
}