Получить статус прямой трансляции для элемента управления VideoDisplay - PullRequest
0 голосов
/ 09 февраля 2009

Я ищу способ узнать состояние прямой трансляции через VideoDisplay (или любой другой способ на самом деле). Мне интересно знать, публикуется ли поток в данный момент или издатель остановился. Это для проекта Flex / Flash ActionScript 3.

Есть ли способ сделать это или это ДРУГОЙ надзор со стороны Adobe?

flex flash, Adobe Adobe, Flex Actionscript

Ответы [ 2 ]

0 голосов
/ 16 февраля 2009

Вы можете копаться в событиях NetStatusEvent.

Проверьте это live docs

0 голосов
/ 09 февраля 2009

Я нашел только одно решение, и оно использует объект NetStream в сочетании с элементом управления видео.

Элемент управления видео должен быть добавлен в

вручную.
nsListen = new NetStream(nc);
nsListen.addEventListener(NetStatusEvent.NET_STATUS, nsListenHandler);
nsListen.play(streamname);

var v:Video = new Video();
v.attachStream(nsListen);
uicontrol.add(v);

Наконец, статус события возвращается в nsListenHandler:

private function nsListenHandler(e:Event):void
{
    if(e is NetStatusEvent)
    {
        var nse:NetStatusEvent = NetStatusEvent(e);
        if(nse.info.code == "NetStream.Play.Failed")
        {
            // Big error.

        }
        if(nse.info.code == "NetStream.Play.PublishNotify")
        {
            // Stream has just been published

        }
        if(nse.info.code == "NetStream.Play.UnpublishNotify")
        {
            // Stream has just been unpublished

        }
        trace(NetStatusEvent(e).info.code);
        trace(NetStatusEvent(e).info.description);
    }
}

Только этот код не скажет вам, если поток уже успешно опубликован.

...