Cast SDK позволяет пользователю выбирать потоковый аудиовизуальный контент с помощью отправителя и воспроизводить его (или транслировать) на другое устройство, известное как получатель , одновременно управляя воспроизведением с помощью отправителя.
Термин «Отправитель» относится к приложению, которое играет роль контроллера сеанса Cast. Отправитель инициирует сеанс трансляции и управляет взаимодействием пользователя с контентом.
Существует множество типов отправителей, включая мобильные приложения и веб-приложения Google Chrome, а также виртуальные поверхности управления на сенсорных устройствах Google Home. Элементы управления мультимедиа в веб-браузере Chrome действуют как отправитель, как и сам Google Assistant.
Термин «Получатель» относится к приложению, работающему на устройстве с поддержкой Cast, которое отвечает за ответ на команды отправителя и за передачу потокового контента из онлайн-службы потоковой передачи на устройство с поддержкой Cast. Примеры устройств-приемников с поддержкой Cast включают Chromecast, интеллектуальные телевизоры, интеллектуальные экраны и интеллектуальные колонки.
Cast SDK также поддерживает подключение нескольких отправителей к сеансу Cast. Например, один отправитель может начать сеанс на получателе, а другой отправитель может присоединиться к тому же сеансу, чтобы управлять воспроизведением, загружать новый контент или ставить в очередь дополнительный контент для последующего использования.
Компоненты и архитектура приложения
Google Cast поддерживает разработку приложений Sender для Android , iOS и веб-платформ с поддержкой Cast , таких как Google Chrome.
Приложение-приемник работает на устройстве с поддержкой Cast, примеры которого включают:
- Chromecast, подключенный к телевизору высокой четкости или аудиосистеме.
- Телевизор с поддержкой Cast.
- Смарт-экран с поддержкой Cast.
- Устройство Android с поддержкой Cast, например Android TV.
Отправитель управляет воспроизведением мультимедиа на получателе с помощью сообщений воспроизведения мультимедиа , определенных SDK. Если вариант использования приложения требует отправки данных, которые формально не определены в стандартных сообщениях воспроизведения мультимедиа, вы можете использовать поле customData
, предоставляемое несколькими типами сообщений, для передачи вспомогательных данных.
Существует два основных сценария разработки приложений Cast:
- Комплексное решение на основе Cast. В этом сценарии разработчик должен создать как приложение-отправитель, так и два приложения-получателя: приемник Android TV и веб-приемник (подробнее об этом ниже).
- Приложение-отправитель с поддержкой Cast, которое может транслировать контент (экран или мультимедийный поток) на приемник Google Cast по умолчанию, который называется медиа-приемником по умолчанию. В этом сценарии разработчику нужно создать только одно приложение — Sender. Медиа-ресивер по умолчанию полезен для обучения и очень ограниченных сценариев воспроизведения. Это нецелесообразно для получателей, которым требуется специальная бизнес-логика, учетные данные, управление правами или аналитика.
SDK Google Cast
Google Cast SDK состоит из нескольких библиотек Cast API . Помимо API существует два вида документации:
- Руководства по API, которые помогут вам использовать API, а также примеры кода , демонстрирующие функции Cast, и
- Учебные пособия Codelab , которые обучат вас процессу разработки определенных типов приложений Cast.
API-интерфейсы Cast разделены в зависимости от платформы и типа приложения Cast. В таблице 1 приведены ссылки на руководства по различным API Cast.
Платформа | Отправитель | Получатель |
---|---|---|
Андроид | Приложения для Android-отправителей | Обзор ресивера Android TV |
Интернет | Приложения веб-отправителя | Обзор веб-ресивера |
iOS | iOS-приложения для отправки | н/д |
Типы приложений-отправителей
Приложения Sender могут работать на трех платформах:
- Интернет
- Андроид
- iOS
Хотя выбор типа Sender, скорее всего, будет во многом зависеть от платформ Sender, которые вы собираетесь поддерживать, важно знать возможности и ограничения каждого типа Sender (см. Таблицу 3 ).
Возможность | Android-отправитель | iOS отправитель | Веб-отправитель |
---|---|---|---|
Рекламные паузы и сопутствующие объявления в медиапотоке | |||
Стилизованные текстовые дорожки | |||
Группируйте, стилизуйте и активируйте медиа-треки | |||
Автозапуск и очередь (редактирование, изменение порядка, обновление) | |||
Клиентские каналы | |||
Пользовательские действия | |||
Полный интерфейс Cast, включая контроллер и миниконтроллер | |||
Намерение присоединиться |
Типы приложений-приемников
Приложения-получатели обрабатывают связь между приложением-отправителем и устройством Cast. Существует два основных типа ресиверов: веб-ресивер и Android TV-ресивер . Ожидается, что вы предоставите как минимум веб-приемник, и вам рекомендуется предоставить приемник Android TV, чтобы максимально повысить удобство работы пользователя с вашим приложением.
Существует три типа веб-приемников, каждый из которых имеет свой набор качеств и возможностей:
- Пользовательский приемник , который позволяет настраивать логику, брендинг и модификацию элементов управления.
- Стильный медиа-ресивер , позволяющий настраивать брендинг.
- Получатель по умолчанию — самый простой тип. Это не допускает какой-либо настройки и не подходит для рабочих приложений.
В дополнение к возможностям, предоставляемым пользовательским приемником, Android TV Receiver предоставляет Cast Connect — набор возможностей, которые обеспечивают удобство работы ваших пользователей, плавно сочетая Cast с Android TV.
В Таблице 2 показаны возможности различных типов приемников.
Android-телевизор | Пользовательский приемник | Стилизованный медиа-ресивер (SMR) | Медиа-ресивер по умолчанию | |
---|---|---|---|---|
Платформа | ||||
На базе Android (Java/Kotlin) | ||||
Веб-интерфейс (HTML5) | ||||
Требования | ||||
Должен быть зарегистрирован | ||||
Возможности | ||||
Воспроизведение мультимедиа HLS и DASH | ||||
Поддержка сенсорного управления | ||||
Обрабатывает голосовые команды с устройств с поддержкой Ассистента. | ||||
Настраиваемый визуальный стиль и брендинг | ||||
Обрабатывает пользовательские сообщения | ||||
Cast Connect |
Выбор между тремя вариантами веб-приемника зависит от того, какие типы мультимедиа должно поддерживать приложение, требуемая степень настройки пользовательского интерфейса и любые требования к пользовательской логике.
Определите, какой тип веб-приемника нужно создать.
Если ваше приложение может интегрироваться с Cast, используйте следующие подсказки, чтобы определить, какой тип веб-приемника вам следует создать:
Создайте собственный приемник, если: | |||||
Приложению требуется одна или несколько из следующих специальных возможностей:
| ИЛИ |
|
Создайте стилизованный медиа-приемник, если: | |||||
|
Используйте медиа-ресивер по умолчанию, если: | |||||
|