RTFMP - Удаленный поток не отображается - PullRequest
2 голосов
/ 15 августа 2011

Я пытаюсь создать двусторонний видеочат. Ваша собственная веб-камера показывает отлично, но другой нет. Я использовал эту страницу в качестве примера: http://www.adobe.com/devnet/flashmediaserver/articles/p2p_apps_cirrus_lccs.html

Мне кажется, что выполнение шагов на странице не работает. Я обмениваюсь идентификаторами пира через PHP. Я заставляю Flash посещать страницу, где в базе данных хранится идентификатор партнера, используя запрос POST. Чтобы получить одноранговый идентификатор партнера, я использую сеансы PHP, в которых хранятся как ваш идентификатор, так и идентификатор вашего партнера. Затем я могу использовать эти переменные для посещения другой страницы PHP, которая повторяет идентификатор партнера партнера. И то же самое, что и в базе данных, так что в этом нет ничего плохого.

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");

А вот как я получаю опубликованный поток "vids":

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

Объекты Other и Self относятся к типу .

Я уверен, что это должно быть что-то чертовски простое, но, похоже, я не могу это понять.

1 Ответ

1 голос
/ 18 августа 2011

Неважно, мне пришлось использовать mx: VideoDisplay вместо s: VideoDisplay.

...