Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   onPlayStatus? (http://www.flasher.ru/forum/showthread.php?t=88570)

DarkLight 26.11.2006 12:24

onPlayStatus?
 
Вот такой вопрос. Как заставить работать onPlayStatus у NetStream?
Сделал, как хелп говорил, кастомного клиента. onMetaData работает. onPlayStatus - нет. Причем во Флеше 9 альфе onPlayStatus даже отсутствует в списке событий NetStream. Во флексе то же не работает. Что можно сделать?

etc 26.11.2006 13:22

Такого события даже в восьмерке не было :)
В восьмерке есть onStatus, в девятке событие NetStatusEvent.NET_STATUS, соответственно подписка:
Код:

my_ns.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);

DarkLight 26.11.2006 13:43

Цитата:

onPlayStatus

Dispatched when a NetStream object has completely played a stream. This handler returns information objects that provide information in addition to what's returned by the netStatus event. You can use this handler to trigger actions in your code when a NetStream object has switched from one stream to another stream in a playlist (as indicated by the information object NetStream.Play.Switch) or when a NetStream object has played to the end (as indicated by the information object NetStream.Play.Complete). To respond to this event, you must create a function to process the information object sent by the server.
(http://livedocs.macromedia.com/flex/...t:onPlayStatus)
А это тогда к чему??

PS Что восьмерке этого нет, я знаю:)

etc 26.11.2006 14:00

Цитата:

This event is intended primarily for use with a server, such as Flash Media Server; for more information, see the class description. It is not part of the Flash Player API, but is included in this language reference for your convenience. You cannot use the addEventListener() method, or any other EventDispatcher methods, to listen for or process this event. Rather, you must define a single callback function and attach it directly to one of the following objects: …
Дочитать надо :)

DarkLight 26.11.2006 14:02

Дочитал, но:
Цитата:

onMetaData event


Dispatched when Flash Player receives descriptive information embedded in the FLV file being played.

This special event is primarily intended for use with a server, such as Flash Media Server;...
А работает и без сервера


Цитата:

You cannot use the addEventListener() method, or any other EventDispatcher methods, to listen for or process this event
Я же написал, что подвесил кастомного клиента как хелп пишет

AL.exe 14.08.2008 02:24

Так и не работает... так и не понятно, как узнать, закончился ли играть видеофайл, или нет :(

Есть какие-либо человеческие варианты решения вопроса? Сравнения duration не предлагать :)

Update:
Тьфу... туплю. Разобрался, извиняюсь.

Код:

//stream - объект NetStream, а не NetConnection - некоторые почему-то именно к NetConnection прицепить пытаются %)
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);

function netStatusHandler(event:NetStatusEvent) {
            trace(event.info.code)           
}

Но пусть будет для истории, а то вот многие американские ребята так и не разобрались, как с этим ивентом работать... многие так и сравнвиают duration :)

kackbip 07.09.2008 13:34

И какое значение event.info.code будет означать, что flv полностью проигрался?

Я считаю, что отловить окончание flv можно так:

event.info.code == "NetStream.Buffer.Empty" && (stream.bytesTotal == stream.bytesLoaded)

AL.exe 08.09.2008 01:47

Цитата:

Сообщение от kackbip (Сообщение 762846)
И какое значение event.info.code будет означать, что flv полностью проигрался?

Код:

function netStatusHandler(event:NetStatusEvent):void {
           
        switch(event.info.code){

                case "NetStream.Play.Stop":        //проигрывание файла завершено
                        //делаем что-то...
                break;
               
        }
                       
}


kackbip 08.09.2008 07:23

Нужно уточнить.

"NetStream.Play.Stop" не только в конце может всплывать, а например, когда нажимаешь на стоп :) Или, когда ролик подгружаться не успевает.

tikhop 08.09.2008 20:28

так как же отловить окончание проигрывания фильма?

Код:

NetStream.Play.Stop
не отлавливает окончания проигрывания влего файла, у меня это событие всплывает сразу как запускаю проигрывание фильма


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

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