RTFMP - 未显示远程流

时间:2011-08-15 17:56:19

标签: flash actionscript stream webcam adobe-cirrus

我正在尝试创建一个双向视频聊天。你自己的摄像头显示完美,但另一个没有。我以此页面为例:http://www.adobe.com/devnet/flashmediaserver/articles/p2p_apps_cirrus_lccs.html

按照页面上的步骤似乎对我不起作用。我通过PHP交换对等ID。我让我的Flash访问一个页面,该页面使用POST请求将对等ID存储在数据库中。要获取合作伙伴的对等ID,我使用PHP会话,它存储您的ID和您的合作伙伴的ID。然后,我可以使用这些变量访问另一个PHP页面,该页面与伙伴的对等ID相呼应。两者都与数据库中的相同,因此没有任何问题。

NetConnection:

Connection = new NetConnection();
Connection.addEventListener(NetStatusEvent.NET_STATUS, CheckConnect);
Connection.connect(RTFMP + DevKey);

这就是我设置自己的网络摄像头及其NetStream的方法:

StreamOut = new NetStream(Connection, NetStream.DIRECT_CONNECTIONS); 
var SelfCam:DynamicStreamingVideoSource = new DynamicStreamingVideoSource();
var VideoItems:Vector.<DynamicStreamingVideoItem>;
VideoItems = new Vector.<DynamicStreamingVideoItem>();
VideoItems[0] = new DynamicStreamingVideoItem();

SelfCam.host = "";
SelfCam.streamType = StreamType.LIVE;
SelfCam.streamItems = VideoItems;

Self.source = SelfCam;

var Cam:Camera = Camera.getCamera();
var Mic:Microphone = Microphone.getMicrophone();
Cam.setMode(380, 255, 15);
Cam.setQuality(0, 80);
Self.videoObject.attachCamera(Cam);

StreamOut.attachAudio(Mic);
StreamOut.attachCamera(Cam);
StreamOut.publish("vids");

这就是我收到发布的流“视频”的方式:

StreamIn = new NetStream(Connection, OtherID);
StreamIn.play("vids");
StreamIn.client = this;
Other.videoObject.attachNetStream(StreamIn);

其他和Self对象的类型为&lt; s:VideoDisplay&gt;。

我确定它一定是非常简单的东西,但我似乎无法将手指放在它上面。

1 个答案:

答案 0 :(得分:1)

没关系,我不得不使用mx:VideoDisplay而不是s:VideoDisplay。