Мы используем cookie, чтобы сайт был лучше для вас.
Внимание
У Вас отключена поддержка Cookie в браузере. Возможно некорректное отображение сайта!

Трансляцию с низкими задержками теперь можно перемотать на 24+ часа назад

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

DVR (Digital Video Recorder) — функция перемотки трансляции, которая позволяет посмотреть прямой эфир в повторе. Если зритель пропустил фразу в вебинаре, слайд в презентации, важное заявление со сцены мероприятия или ключевой момент в финале спортивного турнира, то к этому можно вернуться.

Далеко не все провайдеры способны обеспечивать стриминг с задержками менее 4 секунд. И ещё меньше предоставляют при этом DVR, так как функцию довольно сложно реализовать на трансляциях с низкими задержками.

А на стриминговой платформе EdgeЦентр DVR доступен всем клиентам по умолчанию и отлично работает при низких задержках и высоком качестве стрима. Недавно мы усовершенствовали эту функцию, и теперь прямой эфир можно перемотать назад на 24 часа и больше.

Почему DVR сложно реализовать в стриминге с низкими задержками

Хранение DVR требует довольно больших объёмов памяти. Это зависит от:

  • длительности DVR (чем больше прямого эфира записывается, тем больше памяти нужно);
  • количества потоков (чем их больше, тем больше памяти нужно);
  • качества потока (на потоки в высоком качестве также требуется больше памяти).

При этом пользователи хотят не просто иметь возможность перемотать эфир. Они хотят смотреть трансляции, максимально приближенные к реальному времени, с разных камер и в максимально высоком качестве. Значит, нужен качественный Low Latency Streaming (стриминг с низкими задержкам).

Технологии Low Latency позволяют делить видео не просто на сегменты, а на микросегменты в 0,1–0,5 секунды и доставлять его частями. Но эти микросегменты нужно эффективно кешировать ещё до того, как был передан полный фрагмент, при этом сохраняя функцию перемотки.

На эффективное кеширование требуется ещё больше памяти.

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

Как эта задача решалась раньше

Стандартное решение, которое обычно используется, — увеличивать объём памяти и количество дисков на серверах. На малых масштабах это работает неплохо. Однако с продолжительными трансляциями на миллионную аудиторию решение оказывается крайне неэффективным.

Кроме того, не все CDN поддерживают кеширование файлов до того, как они полностью скачаны с источника. То есть CDN сначала должна получить весь файл .ts или .m4v и только после этого может передать его в плеер на воспроизведение. Это не позволяет передавать и сразу воспроизводить микросегменты, а значит, увеличивает задержки.

Задача требовала другого, более эффективного решения. И мы его нашли.

Как это работает сейчас на нашей стриминговой платформе

В новой версии архитектуры для лайвстримов мы раздаём видео с помощью HTTP/2 или HTTP/1.1 Chunked Transfer Encoding. Это позволяет плееру скачивать очередной файл видеопотока ещё до того, как сервер закончил его создавать. При этом проходящие через сервер запросы GET и HEAD мы кешируем в оперативной памяти, но со специальным алгоритмом:

  1. Зритель, запросивший фрагмент видео первым, получает его микросегменты с минимальной задержкой, как только они появляются на сервере. Это обеспечивает сверхнизкий показатель TTFB (Time To First Byte, время до получения первых данных). Первые полученные микросегменты отдаются сразу, остальные — по мере поступления от источника.
  2. Пользователи, запрашивающие тот же самый фрагмент позже, получают все микросегменты от первого зрителя сразу, с максимальной скоростью и остальные микросегменты с минимальной задержкой по мере их поступления от источника.
  3. Все микросегменты сохраняются в отдельный кеш. А после этого объединяются и кешируются, как обычный полный фрагмент видео. Именно эти полные фрагменты отдаются при перемотке назад.

Новый алгоритм передачи и кеширования сегментов видео
Новый алгоритм передачи и кеширования сегментов видео

Какие преимущества даёт новое решение

  • Прямые трансляции с задержками не более 4 секунд
  • Высокое качество видео
  • Перемотка эфира на 1–24 часа назад
  • Адаптивный битрейт
  • Передача нескольких потоков одновременно
  • Трансляции на аудиторию от 1 человека до 10+ млн зрителей

DVR на 24+ часа с задержками менее 4 секунд уже доступен по умолчанию для всех клиентов нашей стриминговой платформы. А если вы ещё не подключены к сервису, вы можете воспользоваться 14-дневным пробным периодом и самостоятельно протестировать наше решение с улучшенным функционалом.

Проводите масштабные трансляции на 10+ млн зрителей с нашей стриминговой платформой.

Подпишитесь на полезную рассылку

Выгодные предложения и важные новости раз в месяц. Без спама

Нажимая кнопку «Подписаться», я даю согласие на получение рекламно-информационной рассылки согласно Политике