Обслуживающий видео актив подходит для подключения пользователя? - PullRequest
0 голосов
/ 23 декабря 2018

В настоящее время я создаю веб-страницу с 8-секундным фоновым видео в качестве актива героя с полной шириной просмотра и высотой просмотра.Видео размещено в Vimeo, к сожалению, YouTube не подходит для меня из-за предпочтений моих клиентов.

Вот мой HTML-код:

<video autoplay playsinline muted loop>
  <source type="video/mp4" src="/my-vimeo-video.hd.mp4">
  <source type="video/webm" src="/my-vimeo-video.hd.mp4">
</video>

В настоящее время видео работает какЯ хотел бы, чтобы это было на рабочем столе и на мобильном телефоне с «хорошим» Wi-Fi-соединением.Однако проблема возникает при плохой связи с мобильным телефоном.Когда страница загружается, пользователь увидит загрузку видео, прежде чем он сможет начать воспроизведение.

В идеале я хотел бы определить скорость соединения пользователя и предоставить видео актив, подходящий для скорости соединения.Видео по умолчанию будет hd, но если соединение плохое, я мог бы показать видео низкого качества.

Возможно ли что-то подобное?Если нет, то каким образом веб-разработчик обычно решает проблему предоставления пользователю наилучшего видео актива, основанного на скорости соединения пользователя?

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

Я кратко рассмотрел API информации о сети, но этот вариант мне не подходит из-за отсутствия поддержки в Safari.

Заранее спасибоза любые идеи!

Ответы [ 2 ]

0 голосов
/ 23 декабря 2018

Обычно ответ здесь заключается в использовании технологии, такой как DASH, которая может иметь адаптивные изменения битрейта в среднем потоке.Все основные DASH-плееры имеют встроенную коммутацию битрейта при поддержке источника.Если вы используете проигрыватель Vimeo, это будет обработано за вас.

веб-страница с 8-секундным фоновым видео

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

Вместо этого я бы порекомендовал создать файл с битрейтом с наименьшим приемлемым качеством и передать его всем.Я бы порекомендовал использовать статический фоновый рисунок в качестве запасного варианта для тех, у кого нет пропускной способности, чтобы быстро загрузить фоновое видео.

0 голосов
/ 23 декабря 2018

Здесь можно быстро измерить скорость соединения пользователя, а затем на основе этих скоростей на стороне клиента решить, какое видео получить.И в зависимости от этих условий выполните перенаправление на стороне клиента.

var imageAddr = "http://www.tranquilmusic.ca/images/cats/Cat2.JPG" + "?n=" + Math.random();
var startTime, endTime;
var downloadSize = 5616998;
var download = new Image();
download.onload = function () {
    endTime = (new Date()).getTime();
    showResults();
}
startTime = (new Date()).getTime();
download.src = imageAddr;

function showResults() {
    var speedMbps = (speedKbps / 1024).toFixed(2);
    if (speedMbps > requiredSpeed) {
     window.location.replace("http://you-website.com/video?heigher_quality=True");
     } else {
       window.location.replace("http://you-website.com/video?heigher_quality=False");  
      }
}
...