red5: как мога да изпратя поток от микрофон?

аз използвам red5 и flex. Всъщност целта ми е да изпратя поток от микрофон от сървъра към клиента и да го възпроизведа от страна на клиента. По същия начин изпратете поток от микрофон от клиент към сървър и го възпроизведете от страната на сървъра. Няма нужда да съхранявате потока на живо.

Възможно ли е това? как мога да го направя в red5 и flex?


person Kamran Omar    schedule 22.12.2011    source източник


Отговори (1)


private var nc:NetConnection;
private var mic:Microphone;

private function init():void
{
    nc=new NetConnection ;
    nc.connect (your rtmppath,"anchor");
    mic=Microphone.getMicrophone();
    mic.rate=11;
    nc.addEventListener (NetStatusEvent.NET_STATUS,checkConnect);
}

private function checkConnect (e:NetStatusEvent)
{
    good=e.info.code == "NetConnection.Connect.Success";
    if (good)
    {
        this.attachAudio (mic);
        this.publish (stream,"live");
    }
}

От страна на клиента, за да пуснете звук на живо, свържете вашия мрежов поток с текущата мрежова връзка също:

private var nc:NetConnection;
private var mic:Microphone;
private var netstream:NetStream = new NetStream
private function init():void
{
    nc=new NetConnection ;
    nc.connect (your rtmppath,"viewer");
    nc.addEventListener (NetStatusEvent.NET_STATUS,checkConnect);
}

private function checkConnect (e:NetStatusEvent)
{
    good=e.info.code == "NetConnection.Connect.Success";
    if (good)
    {
        var vid:Video = new Video
        this.attachNetStream(ns)
        netStream.play(presentation);
    }
}
person rejo    schedule 22.12.2011
comment
благодаря ви за отговора. Опитах го, но кодът от страна на сървъра не е ясен. От страната на сървъра не мога да получа байтове за микрофон. как мога програмно да възпроизвеждам клиентския поток на сървъра или сървърния микрофонен поток на клиента? - person Kamran Omar; 22.12.2011