Flash RTMP和AS 3.0的设置

Flash RTMP和AS 3.0的设置,flash,actionscript-3,actionscript,adobe,rtmp,Flash,Actionscript 3,Actionscript,Adobe,Rtmp,在AS3中使用rtmp是否需要额外的代码 我有这样的代码。对于rtmp或任何其他需要的代码来说,这足够了吗 var strSource:String = "rtmp://myserver.com/file.flv"; var ncConnection = new NetConnection(); var nsStream = new NetStream(ncConnection); nsStream.play(strSource); 播放RTMP流需要以不同于渐进流的方式进行 首先,您需要连接

在AS3中使用rtmp是否需要额外的代码

我有这样的代码。对于rtmp或任何其他需要的代码来说,这足够了吗

var strSource:String = "rtmp://myserver.com/file.flv";
var ncConnection = new NetConnection();
var nsStream = new NetStream(ncConnection);
nsStream.play(strSource);

播放RTMP流需要以不同于渐进流的方式进行

首先,您需要连接到应用程序,通常这是基本路径,但有时可能是一些文件夹,以防RTMP服务器提出不同的服务

然后需要侦听由
NetConnection
事件调度的
NetConnection.Connect.Success
事件

连接网络连接后,您可以在其上创建
NetStream
,然后播放流

请注意,传递给play命令的参数应仅为流的名称,而不是完整路径。通常,您还需要删除扩展(取决于服务器和服务)。对于H264流,您可能还需要在流id前面加上“mp4:”

示例:

// rtmp://myserver.com/service/myVideo.flv

var service:String = "rtmp://myserver.com/service/";
var streamID:String = "myVideo"; // or mp4:myVideo for H264

var netConnection:NetConnection;
var netStream:NetStream;

netConnection = new NetConnection();
netConnection.client = {onBWDone:onNetConnectionBWDone}; 
netConnection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 
netConnection.connect(service); 

// NetConnection status handlers

function netStatusHandler( event:NetStatusEvent ):void
{
    if(event.info.code == NetConnection.Connect.Success)
    {
        netStream = new NetStream(netConnection);
        netStream.client = {onMetaData:onMetaData, onPlayStatus :onPlayStatus};
        netStream.play(streamID);
    }
}

function onNetConnectionBWDone():void{}

// NetStream Status handlers

function onMetaData(o:Object):void{}
function onPlayStatus(o:Object):void{}

播放RTMP流需要以不同于渐进流的方式进行

首先,您需要连接到应用程序,通常这是基本路径,但有时可能是一些文件夹,以防RTMP服务器提出不同的服务

然后需要侦听由
NetConnection
事件调度的
NetConnection.Connect.Success
事件

连接网络连接后,您可以在其上创建
NetStream
,然后播放流

请注意,传递给play命令的参数应仅为流的名称,而不是完整路径。通常,您还需要删除扩展(取决于服务器和服务)。对于H264流,您可能还需要在流id前面加上“mp4:”

示例:

// rtmp://myserver.com/service/myVideo.flv

var service:String = "rtmp://myserver.com/service/";
var streamID:String = "myVideo"; // or mp4:myVideo for H264

var netConnection:NetConnection;
var netStream:NetStream;

netConnection = new NetConnection();
netConnection.client = {onBWDone:onNetConnectionBWDone}; 
netConnection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 
netConnection.connect(service); 

// NetConnection status handlers

function netStatusHandler( event:NetStatusEvent ):void
{
    if(event.info.code == NetConnection.Connect.Success)
    {
        netStream = new NetStream(netConnection);
        netStream.client = {onMetaData:onMetaData, onPlayStatus :onPlayStatus};
        netStream.play(streamID);
    }
}

function onNetConnectionBWDone():void{}

// NetStream Status handlers

function onMetaData(o:Object):void{}
function onPlayStatus(o:Object):void{}

这是关于发布的实时流还是只是预先录制的流?这个答案已经有4年了,但在我看来实时流和点播流的工作方式基本相同,至少在设置和连接方面。我仍在查阅大量Adobe文档,了解如何实现这一点,所以我希望你是对的。这是关于发布的实时流还是只是预录制的流?这个答案已经有4年了,但从我的想法来看,实时流和按需流的工作方式基本相同,至少在安装和连接方面。我仍然在查阅大量Adobe文档,了解如何实现它,所以我希望你是对的。