Как обойти блокировку автовоспроизведения?

Политика многих браузеров предусматривает отключение автовоспроизведения видео со звуком на странице до взаимодействия пользователя со страницей.
Но с api некоторых плееров (напр. vimeo, youtube) автовоспроизведение возможно сделать.

Как они это делают? Возможно ли обойти такую блокировку?
  • Вопрос задан
  • 1242 просмотра
Решения вопроса 2
profesor08
@profesor08 Куратор тега JavaScript
После того как пользователь провзаимодействует со страницей, можно врубать все.
Ответ написан
@granty
vimeo и youtube знают волшебное слово "Feature Policy".

1. Если посмотрите API vimeo - увидите там параметр autoplay. Потом сравните вызов API c параметром autoplay и без такового. И увидите, что добавляется ?autoplay=1 в <iframe src=>, чтобы их скрипт показа видео автоматически запустил его воспроизведение (кликнул по кнопке Start).
Но, как вы заметили, браузеры могут блокировать автоматическое воспроизведение медиаконтента. Поэтому см п 2 ниже:

2. Обратите внимание на атрибут allow="autoplay; fullscreen" у ифрейма, присылаемого в API п. 1. Это и есть "Feature Policy" (Политика возможностей), установленная через атрибут тега (её ещё можно издавать через HTTP-заголовок).
autoplay; означает autoplay *; - то есть, браузеры, поддерживающие Feature Policy, разрешат автовопроизведение видео с любых (*) чужих доменов.
Укажете там autoplay https://player.vimeo.com; - автовоспроизведение будет разрешено только для плеера vimeo.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы