HLS о миграции игрока Shaka

Обзор

SDK Cast Web Receiver поддерживает воспроизведение контента с использованием нескольких протоколов потоковой веб-трансляции . В зависимости от используемого протокола SDK загружает проигрыватель для управления воспроизведением контента. В случае содержимого HLS загружается библиотека медиаплеера ( MPL ). В случае контента DASH загружается Shaka Player .

В дальнейшем команды разработчиков Cast SDK и Shaka Player объединяют усилия для увеличения поддержки воспроизведения контента HLS в Shaka Player. MPL больше не будет получать критические обновления . Мы рекомендуем вам использовать Shaka Player для воспроизведения контента HLS вашего приложения.

Преимущества Shaka Player

При смене игроков приложения получают следующие преимущества:

  • Более надежные сеансы потоковой передачи для пользователей с уменьшением сбоев во время загрузки и задержек.
  • Продолжающееся внедрение новейших функций HLS.
  • Повышена ясность в анализе первопричин проблем совместимости контента плеера благодаря открытому исходному коду Shaka Player.
  • Кодовая база проигрывателя с открытым исходным кодом позволяет партнерам вносить свой вклад в проект Shaka Player.
  • Значительное сокращение времени на исправление функций и ошибок, поскольку частота выпуска Shaka Player является частой и независимой от выпусков Web Receiver SDK.
  • Больший контроль над средой воспроизведения, обеспечиваемый API-интерфейсом shakaVersion .
  • Расширенная поддержка воспроизведения со стороны Google благодаря инженерным ресурсам, ориентированным на воспроизведение HLS в Shaka Player, как показано в плане развития .

Хронология

SDK веб-приемника перейдет на использование Shaka Player в качестве проигрывателя по умолчанию для воспроизведения контента HLS. Это будет сделано поэтапно, чтобы помочь партнерам пройти процесс миграции.

Фаза Дата начала Обзор
1 22 октября В пакете SDK Cast Web Receiver представлены API, позволяющие согласовать воспроизведение контента HLS в Shaka Player.
2 2 пол. '24 г. SDK Cast Web Receiver меняет проигрыватель по умолчанию на Shaka Player для воспроизведения контента HLS.

Команды разработчиков Web Receiver SDK придерживаются подхода, ориентированного на производительность, и перейдут к следующему этапу только тогда, когда производительность Shaka Player будет на уровне базовой производительности MPL. Эти изменения будут объявлены в группе Google cast-sdk-announcements и обновлены в этом руководстве.

Включить

Начиная с версии CAF 3.0.0105 , существует конфигурация уровня приложения, позволяющая использовать Shaka Player для воспроизведения HLS. В этой версии также представлен API для выбора из поддерживаемого диапазона версий Shaka Player для загрузки. Эти флаги предоставляются в классе CastReceiverOptions через свойства useShakaForHls и shakaVersion и оцениваются при запуске CastReceiverContext . Любое приложение, выбирающее Shaka для HLS, должно установить версию Shaka Player не ниже 4.3.4 , чтобы воспользоваться преимуществами последних улучшений HLS. Чтобы подписаться, следуйте приведенному ниже фрагменту кода:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

Проверка контента

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

  • Типы потоков: LIVE или VOD.
  • Форматы контейнеров: TS, MP4 или элементарные потоки.
  • Контент с прерываниями или встроенной рекламой
  • Воспроизведение на следующих типах устройств: интеллектуальные дисплеи, ключи Chromecast, устройства Android TV, телевизоры со встроенным Chromecast, интеллектуальные колонки.

Если вы обнаружите какие-либо ошибки или неожиданное поведение, сообщите об ошибке . Как только вы сможете убедиться, что в вашем контенте нет критических сбоев воспроизведения, внесите изменения в свою производственную среду.

Уклоняться

SDK веб-приемника перейдет на модель отказа от воспроизведения контента HLS Shaka Player в соответствии с временной шкалой . Свойство useShakaForHls изменит значение по умолчанию с false на true . В это время приложения могут выбрать использование MPL для воспроизведения HLS, вручную установив для этого свойства значение false . При запуске CastReceiverContext пакет SDK веб-приемника вернется к загрузке MPL вместо Shaka Player. Посмотрите пример ниже, чтобы узнать, как отказаться:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

Сообщить о проблемах

