0

我对这个网站很陌生!过去几个晚上我一直在阅读代码!从发布具有网络访问权限的 Flash 项目,以便它可以连接 Internet 到 RTMP 应用程序和流媒体。但是我碰壁了,我不想走错路,因为我的大部分工作都是这个网站上的点点滴滴的有用信息。请原谅我不是一家公司的老板,所以我不再做太多的编码工作,而且我肯定已经忘记了我的大部分 PHP 编码背景,请不要因为愚蠢或“菜鸟”而责备我。但是,既然我已经通过 flash 和 actionscripts3 编程做到了这一点,我认为如果我向更聪明的人提出一些问题,这不会有什么坏处!

目前我正在开发一个单一窗口的 F​​lash 项目,该项目将允许我提取多达 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 文件并导入它们并将它们安排在一个项目中吗?

4

0 回答 0