2010-12-06 23 views
1

我开发了一个Flash视频录像机(使用AS3,Flex),它可以捕获实时网络摄像头和流媒体到Wowza媒体服务器。如何应用发布流上的过滤器

我想在捕捉的实时视频上应用清晰度,对比度,饱和度和清晰度滤镜。

我可以对屏幕上捕捉的视频应用滤镜效果。我们如何应用过滤器以便它反映在正在发布的流中?

预先感谢您 拉杰什

+0

afaik它只可能在客户端。但是您可以通过NetStream.send()传递所有过滤器设置并将它们应用到另一侧 – www0z0k 2010-12-06 13:21:39

+0

感谢您的及时答复。 – Rajesh 2010-12-06 15:40:34

回答

0

这个代码是从测试的应用程序,是为了研究土坯层云功能和重复的Skype

这里的基本功能年代处理类:

public class RecievingObject extends Object 
    {   
     public function RecievingObject(){ 

     }   
     public function message(str: String):void { 
      ChatWindow.addText('>> ' + str); 
     } 
    } 

以及它如何连接到流(除了NetStatusEvent处理程序以外的所有类别):

public final class Streams 
    { 

     private static var streamOut: NetStream; 
     private static var streamIn: NetStream; 

     public static function initIn(id: String): void { 
      streamIn = new NetStream(Main.connection, id); 
      streamIn.client = new RecievingObject(); 
      streamIn.addEventListener(NetStatusEvent.NET_STATUS, onInStatus); 
      streamIn.receiveVideo(true); 
      streamIn.receiveAudio(true); 
      streamIn.play('media'); 
      VideoWindow.initIn(streamIn); 
      Mixer.initSound(streamIn); 
     } 

     public static function initOut(): void { 
      streamOut = new NetStream(Main.connection, NetStream.DIRECT_CONNECTIONS); 
      var peerConnected:Object = new Object(); 
       peerConnected.onPeerConnect = function(subscriberStream : NetStream) : Boolean { 
        var oo:RecievingObject = new RecievingObject(); 
        subscriberStream.client = oo; 
        if(!streamIn){ initIn((subscriberStream as NetStream).farID); }      
        return true; 
       } 
      streamOut.client = peerConnected;    
      streamOut.addEventListener(NetStatusEvent.NET_STATUS, onOutStatus);    
      streamOut.attachCamera(Camera.getCamera()); 
      streamOut.attachAudio(Microphone.getMicrophone()); 
      streamOut.publish('media'); 
     } 


     public static function send(data: String): void { 
      if(streamOut) { streamOut.send('message', data); } 
      ChatWindow.addText('<< ' + data); 
     } 
    }