Обзор

Cast SDK позволяет пользователю выбирать потоковое аудиовизуальное содержимое с помощью Sender и воспроизводить его (или транслировать) на другое устройство, известное как Receiver , при этом управляя воспроизведением с помощью Sender.

Термин « Отправитель » относится к приложению, которое играет роль контроллера для сеанса Cast. Отправитель инициирует сеанс трансляции и управляет взаимодействием пользователя с контентом.

Существует множество видов отправителей, включая мобильные приложения и веб-приложения Google Chrome, а также виртуальные панели управления на устройствах Google Home с сенсорным экраном. Элементы управления мультимедиа в веб-браузере Chrome работают как отправитель, как и сам Google Assistant.

Термин Получатель относится к приложению, работающему на устройстве с поддержкой Cast, которое отвечает за ответы на команды отправителя и за передачу потокового контента из онлайн-службы потоковой передачи на устройство с поддержкой Cast. Примеры устройств Receiver с поддержкой Cast включают Chromecast, смарт-телевизоры, смарт-экраны и смарт-колонки.

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

Компоненты и архитектура приложения

Google Cast поддерживает разработку приложений Sender для Android , iOS и веб-платформ с поддержкой Cast , таких как Google Chrome.

Приложение Receiver работает на устройстве с поддержкой Cast, например:

  • Chromecast, подключенный к телевизору высокой четкости или звуковой системе.
  • Телевидение с поддержкой Cast.
  • Smartscreen с поддержкой Cast.
  • Android-устройство с поддержкой Cast, например Android TV.

Литая архитектура высокого уровня

Отправитель управляет воспроизведением мультимедиа на Получателе с помощью сообщений воспроизведения мультимедиа , определенных SDK. Если вариант использования приложения требует отправки данных, которые формально не определены в стандартных сообщениях воспроизведения мультимедиа, вы можете использовать поле customData , предоставляемое несколькими типами сообщений, для передачи вспомогательных данных.

Существует два основных сценария разработки приложений Cast:

  1. Комплексное решение на основе Cast. В этом сценарии разработчик должен создать как приложение-отправитель, так и два приложения-получателя: приемник Android TV и веб-приемник (подробнее об этом ниже).
  2. Приложение отправителя с поддержкой Cast, которое может транслировать контент (экран или мультимедийный поток) в приемник Google Cast по умолчанию, который называется приемником мультимедиа по умолчанию. В этом сценарии разработчику нужно создать только одно приложение — Sender. Медиа-ресивер по умолчанию полезен для обучения и очень ограниченных сценариев воспроизведения. Это нецелесообразно для получателей, которым требуется настраиваемая бизнес-логика, учетные данные, управление правами или аналитика.

SDK Google Cast

Google Cast SDK состоит из нескольких библиотек Cast API . Наряду с API существует два вида документации:

  • Руководства по API, которые помогут вам использовать API с примерами кода , демонстрирующими функции Cast, и
  • Учебники Codelab , которые проинструктируют вас в процессе разработки определенных типов приложений Cast.

API Cast разделены в зависимости от платформы и типа приложения Cast. Таблица 1 содержит ссылки на руководства по различным API Cast.

Таблица 1. Руководства по Cast SDK
Платформа Отправитель Получатель
Андроид Android-приложения для отправки Обзор приемника Android TV
Интернет Приложения веб-отправителя Обзор веб-приемника
iOS iOS-приложения отправителя н/д

Типы приложений-отправителей

Приложения Sender могут работать на трех платформах:

  • Интернет
  • Андроид
  • iOS

Хотя выбор типа отправителя, скорее всего, будет в значительной степени зависеть от платформ отправителя, которые вы собираетесь поддерживать, важно знать возможности и ограничения каждого типа отправителя (см. Таблицу 3 ).

Таблица 3: Сравнение отправителей
Возможности Отправитель Android Отправитель iOS Веб-отправитель
Рекламные паузы и сопутствующие объявления в медиапотоке
Стилизованные текстовые дорожки
Группируйте, стилизуйте и активируйте медиатреки
Автовоспроизведение и постановка в очередь (редактирование, изменение порядка, обновление)
Пользовательские каналы
Пользовательские действия
Full Cast UI, включая контроллер и миниконтроллер
Намерение присоединиться

Типы приложений Receiver

Приложения-получатели обеспечивают связь между приложением-отправителем и устройством Cast. Существует два основных типа приемника: веб-приемник и приемник Android TV . Ожидается, что вы предоставите как минимум веб-приемник, и рекомендуется предоставить приемник Android TV, чтобы максимально повысить удобство работы пользователя с вашим приложением.

Существует три типа веб-приемника, каждый из которых имеет свой набор качеств и возможностей:

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

В дополнение к возможностям, предоставляемым пользовательским приемником, приемник Android TV предоставляет Cast Connect , набор возможностей, которые обеспечивают нативный опыт для ваших пользователей, органично сочетая Cast с Android TV.

В таблице 2 показаны возможности различных типов приемников.

Таблица 2: Сравнение приемников
Android-ТВ-приемник Пользовательский приемник Стилизованный медиа-ресивер (SMR) Медиа-ресивер по умолчанию
Платформа
На базе Android (Java/Kotlin)
Веб-интерфейс (HTML5)
Требования
Должен быть зарегистрирован
Возможности
Воспроизведение мультимедиа HLS и DASH
Поддержка сенсорного управления
Обрабатывает голосовые команды с устройств с поддержкой Assistant.
Настраиваемый визуальный стиль и брендинг
Обрабатывает пользовательские сообщения
Трансляция

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

Определите, какой тип веб-приемника нужно построить

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

Создайте собственный приемник, если:
Приложению требуется одна или несколько из следующих специальных возможностей:

  • Стиль, не предоставляемый Styled Media Receiver
  • Модификации сенсорного управления
  • Авторизация или аутентификация
  • Аналитика приемника
  • Лицензия DRM поставляется отдельно от манифеста
  • До, в середине или после рекламы
  • Любые другие пользовательские функции Receiver или пользовательская логика JavaScript
ИЛИ ЖЕ
  • Приложение требует индивидуального стиля
А ТАКЖЕ
  • Возможности стиля Styled Media Receiver недостаточны
Создайте стильный медиа-ресивер, если:
  • Приложение требует индивидуального стиля
А ТАКЖЕ
  • Возможностей стиля Styled Media Receiver достаточно.
А ТАКЖЕ
  • Приложение не требует каких-либо специальных возможностей, перечисленных выше.
Используйте медиа-ресивер по умолчанию, если:
  • Формат мультимедиа поддерживается
А ТАКЖЕ
  • Приложение не требует индивидуального стиля
А ТАКЖЕ
  • Приложение не требует каких-либо специальных возможностей, перечисленных выше.