Pull to refresh
16
0

Разработчик интерфейсов в Видеоплатформе Яндекса

Send message

Как Леша сказал, мы смотрим на ошибку запроса. Ещё мы засекаем таймер. Если сервер отвечает 200, но слишком долго не отдает данные (или отдает их очень медленно), то мы считаем «с edge-сервером что-то не так»

Стандарт HLS реализует библиотека https://github.com/video-dev/hls.js.

Есть еще https://github.com/shaka-project/shaka-player, поддерживающая части стандартов HLS, DASH и MSS

Мы изучали dash.js. Это эталонная имплементация стандарта DASH. Нам весь стандарт не нужен. Зато нужны такие фичи, как виртуальный буфер, от реализации которого в dash.js отказались.

В плеере мы делаем оптимизации для воспроизведения рекламы. Блокировка происходит сильно раньше на этапе получения ссылки на рекламный поток

Классный поинт. Однако нам он не подходил. Мы - универсальная библиотека для воспроизведения видео на разных сервисах Яндекса с разными сценариями.

Например, на Кинопоиск - сервис, где пользователь может выбрать один из огромного количества фильмов. Мы не можем предзагружать плейлисты всех фильмов, предлагаемых рекомендациями. А после того, как пользователь нажмет кнопку «Смотреть», он ожидает мгновенного запуска. 

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

По нашим экспериментам DASH vs HLS, DASH показывает себя лучше.

Information

Rating
Does not participate
Registered
Activity

Specialization

Frontend Developer