Обнаружение конца фильма Flash в JavaScript - PullRequest
9 голосов
/ 18 ноября 2009

Есть ли способ определить конец фильма Flash (OOTB, без с помощью какого-либо обратного вызова Flash).

В качестве альтернативы, есть ли способ узнать продолжительность фильма?

Обновление:

IsPlaying () выглядел многообещающе (периодически проверяя его), но, как оказалось, никто больше не создает прямые SWF-файлы; теперь контент встроен в основной слой, и пока он воспроизводится, основной фильм останавливается, а IsPlaying всегда ложен ...

Ответы [ 3 ]

3 голосов
/ 18 ноября 2009
var movie = window.document.movie

if(movie.TCurrentFrame("/") == movie.TotalFrames())
    alert("Movie Finished");

или вы можете иметь:

if (!movie.IsPlaying())
    alert("Movie Stopped");

но это не совсем то, что вы ищете.

1 голос
/ 18 ноября 2009
import fl.video.VideoEvent.COMPLETE
video.addEventListener(VideoEvent.COMPLETE, alertHTML);

function alertHTML(e:VideoEvent):void{
    ExternalInterface.call("alert(\"Video has stopped\");");
}

Дайте этому шанс. Вы можете заменить alert(\"Video has stopped\"); функцией JavaScript на стороне клиента.

0 голосов
/ 19 ноября 2009

Вы можете проверить продолжительность фильма с помощью ffmpeg -i movie.flv 2>&1, но я не говорю вам:

  • сколько времени требуется, чтобы загрузить видео и начать воспроизведение
  • нажал ли пользователь кнопку «пауза».

Прямо сейчас, единственный способ - это добавить некоторые обработчики javascript к событиям Flash, как предлагают другие посты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...