Видео.js-автозапуск и петля не работают на телефоне

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

<video id="video1" class="video-js vjs-default-skin"
      controls width="900" height="500"
      poster="myposter.jpg"
      data-setup='{
        "controls": false,
        "loop": "true",
        "autoplay": true, 
        "preload": "true"}'>
         <source src="thisismyvideoyay.webm" type='video/webm' />
    </video>

он отлично работает на моем компьютере, но на моем телефоне (Android OS 4.2.2 с Chrome) это не автозапуск или предварительная загрузка и не цикл после его завершения.

Я читал это на видео.Яш страницы:

Auto: начните загрузку видео немедленно (если браузер согласен). Некоторые мобильные устройства, такие как iPhones и iPads, не будут предварительно загружать видео порядок чтобы защитить пропускную способность своих пользователей. Вот почему ценность называется "авто", а не что-то более окончательное, как "правда".

Я поставил натяг на true но все равно не autoplay или петли.

Это особенность моего браузера и как я могу избежать этого?

Я пробовал в других браузерах:

  • браузер UC, похоже, не поддерживает HTML5 вообще?
  • Stock browser показывает маленький значок видео, но не показывает плеер, слишком!--19-->
  • Same то же самое с Maxthon

3 ответов


на телефоне, нет никакого способа, которым вы можете получить его цикл или предварительную загрузку данных. Но у меня есть решение, где вы можете его автоматически воспроизвести. Вы можете использовать мой код здесь = http://www.andy-howard.com/recreate-bbc-iplayer/index.html

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

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


чтобы решить проблему автозапуска на iOS, не используйте videojs опции автозапуск видео.

другими словами, это не будет работать:

<video id="my-video-id" autoplay></video>

и это не будет:

videojs('my-video-id', {
    "autoplay": true
});

вместо этого дождитесь загрузки видеообъекта, а затем запустите действие воспроизведения:

videojs('my-video-id').ready(function() {
    this.play();
});

на мобильном телефоне, вы можете автозапуск, если вы положили muted опции

<video autoplay muted>
  <source src="video.webm" type="video/webm" />
  <source src="video.mp4" type="video/mp4" />
</video>

Chrome v53:https://developers.google.com/web/updates/2016/07/autoplay

iOS 10:https://webkit.org/blog/6784/new-video-policies-for-ios