Подтвердить что ты не робот

Проверка готовности видео html5

есть ли событие JavaScript, вызванное, если видео HTML5 готово к воспроизведению?

4b9b3361

Ответ 1

Я предполагаю, что готовность к воспроизведению означает, что свойство readyState равно константе HAVE_ENOUGH_DATA (числовое значение 4). В соответствии с doc, когда свойство readyState переходит к этому значению, следует запустить событие canplay.

Ответ 2

Просто наткнулся на этот вопрос, и хотя он немного старый, я публикую это для будущих читателей (кто, как и я, возможно, пришел из Google).

Итак, на сегодняшний день это список событий для среды html5 (согласно W3C):

  • onabort: Script для выполнения прерывания
  • oncanplay: Script для запуска, когда файл готов начать воспроизведение (когда он достаточно буферизуется, чтобы начать)
  • oncanplaythrough: Script для запуска, когда файл можно воспроизвести до конца без паузы для буферизации
  • ondurationchange: Script для запуска при изменении длины носителя.
  • onemptied: Script для запуска, когда происходит что-то плохое, и файл неожиданно недоступен (например, неожиданно отключается)
  • onended: Script для запуска, когда носитель достигнет конца (полезное событие для таких сообщений, как "спасибо за прослушивание" )
  • onerror: Script для запуска при возникновении ошибки при загрузке файла
  • onloadeddata​​b > : Script для запуска при загрузке медиаданных
  • onloadedmetadata​​b > : Script для запуска, когда загружаются метаданные (например, размеры и продолжительность)
  • onloadstart: Script запускается так же, как файл начинает загружаться, прежде чем что-либо загружается на самом деле.
  • onpause: Script для запуска, когда носитель приостанавливается пользователем или программным способом
  • onplay: Script для запуска, когда носитель готов начать воспроизведение.
  • onplaying: Script для запуска при начале воспроизведения медиафайлов
  • onprogress: Script для запуска, когда браузер находится в процессе получения медиаданных
  • onratechange: Script для запуска каждый раз, когда скорость воспроизведения изменяется (например, когда пользователь переключается в режим медленного движения или быстрого перехода вперед)
  • onreadystatechange: Script для запуска каждый раз, когда состояние готовности изменяется (состояние готовности отслеживает состояние медиаданных)
  • onseeked: Script для запуска, когда атрибут seek установлен в false, указывающий, что поиск закончился
  • onseeking: Script для запуска, когда атрибуту seek задано значение true, указывающее, что поиск активен
  • onstalled: Script для запуска, когда браузер не может извлечь мультимедийные данные по любой причине
  • onsuspend: Script для запуска, когда выборка данных мультимедиа прекращается до того, как она будет полностью загружена по любой причине
  • ontimeupdate: Script для запуска, когда игровая позиция изменилась (например, когда пользователь быстро перейдет в другую точку на носителе)
  • onvolumechange: Script для запуска каждый раз при изменении тома (включая настройку громкости на "mute" )
  • в ожидании: Script для запуска, когда носитель приостановлен, но ожидается возобновление (например, когда медиафайлы приостанавливаются для буферизации большего количества данных).

Данц искал путь к поиску.

Надеюсь, что это поможет.

Ответ 3

Хорошее обсуждение здесь...

http://tiffanybbrown.com/2010/07/05/the-html5-video-progress-event/

Особенно первый комментарий.

В принципе, это было в спецификации и было удалено, потому что это не точно соответствовало способу отображения медиа. Вместо этого было добавлено буферирование.

Вот пример использования буферизации:

http://hacks.mozilla.org/2010/08/html5-video-buffered-property-available-in-firefox-4/

Ответ 4

У вас есть 2 события для обработки, когда видео готово к воспроизведению.

  • canplay: срабатывает, когда видео готово к игре но буферизация не завершена.
  • canplaythrough: срабатывает, когда видео готово к воспроизведению и буферизации завершено

Ответ 5

Я нашел http://www.w3.org/TR/html5/video.html#mediaevents, чтобы быть чрезвычайно полезным, поскольку он перечисляет все события, которые доступны, когда дело доходит до тэгов html5.