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:
- Комплексное решение на основе 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
Хотя выбор типа отправителя, скорее всего, будет в значительной степени зависеть от платформ отправителя, которые вы собираетесь поддерживать, важно знать возможности и ограничения каждого типа отправителя (см. Таблицу 3 ).
Возможности | Отправитель Android | Отправитель iOS | Веб-отправитель |
---|---|---|---|
Рекламные паузы и сопутствующие объявления в медиапотоке | |||
Стилизованные текстовые дорожки | |||
Группируйте, стилизуйте и активируйте медиатреки | |||
Автовоспроизведение и постановка в очередь (редактирование, изменение порядка, обновление) | |||
Пользовательские каналы | |||
Пользовательские действия | |||
Full Cast UI, включая контроллер и миниконтроллер | |||
Намерение присоединиться |
Типы приложений Receiver
Приложения-получатели обеспечивают связь между приложением-отправителем и устройством Cast. Существует два основных типа приемника: веб-приемник и приемник Android TV . Ожидается, что вы предоставите как минимум веб-приемник, и рекомендуется предоставить приемник Android TV, чтобы максимально повысить удобство работы пользователя с вашим приложением.
Существует три типа веб-приемника, каждый из которых имеет свой набор качеств и возможностей:
- Пользовательский приемник , который позволяет настраивать логику, брендировать и модифицировать элементы управления.
- Стильный медиа-ресивер , который позволяет настраивать брендинг.
- Получатель по умолчанию , который является самым основным типом. Это не позволяет выполнять какие-либо настройки и не подходит для производственных приложений.
В дополнение к возможностям, предоставляемым пользовательским приемником, приемник Android TV предоставляет Cast Connect , набор возможностей, которые обеспечивают нативный опыт для ваших пользователей, органично сочетая Cast с Android TV.
В таблице 2 показаны возможности различных типов приемников.
Android-ТВ-приемник | Пользовательский приемник | Стилизованный медиа-ресивер (SMR) | Медиа-ресивер по умолчанию | |
---|---|---|---|---|
Платформа | ||||
На базе Android (Java/Kotlin) | ||||
Веб-интерфейс (HTML5) | ||||
Требования | ||||
Должен быть зарегистрирован | ||||
Возможности | ||||
Воспроизведение мультимедиа HLS и DASH | ||||
Поддержка сенсорного управления | ||||
Обрабатывает голосовые команды с устройств с поддержкой Assistant. | ||||
Настраиваемый визуальный стиль и брендинг | ||||
Обрабатывает пользовательские сообщения | ||||
Трансляция |
Выбор между тремя вариантами веб-приемника зависит от того, какие типы мультимедиа должно поддерживать приложение, требуемой степени настройки пользовательского интерфейса и любых требований к пользовательской логике.
Определите, какой тип веб-приемника нужно построить
Если ваше приложение может интегрироваться с Cast, используйте следующие подсказки, чтобы определить, какой тип веб-приемника вам следует создать:
Создайте собственный приемник, если: | |||||
Приложению требуется одна или несколько из следующих специальных возможностей:
| ИЛИ ЖЕ |
|
Создайте стильный медиа-ресивер, если: | |||||
|
Используйте медиа-ресивер по умолчанию, если: | |||||
|