2013-05-05 3 views
0

Я создаю SWF-интерфейс, который по запросу воспроизводит определенные сегменты видео FLV. Когда пользователь нажимает на определенную кнопку, точка воспроизведения переходит к предопределенному начальному значению.как отображать загружаемое сообщение, так как swf ищет следующую точку cuepoint во FLV-видео?

vid1.playheadTime = startValue; 
vid1.play(); 

Это прекрасно работает, но иногда это занимает много времени для видео, чтобы перейти к startValue, и я хочу, чтобы отобразить сообщение «Загрузка, пожалуйста, подождите» в то время как это происходит.

Я попытался использовать таймеры, чтобы проверить текущее время воспроизведения и отобразить сообщение (содержащееся в файле load_mc movieclip), если оно отличается от playheadTime.

var myTimer:Timer = new Timer(100); 
myTimer.addEventListener(TimerEvent.TIMER, video_ready); 
myTimer.start(); 

function video_ready (e:TimerEvent):void{ 
    if (vid1.playheadTime != startValue){ 
     loading_mc.visible = true; 
} 
else { 
     myTimer.stop(); 
     vid1.play(); 
     loading_mc.visible = false; 
} 

Это отлично работает, если я проверить его в Flash, но при тестировании в браузере, это часто приводит к тому, SWF плеер к аварийному или, иногда, то loading_mc клип не уходит. Я также считаю, что это может быть не самое элегантное решение. Любые мысли об альтернативном способе борьбы с этим?

Большое спасибо.

ответ

0

Только в случае, если кто-нибудь натыкается на аналогичную проблему:

я узнал, что проблема была в формате видео, которые помешали игроку обращаться правильно с помощью видео и хотел, чтобы полностью загрузить его, прежде чем он мог выполнять любые функции поиска. Я преобразовал видео в F4V, а затем код выше работал просто отлично.