最多可拉出12个RTMP流

时间:2013-07-01 21:26:48

标签: actionscript-3 flash

我对这个网站非常新!我一直在阅读过去几晚的代码!从发布具有网络访问权限的Flash项目,以便它可以联系互联网到RTMP应用程序和流媒体。但我已经碰壁了,我不想走错路,因为我的大部分工作都是在这个网站上有点有用的信息。请告诉我我不是公司的老板,所以我不再做很多编码了,我肯定忘记了我的大部分PHP编码背景,请不要因为哑巴或“noob”而打击我。但是,由于我已经通过flash和actionscripts3编程实现了这一点,我认为如果我向更聪明的人提出一些问题就不会受到伤害!

目前我正在开发一个单窗口闪存项目,这将允许我最多提取12个实时RTMP流。目前我已经能够做的一切,到目前为止我有一个工作代码,只需要拉一个RTMP字符串。花了我3天的代码从互联网上下载,让它工作。我已成功获得一个带动作脚本的流

package com.endseven {

    import flash.events.NetStatusEvent;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;

    import com.endseven.RTMPStream;

    public class Downstream extends RTMPStream {

        /* the constructor. */
        public function Downstream():void {

            trace("Downstream object has been created."); // debug trace..

            this.oVideo = new Video(640, 480);

            this.oConnection = new NetConnection();
            this.oConnection.addEventListener(NetStatusEvent.NET_STATUS, eNetStatus, false, 0, true);
            this.oConnection.connect(this.sMediaServerURL);

        }

        /* triggered when a net status event is received. */
        private function eNetStatus(oEvent1:NetStatusEvent) {

            trace("NetStatusEvent: " + oEvent1.info.code); // debug trace..

            switch (oEvent1.info.code) {
            case "NetConnection.Connect.Success":

                // create a stream for the connection..
                this.oNetStream = new NetStream(oConnection);
                this.oNetStream.addEventListener(NetStatusEvent.NET_STATUS, eNetStatus, false, 0, true);
                this.oNetStream.bufferTime = 5; // set this to whatever is comfortable..

                // listen for meta data..
                this.oMetaData.onMetaData = eMetaDataReceived;
                this.oNetStream.client = this.oMetaData;

                // attach the stream to the stage..
                this.oVideo.attachNetStream(oNetStream);
                this.oNetStream.play(sStreamName);
                this.addChildAt(this.oVideo, 0);

                trace("Connected to the RTMP server."); // debug trace..
                break;

            case "NetConnection.Connect.Closed":

                trace("Disconnected from the RTMP server."); // debug trace..
                break;

            case "NetStream.Play.StreamNotFound":

                trace("This stream is currently unavailable."); // debug trace..
                break;

            }

        }

    }

}

这是actionscript3代码,它是我唯一可以使用的代码。但这只会在单个显示器上插入单个流。我的意思是我可以使用它,只有十二个。但这似乎是一种浪费。什么是让它工作的最佳方法。我很新,所以下一个问题对我来说显得甚么愚蠢!但我不能创建12个flash文件并导入它们并将它们安排在一个项目中?

0 个答案:

没有答案