HLS / Media Source Extensions <video> с отключением звука и зависанием при автовоспроизведении на первом кадре на мобильных устройствах

Я попытался добавить на наш сайт фоновое видео о герое. Его обслуживают с сайта mux.com.

Я использую его с HLS, но для Chrome он использует расширения источников мультимедиа из того, что я собираю.

Я знаю, что для автоматического воспроизведения видео HTML5 его также необходимо отключить, и у меня есть оба параметра.

По-видимому, в Android Chrome я получаю поведение, при котором он зависает на первом кадре (черный), но не продолжается, и я не могу понять, почему.

В случае зависания видео все равно загружается, но оно не воспроизводится автоматически.

У меня нет подсказок.


Изолированная песочница:

https://codesandbox.io/s/32yky6x7mq

https://32yky6x7mq.codesandbox.io/

В своих попытках я свел это к простому HTML-приложению с библиотекой Hls.js и базовым тегом <video>, который не работает на мобильных устройствах.


Как сделать так, чтобы видео воспроизводилось автоматически на мобильных устройствах?

P.S. Чтобы увидеть, что именно я пробовал, просмотрите историю изменений, так как я пробовал много чего.

HLS должен воспроизводиться в браузере изначально (по крайней мере, более поздние версии) без использования MSE, пробовали ли вы получить доступ к потоку напрямую в ванильном теге <video>?

Offbeatmammal 11.12.2018 00:34

@Offbeatmammal Я только что попробовал, и нет, по крайней мере, он не загружается изначально в Chrome 70. После обновления до 71 (последней) тоже не работает: codeandbox.io/s/pkvm66o0rj

tomsseisums 11.12.2018 00:41

Хорошо, после дополнительной отладки кажется, что автовоспроизведение не работает на мобильных телефонах с HLS ...

tomsseisums 11.12.2018 01:05

Ага, похоже, это связано с Android Chrome Data Saver.

tomsseisums 11.12.2018 02:45
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
4
978
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В частности, на моем устройстве Android Chrome это вызвано Экономия трафика.

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

Возможно, есть и другие настройки, которые предотвращают автовоспроизведение, например, не могут найти точные причины, по которым iOS не работает. Есть подсказки по атрибуту playsinline, который я еще не тестировал. (Будет обновлено, когда я это сделаю)

Также стоит отметить заголовок Feature-Policy: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Feature-Policy
Это не помогло мне в моем сценарии, но, вероятно, это может быть связано с автовоспроизведением в других сценариях.

Другие вопросы по теме