Мы рекомендуем нашим партнерам сообщать о любых проблемах, которые они обнаруживают при воспроизведении контента HLS. Как уже упоминалось, MPL больше не будет получать критические обновления. Если при использовании MPL возникли какие-либо проблемы, выполните действия, описанные в разделе «Подключение» руководства, чтобы проверить, разблокирует ли переход на Shaka Player вашу проблему. Выполните следующие действия, если проблема все еще существует или если вы столкнулись с другой проблемой при переключении игроков.

  1. Попробуйте установить shakaVersion другую версию ветки, чтобы решить проблему. Например, если проблема возникла в ветке 4.3 , попробуйте установить последнюю версию в версиях 4.2.x или 3.3.x Ознакомьтесь с примечаниями к выпуску Shaka Player , чтобы найти выпуски с наиболее актуальными обновлениями. Обратите внимание, что API-интерфейс shakaVersion имеет минимальную и максимальную поддерживаемую версию, как указано в справочной документации. Если вы заметили регресс, сообщите о проблеме в трекере проблем Shaka Player .
  2. Попробуйте изменить параметры конфигурации плеера. Shaka Player можно настроить с помощью объекта PlayerConfiguration . SDK веб-приемника определяет набор значений по умолчанию и позволяет приложениям изменять эту конфигурацию с помощью свойства shakaConfig в объекте PlaybackConfig . Это оценивается во время загрузки при создании экземпляра проигрывателя. Смотрите больше в

    Конфигурация и параметры приложения . Значения по умолчанию, установленные SDK веб-приемника, являются рекомендуемыми значениями.

  3. Посмотрите, сообщалось ли о проблеме в системе отслеживания ошибок Shaka Player или в системе отслеживания ошибок Cast . Прокомментируйте ошибку и добавьте любую соответствующую информацию, если она также описывает вашу проблему.

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

  5. Сообщите об ошибке в системе отслеживания ошибок трансляции , если у вас есть проблема, уникальная для Shaka Player, в конечных точках трансляции.

Часто задаваемые вопросы

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

Стоит ли мне переходить на Shaka Player?

Мы призываем наших партнеров, использующих контент HLS, начать процесс миграции как можно скорее. В результате ваше приложение обеспечит более надежную потоковую передачу для ваших пользователей. Дополнительные преимущества описаны в разделе «Преимущества Shaka Player» данного руководства. Партнеры должны убедиться, что их приложения работают правильно с помощью Shaka Player, чтобы обеспечить плавный переход. Некоторые приложения могут оказаться под угрозой, когда SDK Web Receiver перейдет на модель отказа, если партнеры заранее не проверят, что их контент правильно воспроизводится в Shaka Player.

Каков ожидаемый уровень усилий при смене игроков?

Партнерам необходимо будет протестировать свое приложение и контент в тестовой среде, чтобы убедиться, что пользовательский опыт аналогичен или улучшен по сравнению с HLS. Для этого партнерам необходимо будет дать согласие на использование этой функции во внутренней среде и тщательно проверить возможность воспроизведения их контента с помощью Shaka Player. См. раздел «Проверка контента» , чтобы узнать, на каких аспектах вашего контента следует сосредоточиться. После проверки партнерам необходимо будет добавить флажок согласия в своей среде производственных приложений, чтобы начать пользоваться преимуществами, предоставляемыми Shaka Player. На высоком уровне есть минимальные изменения в разработке программного обеспечения и в основном требования к обеспечению качества для успешной миграции наших партнеров.

Мое приложение скоро будет использовать HLS для потоковой передачи контента. Что мне делать?

Новые интеграции должны включать использование Shaka Player для воспроизведения. Ваше приложение будет лучше поддерживаться в долгосрочной перспективе, а также получит преимущества новых функций HLS и улучшений производительности. Если в вашей новой интеграции возникают проблемы, сообщите об ошибке как можно скорее, чтобы дать команде разработчиков достаточно времени для решения проблемы. Если у вашего приложения сжатые сроки, включите эту информацию в отчет об ошибке, а также укажите влияние, чтобы соответствующим образом расставить приоритеты. Наша команда инженеров постарается предоставить решение для адекватной поддержки ваших пользователей.

Мой контент или приложение не работает с Shaka Player. Что теперь?

Вам следует сообщить об ошибке либо в проекте Shaka Player, либо в проекте Cast (см. раздел «Сообщить о проблемах» ). Команда разработчиков Cast SDK активно отслеживает эти трекеры и будет работать с вами над решением любых возникших проблем. Чем раньше эти проблемы будут обнаружены, тем больше времени потребуется на их исправление.

MPL больше не получает критических обновлений, что именно это означает?

Исторически MPL внедряла новые функции HLS и исправляла основные ошибки посредством критических обновлений. Теперь, когда MPL больше не будет их получать, новые функции HLS не будут добавлены в плеер. Аналогичным образом, любые сообщаемые проблемы с воспроизведением HLS на MPL не будут исправлены в MPL. Эти проблемы следует решить, переключившись на Shaka Player для воспроизведения. Если проблемы сохраняются, необходимо сообщить об ошибке , связанной с соответствующими проблемами, возникшими в Shaka Player. Партнерам следует отказаться от использования MPL.

Мой контент использует протокол Smooth Streaming. Как это повлияет на мое приложение?

Двоичные файлы MPL по-прежнему будут размещены и доступны для вашего приложения-приемника. Однако любые запросы функций и исправления ошибок, связанные с Smooth Streaming, не будут поддерживаться, поскольку спецификация Smooth Streaming не обновлялась более четырех лет. Мы рекомендуем перенести ваш контент на использование протокола потоковой передачи DASH или HLS, чтобы продолжать получать обновления производительности и поддержку вашего контента.

Мой контент не использует протоколы HLS или Smooth Stream. Как это повлияет на мое приложение?

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