Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.04.2013, 19:26
inpost вне форума Посмотреть профиль Отправить личное сообщение для inpost Найти все сообщения от inpost
  № 1  
Ответить с цитированием
inpost

Регистрация: Oct 2012
Сообщений: 23
The bomb! NetStream (live) как проверить, есть ли видео?

Всем привет. В прошлый раз помогли, хотя и спрашивал уже давно! Но всё равно спасибо. Надеюсь, что выручите меня снова.
Видео-трансляция идёт rtmp. Вот код:

Код AS3:
ns_playback2 = new NetStream(NCs2);
ns_playback2.addEventListener(NetStatusEvent.NET_STATUS, statusHandlerNS); 
ns_playback2.play(userInfo2.enemy_sex2 + userInfo2.enemy_id2, -1);
ExternalInterface.call( "console.log" , "VIDEO LOADER: " + userInfo2.enemy_sex2 + userInfo2.enemy_id2);
 
video_playback2 = new Video(480, 360);
video_playback2.attachNetStream(ns_playback2);
 
function statusHandlerNS(event:NetStatusEvent):void { 
	ExternalInterface.call("console.log" , 'VIDEOSTATUS ' + event.info.code);
}
Получается следующее, если человек не запускал трансляцию вовсе, то play не происходит, то есть NET_STATUS не меняется, и можно отследить, есть ли трансляция сейчас или нет.
А вот если только недавно была запущена, а потом произошел обрыв соединения или браузер повис или по другой причине трансляция не идет, то play всё равно срабатывает. При этом video_playback2 - выводит пустой черный экран.

Вопрос следующий: как мне проверить, есть ли видео-поток сейчас прежде, чем его выводить на экран?
Если не грамотно спросил, то уточните детали...

Старый 01.04.2013, 19:40
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 2  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Там, кажется, событий несколько, да еще и с разными подробностями.

Добавлено через 1 минуту
http://help.adobe.com/ru_RU/FlashPla...vent.html#info
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 01.04.2013, 23:28
inpost вне форума Посмотреть профиль Отправить личное сообщение для inpost Найти все сообщения от inpost
  № 3  
Ответить с цитированием
inpost

Регистрация: Oct 2012
Сообщений: 23
addEventListener(NetStatusEvent.NET_STATUS)
То есть указать другое событие надо тут? Вместо NET_STATUS, NET_ERROR ?

Просто я вижу:
"NetStream.Publish.Idle" status Сервер публикации потока свободен и не передает данных.

Но в логи попадает только 2 вещи:
reset (старый стрим сбросился) и start() - новый начал вещание. Но вещание пустое!

Старый 02.04.2013, 00:17
viclight вне форума Посмотреть профиль Отправить личное сообщение для viclight Найти все сообщения от viclight
  № 4  
Ответить с цитированием
viclight

Регистрация: Mar 2007
Сообщений: 39
Какой медиасервер? У меня такие проблемы были только с ерливидео.
Если ерливидео, попробуйте в конфиге прописать следующее
{rtmp_default_wait, false}
В этом случае, если попытка проиграть не существующий поток будет возращатся статус, что потока не существует, точно не помню. Правда почемуто не всегда.

Старый 02.04.2013, 04:20
inpost вне форума Посмотреть профиль Отправить личное сообщение для inpost Найти все сообщения от inpost
  № 5  
Ответить с цитированием
inpost

Регистрация: Oct 2012
Сообщений: 23
У меня crtmp .
Дело в том, что абсолютно не существующего не проигрывается. Только те, которые не вручную были остановлены, а именно оборваны повисанием браузера или разрывом соединения.

Добавлено через 38 часов 0 минут
Народ, может есть способ проверить объем передаваемых байт? То есть чёрный экран, явно ничего не передаётся, а висит как мертвый стрим?
До сих пор нет решения...
ns_playback2.addEventListener(NetStatusEvent.NET_STATUS, statusHandlerNS);
В Логи идут только 2 основных команды: reset, play() в случаях если есть стрим и в случаях, если он уже умер минут 10-15 назад...

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:35.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:35.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.