재생중인 RTMP 스트림은 프로그레시브 스트림과 다르게 수행되어야합니다.
먼저 응용 프로그램에 연결해야합니다. 일반적으로이 경로는 기본 경로이지만 RTMP 서버가 다른 서비스를 제안 할 경우 폴더가 될 수 있습니다.
NetConnection.Connect.Success
이벤트는 NetConnection
이벤트로 전달됩니다.
일단 NetConnection이 연결되면 NetStream
을 생성 한 다음 스트림을 재생할 수 있습니다.
재생 명령에 전달 된 인수는 전체 경로가 아닌 스트림의 이름이어야합니다. 일반적으로 확장 기능을 제거해야합니다 (서버 및 서비스에 따라 다름). 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{}
이 게시 된 실시간 스트림에 관련된하거나 기록 스트림을 사전 있습니까? – cea
이 답변은 4 살입니다. 그러나 내 마음의 맨 위에서 실시간 및 주문형 스트림은 설치 및 연결면에서 거의 같은 방식으로 작동합니다. –
나는 아직도 Adobe 문서를 다룰 수있는 방법을 찾고 있습니다. 그래서 당신이 옳았기를 바랍니다. – cea