Я даже не знаю что и говорить, то есть включаем трансляцию и тут же пытаюсь посмотреть с другого компа - иногда сразу недоступно, иногда через 5-10 минут становится недоступным.
Момент, когда невозможно более подключиться к трансляции назову я момент Х.
Если я включил трансляцию, и уже после наступит момент Х, то я дальше могу смотреть видео, могу нажать стоп-старт, но подключиться по новой к данной трансляции я не смогу с другой вкладки или с другого браузера. Просто серый экран и всё.
Есть ситуация после наступления Х, когда всё же трансляция включается, то есть поток начинает идти в случаях события: "NetStream.Video.DimensionChange", а именно изменение потока, его размеров (или потока).
То есть до наступления Х после события "NetStream.Play.Start" трансляция включается нормально. Чтобы трансляция включилась нормально после момента Х, уже необходимо "DimensionChange", при этом оно возникает если саму трансляцию нажать "стоп-старт".
Так же хочу заметить, что для блока с видео videoWidth и videoHeight равны нулю. Ошибок никаких нет.
Если я включаю трансляцию по следующему коду, то происходит событие: "NetStream.Play.Start" в любом случае, так как трансляция всегда есть, но кадров в экране нет, ничего не отображается. Вот код:

Код AS3:
var SServerAddress2:String = 'rtmp://ip:1935/live';
var NCs2:NetConnection = new NetConnection();
var ns_playback2:NetStream;
var video_playback2:Video = new Video(480, 360);
NCs2.objectEncoding = ObjectEncoding.AMF3;
NCs2.addEventListener(NetStatusEvent.NET_STATUS, connectStatusEvent);
NCs2.connect(SServerAddress2);
var video_name:String = 'girl_12452_3c7ca074b799382dba05ef20c7db6d6f';
function connectStatusEvent(e:NetStatusEvent):void {
ExternalInterface.call( "console.log", 'ServerStatus: ' + e.info.code);
switch(e.info.code) {
case 'NetConnection.Connect.Success':
ns_playback2 = new NetStream(NCs2);
ns_playback2.addEventListener(NetStatusEvent.NET_STATUS, statusHandlerNS);
ns_playback2.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns_playback2.play(video_name, -1);
video_playback2 = new Video(480, 360);
video_playback2.attachNetStream(ns_playback2);
break;
}
}
function statusHandlerNS(event:NetStatusEvent):void {
ExternalInterface.call( "console.log", 'VIDEOSTATUS: ' + event.info.code); // NetStream.Play.Start
if(event.info.code == 'NetStream.Play.Start') {
video_playback2.attachNetStream(ns_playback2);
stage.addChild(video_playback2);
ExternalInterface.call( "console.log", 'ShowVideo: ' + video_name);
ExternalInterface.call( "console.log", 'width: ' + video_playback2.videoWidth + ' and height: ' + video_playback2.videoHeight);
}
}
function asyncErrorHandler(event:AsyncErrorEvent):void {
ExternalInterface.call( "console.log", 'VIDEOSTATUS ERROR: ' + event.error);
}
function myInt():void {
ExternalInterface.call( "console.log", 'width: ' + video_playback2.videoWidth + ' and height: ' + video_playback2.videoHeight);
}
setInterval(myInt,2000);
Я прям не знаю куда копать и что искать...
Добавлено через 7 минут
Может вообще код кривой, вы так и скажите...
