如何在actionscript中的两个图层之间插入网络摄像头流?

时间:2014-07-26 10:46:21

标签: actionscript-3 flash video flvplayback

在我的flash项目中,我有3层。 后层包含Flvplayback视频 中间层包含网络摄像头流 前层包含flvplayback视频(透明背景)。

网络摄像头流视频也是透明的。

我从以下代码中添加了流。

webCam=Camera.getCamera();
webCam.setMode(appWidth/scale,appHeight/scale,60);
video=new Video(appWidth/scale,appHeight/scale);
video.smoothing=true;
video.attachCamera(webCam);
bmpdata=new BitmapData(appWidth/scale,appHeight/scale);
bmpdata_bg=new BitmapData(appWidth/scale,appHeight/scale);
bmp=new Bitmap(bmpdata);
bmp.smoothing=true;
bmp.x = 256;
bmp.y = 374;
addChild(bmp);

我使用以下功能更新该网络摄像头流

function onFrameEnter(evt:Event):void {

 bmpdata.draw(video);

}

我想知道如何将此网络摄像头流添加到中间层并播放它。 有没有办法将这个网络摄像头流添加到中间层的flvplayback?

1 个答案:

答案 0 :(得分:0)

据我所知,从Actionscript引用Flash IDE图层是不可能的。但是,您可以执行几种解决方法。

一种是在所需图层中使用实例名称mcStream创建一个空实例动画片段。然后,您可以使用mcStream.addChild(bmp);

另一种方法是引用你想要它的项目(我们称之为mcOverlay)并将其添加到索引中。 addChildAt(bmp, getChildIndex(mcOverlay))这会将其添加到叠加层的位置并将叠加层推到其上方。

我绝对建议您查看http://www.adobe.com/devnet/flash/quickstart/display_list_programming_as3.html