Я хотел бы измерить производительность видео на YouTube, например частоту кадров. На YouTube есть опция под названием "Статистика для ботаников", которая отображает скорость соединения, а также состояние буфера и пропущенные кадры, помимо некоторых других интересных вещей - но не текущие кадры в секунду.

Есть ли способ измерить текущие кадры в секунду? Под fps я имею в виду не fps самого видео, а fps, который видеопроигрывателю удается отобразить.

Также было бы хорошо узнать измерение задержки.

1 ответ1

0

Для WebKit, есть два video атрибуты элемента , которые вы можете регулярно запрашивать:

  • webkitDecodedFrames
  • webkitDroppedFrames

Больше объяснений здесь.

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

  • Вы должны приостановить подсчет, если видео не воспроизводится
  • Таймеры Javascript не очень точны
  • Эти атрибуты зависят от поставщика и могут быть удалены в какой-то момент

Вы могли бы взглянуть на пример кода, который реализует эти метрики и вычисляет среднее значение FPS - все, что вам нужно сделать, это немного переписать его для вставки в консоль Chrome devtools на YouTube.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .