在flash中播放多个视频as3

时间:2009-09-03 23:56:42

标签: flash actionscript-3 debugging video size

我有一个只播放两个视频文件的空白项目。无论我尝试什么,第二个视频的大小都与第一个相同。请告诉我这不是Flash错误,我可以做些什么来完成这个。这是我的文档类:

package{

    import flash.display.*;
    import flash.media.*;
    import flash.net.*;

    public class Test extends MovieClip{

        public function Test(){

            var nc = new NetConnection();
            nc.connect(null);
            var ns = new NetStream(nc);
            var vid1 = new Video(120, 88);
            vid1.x = 100;
            vid1.y = 300;
            this.addChild(vid1);

            vid1.attachNetStream(ns);
            ns.client = new Object();
            ns.play("video/testvideo1.flv");    


            var ns2 = new NetStream(nc);
            var vid2 = new Video(600,678);
            vid2.x = 500;
            vid2.y = 50;
            this.addChild(vid2);

            vid2.attachNetStream(ns2);
            ns2.client = new Object();
            ns2.play("video/testvideo2.flv");


        }
    }
}

如果你在(600,768)创建后立即追踪vid2的大小,它会说(120,88) - 第一个视频的大小。

3 个答案:

答案 0 :(得分:1)

请看一下这篇博文:http://synja.com/?p=14

显然你只需要在初始化后指定宽度和高度。所以:

var vid1 = new Video(120, 88);
vid1.width = 120;
vid1.height = 88;

[...]

var vid2 = new Video(600,678);
vid2.width = 600;
vid2.height = 678;

答案 1 :(得分:0)

如果两个视频都没有特殊原因需要在同一个SWF中播放,您可以将这两个视频作为单独的SWF放在一个HTML页面中。如果你需要在它们之间进行一些协调,你可以使用ExternalInterface轻松编写一个JavaScript桥。

答案 2 :(得分:0)

我有两种不同尺寸的视频体验。技巧是创建一个矩形绘图并将其转换为影片剪辑。为该影片剪辑指定实例名称。然后复制该影片剪辑并指定其他实例名称。将2个影片剪辑放在舞台上,并根据您使用调整大小工具所需的大小调整特定影片剪辑的大小。定位每个影片剪辑的实例名称以在舞台上加载您的视频。