簡體   English   中英

使用 Flash Media Server 的網絡攝像頭池

[英]Webcam pool using Flash Media Server

我有一個應用程序,用戶可以在其中登錄並連接到 Flash 媒體服務器。 連接后,任何人都可以查看他們的網絡攝像頭。

例如,假設 Bob 和 Sally 登錄到網站並且他們的攝像機現在正在流式傳輸。 Bob可以在查看Sally的攝像頭流http://www.example.com?cam=sally和Sally可以查看Bob的網絡攝像頭流http://www.example.com?cam=bob

使用此代碼將網絡攝像頭流廣播到 FMS:

    var nc : NetConnection = new NetConnection( );
        nc.client = this;
        nc.addEventListener(NetStatusEvent.NET_STATUS, statusHandler );
        nc.connect( "rtmp://your-fms-server-url/your-application" );

    var cam : Camera = Camera.getCamera( );
        cam.setMode( 640, 480, 20 );

    var ns : NetStream;

    function statusHandler ( eventOBJ : NetStatusEvent )
    {
        if ( eventOBJ.info.code == "NetConnection.Connect.Success" )
        {
            ns = new NetStream( nc );
            ns.attachCamera( cam );
            ns.publish( "your-stream-name" );
        }
    };

接收器是相似的,除了幾行:

    // to the declaration section:
    var video : Video = new Video( );

    // code in the statusHandler method:
    if ( eventOBJ.info.code == "NetConnection.Connect.Success" )
    {
        ns = new NetStream( nc );
        ns.play( "your-stream-name", -1 );
        video.attachNetStream( ns );    
        addChild( video );
    }

您只需在 flashvars 中傳遞所需流的名稱。 例如,如果您使用此 url:www.yourdomain.com/chat.php?cam=Sally,在這種情況下,將 cam 參數傳遞給 SWF 客戶端,並以以下形式使用:

    ns.play( this.loaderInfo.parameters.cam , -1 );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM