Google chromecast with android tv обзор

Обзор Chromecast 2020 с Google TV на борту

Я пользуюсь Chromecast с самой первой версии. В первый раз я купил это устройство, потому что телевизор не поддерживал ничего, кроме Miracast. А для меня это очень неудобно. Затем был Chromecast Ultra — по той же причине, плюс привычка

Сейчас (в 2021 году) с появлением консолей пятого поколения, которых у меня до сих пор нет, я занялся обновлением техники в доме. Я купил новый телевизор с поддержкой HDMI 2.1, Airplay, 120 Hz, 4K и прочими современными ништяками. И при этом я купил Chromecast 2020 с Google TV.

Зачем нужен Chromecast при наличии современного телевизора

Если у вас телевизор на Android (Google TV), то новый и любой старый Chromecast вам не нужен на 100%.

Если у вас телевизор не на Android, а хочется Android, то это тот самый вариант. Новый Chromecast на борту имеет полноценный Google TV со всеми его плюсами и минусами. Поэтому если вам не нравятся дефолтные приложения ОС вашего телевизора или почему-то вам не нравится использовать встроенные средства стриминга, то вот ваше решение.

Что в наборе

Набор нового Chromecast, как обычно, минималистичный. В коробке будет инструкция, сам гаджет, провод питания и адаптер. Для версии 2020 дополнительно положили пульт ДУ и две батарейки AAA.

Ощущения

Описывать Chromecast, как это делают с современными гаджетами, будет глупо. Ведь устройство будет висеть за телевизором, и вообще наплевать, как оно там выглядит и ощущается в руке. Хотя купить можно белую, закатную и небесную расцветки.

При этом Chromecast стал немного компактнее в плане высоты. Длина составляет 162 мм, ширина 61 мм, а высота 12,5 мм. На скриншоте ниже показаны размеры предыдущей версии Chromecast Ultra.

Спецификации

Chromecast версии 2020 поддерживает все современные стандарты видео: 4K HDR, 60 FPS, Dolby Vision, HDR10, HDR10+.

Для работы у вас должен быть обычный Wi-Fi 802.11ac (2.4 GHz / 5 GHz) и HDMI-вход.

Подключение

Если вы уже пользовались Chromecast, то процесс подключения для вас будет привычным. Подключаете устройство в HDMI-порт телевизора, USB-провод в USB-порт для питания. Входите в домашнюю Wi-Fi сеть, пара простых шагов, и готово.

В моём случае всё получилось немного сложнее. Chromecast Ultra для работы вполне хватало мощности USB-порта. Новый же Chromecast пришлось воткнуть в самую настоящую розетку. Повезло, что за телевизором была лишняя.

Также стандартный онбординг у меня ни в какую не хотел работать. Во время авторизации в Google-аккаунте просто был белый экран и ничего. Разработчики учли этот сценарий, и настроить устройство можно вообще без Google Home и смартфона под рукой. Для этого нужно пойти по альтернативной ветке развития и пройти все шаги на самом Chromecast.

После этого устройство работает без каких-либо проблем и доступно в Google Home.

Пульт управления

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

По итогу в моём случае пульт от Chromecast пылится на столе, и зачем он вообще нужен, кроме первоначальной настройки, мне непонятно.

Но за эти короткие минуты знакомства я понял, что пульт лёгкий и приятно ощущается в руке. Управлять им удобно до тех пор, пока не придётся вводить текст. Колёсико ввода какое-то очень маленькое, и часто вместо команды Enter у меня срабатывала команда Back.

И на самом деле тут больше нечего рассказать. Сам Chromecast, как я и говорил, висит за телевизором и работает без каких-либо нареканий. А если вы хотите узнать, как оно вообще по жизни, то в этом вам поможет любой обзор Google TV. И ставить сторонние приложения можно.

Источник

Смотрю и слушаю где хочу. Интегрируем Chromecast в Android-приложение

На улице я часто слушаю аудиокниги и подкасты со смартфона. Когда прихожу домой, мне хочется продолжить слушать их на Android TV или Google Home. Но далеко не все приложения поддерживают Chromecast. А было бы удобно.

По статистике Google за последние 3 года, количество девайсов на Android TV увеличилось в 4 раза, а число партнеров-производителей уже превысило сотню: «умные» телевизоры, колонки, TV-приставки. Все они поддерживают Chromecast. Но в маркете ещё много приложений, которым явно не хватает интеграции с ним.

В этой статье я хочу поделиться своим опытом интеграции Chromecast в Android-приложение для воспроизведения медиа-контента.

Как это работает

Если вы впервые слышите слово «Chromecast», то постараюсь вкратце рассказать. С точки зрения пользования, это выглядит примерно так:

  1. Пользователь слушает музыку или смотрит видео через приложение или веб-сайт.
  2. В локальной сети появляется Chromecast-девайс.
  3. В интерфейсе плеера должна появиться соответствующая кнопка.
  4. Нажав её, пользователь выбирает нужный девайс из списка. Это может быть Nexus Player, Android TV или «умная» колонка.
  5. Дальше воспроизведение продолжается именно с этого девайса.
Читайте также:  Как прошить андроид с рут правами

Технически происходит примерно следующее:

  1. Google Services отслеживают наличие Chromecast девайсов в локальной сети посредством бродкастинга.
  2. Если к вашему приложению подключен MediaRouter, то вам придёт событие об этом.
  3. Когда пользователь выбирает Cast-девайс, и подключается к нему, открывается новая медиа-сессия (CastSession).
  4. Уже в созданную сессию мы будем передавать контент для воспроизведения.
    Звучит очень просто.

Интеграция

У Google есть свой SDK для работы с Chromecast, но он плохо покрыт документацией, а его код обфусцирован. Поэтому многие вещи пришлось проверять методом тыка. Давайте обо всём по порядку.

Инициализация

Для начала нам надо подключить Cast Application Framework и MediaRouter:

Затем Cast Framework должен получить идентификатор приложения (об этом позже), и типы поддерживаемого медиаконтента. То есть если у нас приложение воспроизводит только видео, то кастинг на колонку Google Home будет невозможен, и в списке девайсов её не будет. Для этого нужно создать реализацию OptionsProvider:

И объявить его в Manifest:

Регистрируем приложение

Чтобы Chromecast мог работать с нашим приложением, его необходимо зарегистрировать в Google Cast SDK Developers Console. Для этого потребуется аккаунт Chromecast разработчика (не путать с аккаунтом разработчика Google Play). При регистрации придётся внести разовый взнос в 5$. После публикации ChromeCast Application нужно немного подождать.
В консоли можно изменить внешний вид Cast-плеера для девайсов с экраном и посмотреть аналитику кастинга в рамках приложения.

MediaRouter

MediaRouteFramework – это механизм, который позволяет находить все удалённые устройства воспроизведения вблизи пользователя. Это может быть не только Chromecast, но и удалённые дисплеи и колонки с использованием сторонних протоколов. Но нас интересует именно Chromecast.

В MediaRouteFramework есть View, которая отражает состояние медиароутера. Есть два способа её подключить:

А из кода требуется всего лишь зарегистрировать кнопку в CastButtonFactory. тогда в нее будет прокидываться текущее состояние медиароутера:

Теперь, когда приложение зарегистрировано, и MediaRouter настроен, можно подключаться к ChromeCast-девайсам и открывать сессии к ним.

Кастинг медиаконтента

ChromeCast поддерживает три основных вида контента:

В зависимости от настроек плеера, типа медиаконтента и cast-девайса, интерфейс плеера может отличаться.

CastSession

Итак, пользователь выбрал нужный девайс, CastFramework открыл новую сессию. Теперь наша задача заключается в том, чтобы отреагировать на это и передать девайсу информацию для воспроизведения.
Чтобы узнать текущее состояние сессии и подписаться на обновление этого состояния, воспользуемся объектом SessionManager:

А ещё можем узнать, нет ли открытой сессии в данный момент:

У нас есть два основных условия, при которых мы можем начинать кастинг:

  1. Сессия уже открыта.
  2. Есть контент для кастинга.

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

Кастинг

Теперь, когда у нас есть что кастить и куда кастить, можем перейти к самому главному. Помимо всего прочего, у CastSession есть объект RemoteMediaClient, который отвечает за состояние воспроизведения медиаконтента. С ним и будем работать.

Создадим MediaMetadata, где будет храниться информация об авторе, альбоме и т. д. Очень похоже на то, что мы передаём в MediaSession, когда начинаем локальное воспроизведение.

Параметров у MediaMetadata много, и их лучше посмотреть в документации. Приятно удивило, что можно добавить изображение не через bitmap, а просто ссылкой внутри WebImage.

Объект MediaInfo несёт информацию о метаданных контента и будет говорить о том, откуда медиаконтент брать, какого он типа, как его проигрывать:

Напомню, что contentType – это тип контента по спецификации MIME.
Также в MediaInfo можно передать рекламные вставки:

  • setAdBreakClips – принимает список рекламных роликов AdBreakClipInfo с указанием ссылок на контент, заголовка, тайминга и временем, через которое реклама становится пропускаемой.
  • setAdBreaks – информация о разметке и тайминге рекламных вставок.

В MediaLoadOptions мы описываем то, как будем обрабатывать медиапоток (скорость, начальная позиция). Также документация говорит, что через setCredentials можно передать заголовок запроса для авторизации, но у меня запросы от Chromecast не включали в себя заявленные поля для авторизации.

После того как всё готово, мы можем отдать все данные в RemoteMediaClient, и Chromecast начнёт воспроизведение. Важно поставить локальное воспроизведение на паузу.

Обработка событий

Видео заиграло, а что дальше? Что если пользователь нажмёт паузу на телевизоре? Чтобы узнавать о событиях, происходящих со стороны Chromecast, у RemoteMediaClient есть обратные вызовы:

Узнать текущий прогресс тоже просто:

Опыт интеграции с существующим плеером

В приложении, над которым я работал, уже был готовый медиаплеер. Стояла задача интегрировать в него поддержку Chromecast. В основе медиаплеера лежал State Machine, и первой мыслью было добавить новое состояние: «CastingState». Но эта идея сразу была отвергнута, потому что каждое состояние плеера отражает состояние воспроизведения, и не важно, что служит реализацией ExoPlayer или ChromeCast.
Тогда пришла идея сделать некую систему делегатов с расстановкой приоритетов и обработкой «жизненного цикла» плеера. Все делегаты могут получать события о состоянии плеера: Play, Pause и т.д. — но только ведущий делегат будет воспроизводить медиаконтент.

У нас есть примерно такой интерфейс плеера:

Внутри у него будет лежать State Machine с таким множеством состояний:

  • Empty — начальное состояние до инициализации.
  • Preparing — плеер инициализирует воспроизведение медиаконтента.
  • Prepared — медиаданные загружены и готовы к воспроизведению.
  • Playing
  • Paused
  • WaitingForNetwork
  • Error

Раньше каждое состояние при инициализации отдавало команду в ExoPlayer. Теперь оно будет отдавать команду в список Playing-делегатов, и «Ведущий» делегат сможет его обработать. Поскольку делегат реализует все функции плеера, то его тоже можно наследовать от интерфейса плеера и при необходимости использовать отдельно. Тогда абстрактный делегат будет выглядеть так:

Читайте также:  Блокирование рекламы для андроида

Для примера я упростил интерфейсы. В реальности событий немного больше.
Делегатов может быть сколько угодно, как и источников воспроизведения. А делегат для Chromecast может выглядеть примерно так:

Прежде чем отдать команду о воспроизведении, нам надо определиться с ведущим делегатом. Для этого они добавляются в порядке приоритета в плеер, и каждый из них может отдавать состояние своей готовности в методе readyForLeading(). Полный код примера можно увидеть на GitHub.

Есть ли жизнь после ChromeCast

После того как я интегрировал поддержку Chromecast в приложение, мне стало приятнее приходить домой и наслаждаться аудиокнигами не только через наушники, но и через Google Home. Что касается архитектуры, то реализация плееров в разных приложениях может различаться, поэтому не везде такой подход будет уместен. Но для нашей архитектуры это подошло. Надеюсь, эта статья была полезной, и в ближайшем будущем появится больше приложений, умеющих интегрироваться с цифровым окружением!

Источник

Обзор нового Chromecast на Google TV: чем он лучше старых и какова замена Android TV

Анонс нового Chromecast показал, что время циклично: новый стриминговый донгл работает под управлением Google TV. Нет, это не новая платформа, основанная на Android TV. И это не тот самый Android TV. Ситуация с этой сменой названия действительно сбивает с толку. Но вот в чём действительно нельзя запутаться, так это в том, что Chromecast with Google TV (именно так официально называется новая модель) стала, по сути, улучшенной версией Chromecast Ultra. Новинка транслирует 4К-видео, имеет комплектный пульт дистанционного управления и получила несколько интересных функций из Google TV. Конечно, новая платформа неидеальна, но за 50 долларов (такая официальная цена на новинку в США) жаловаться трудно.

Характеристики

  • Хранилище: 8 ГБ.
  • Видео: до 4K при 60 FPS, Dolby Vision, HDR10, HDR10+.
  • HDMI: 2.1.
  • Аудио: DTS, Dolby Digital+, Dolby Audio, Dolby Atmos.
  • Wi-Fi: 802.11ac (2,4 / 5 ГГц).
  • Bluetooth: есть.
  • Программное обеспечение: Google TV (Android 10).
  • Габариты и вес донгла: 162×61×12,5 мм, 55 грамм.
  • Габариты и вес пульта ДУ: 122×38×18 мм, 63 грамма.
  • Сенсоры и датчики пульта: акселерометр, ИК-порт, микрофон.

Дизайн, пульт ДУ и комплектация

Новый Chromecast напоминает большинство последних гаджетов от Google. Это скруглённый «кирпич», который поставляется в нескольких расцветках, и, как у предшествующих моделей, посередине его корпуса расположен утончённый логотип «G». Короткий кабель с HDMI протягивается с одного конца, а на другой стороне расположен порт питания. Приятно видеть, что Google в этот раз перешёл на USB-C, и не потому, что кабель microUSB в старом Chromecast особо раздражал. Как часто вам действительно нужно отключать этот стриминговый донгл? Я просто уверен, что в 2020 году USB-C подходит лучше. Больше о дизайне сказать нечего — гаджет будет болтаться позади телевизора, и, если всё пойдёт по плану, вы редко будете смотреть на него (если вообще хоть когда-нибудь будете).

В этот раз Google добавил в комплектацию пульт дистанционного управления, и мне этого хватило бы для счастья, даже если это было бы единственным нововведением. Он примерно такого же размера и такой же формы, как пульты Roku. В верхней части расположен D-Pad (кнопка-крестовина, в этом случае «круговина») с кнопкой «Выбрать» / «Плэй» / «Пауза». Ниже размещены кнопки «Назад», «Google Ассистент», «Домой», «Без звука», YouTube и Netflix. Отдельные кнопки для вызова сервисов кажутся чем-то лишним на фоне минималистичного дизайна пульта. В нижней части расположились две отдельные кнопки: для управления питанием телевизора и для входа в режим ТВ-приставки. На боковой грани размещена качелька для регулирования громкости.

Когда вы нажимаете и удерживаете кнопку «Google Ассистента», встроенный в пульт микрофон активируется — об этом свидетельствует светодиод в нижней части пульта. Вы можете надиктовывать команды, специфичные для Google TV, — например, о желании посмотреть фильм или телепередачу. Голосовой помощник также взаимодействует с другими поддерживающими «Google Ассистента» гаджетами в доме: с умными камерами, лампочками и прочим. По крайней мере, обычно вы можете воспользоваться им для этих целей — на данный момент «Ассистент» на Chromecast слишком придирчив к фразам.

В комплекте с самим Chromecast вы получаете пульт дистанционного управления и кабель питания USB-C (гаджет не может питаться через HDMI — его нужно подключать к источнику питания). Также в коробке лежат две ААА-батарейки для пульта.

Программное обеспечение и производительность

В новом Chromecast есть два «режима». Вы можете использовать по принципу старых моделей, то есть исключительно для передачи видео с любого совместимого приложения на вашем смартфоне, а также подключать к приложению Google Home для настройки параметров и аудиогрупп. Но другой режим погружает в новое программное обеспечение в лице Google TV — только не стоит слово «новое» интерпретировать неправильно. Это всё ещё Android, который работает на вашем телевизоре, и Google TV разделяет с Android TV множество элементов. Новая платформа достаточно хорошо работает с гаджетом: у неё не падают кадры и не происходят подлагивания (в большинстве случаев), но иногда на запуск приложения или на отображение информации о контенте уходит больше времени, чем ожидаешь. Я играл в несколько простых игр, и они работали хорошо. Но на геймерскую приставку не рассчитывайте: на устройстве не хватает места для установки чего-либо требовательного (накопитель всего на 8 ГБ).

Читайте также:  Почему не работает режим модема андроид

Интерфейс Google TV все ещё содержит большие плитки, как в Android TV, но в новой платформе больше внимания уделяется контенту, а не приложениям, содержащим его. Новый главный экран называется «Для вас» и объединяет потоковое видео со всех установленных приложений. Идея заключается в том, чтобы показать вам все фильмы и сериалы, которые вы можете посмотреть в текущий момент без платы за них (хотя я заметил несколько видео, которые не были доступны для меня бесплатно — скорее всего, это баг первых версий прошивки). Система отображает рекомендации, основанные на трендах, а также различные жанры, которые можно прокручивать. Как мне кажется, Google TV лучше отображает видео, которые я могу захотеть посмотреть, чем это делает Android TV, и мне нравится, что платформа идентифицирует контент, за который я уже заплатил в рамках подписки на тот или ной сервис. Разработчики также добавили опцию составления списка просмотра, чтобы вы могли добавить в него всё, что хотите посмотреть в будущем.

В Google TV также есть ТВ-интеграция — в нём есть специальная вкладка для прямого эфира, а некоторые программы появляются прямо во вкладке «Для вас». На старте эта опция работает только с YouTube TV (в России недоступен) — если у вас нет подписки, вкладка прямого эфира вообще не будет отображаться. По заявлениям Google, в будущем система будет работать с большим число сервисов. Тем не менее вы все ещё можете запускать такие приложения, как Hulu, чтобы посмотреть прямые трансляции.

Интерфейс очень похож на таковой в приложении YouTube TV (которое можно запустить и использовать отдельно, если хотите), но он позволяет выполнять стандартные задачи быстрее: запись контента, просмотр уже сделанных записей, перелистывание каналов — всё это доступно без открытия приложения YouTube TV. Однако нужно убедиться, что в YTTV и в Chromecast выполнен вход в одну и ту же учётную запись — в противном случае, интеграция с главным экраном работать не будет.

Процесс настройки пульта дистанционного управления весьма быстрый. После того, как вас попросят установить параметры аудио и телевизора, Chromecast запрограммирует ИК-датчик пульта для дистанционного управления всем. Не думаю, что после этого мне понадобится прикасаться к отдельным ДУ-пультам от телевизора и от саундбара, потому что в 90% случаев я только включаю/выключаю эти устройства или изменяю громкость — и то, и другое я могу делать с помощью пульта от Chromecast. Также стоит отметить, что у пульта нет задержек — любой, кто пользовался NVIDIA Shield, знает о раздражающей особенности его пульта, который «просыпается» несколько секунд после режима ожидания.

Отзыв: стоит ли покупать?

Да. Даже если бы это был просто донгл за 50 долларов с поддержкой 4К, потому что Chromecast Ultra продавался за 70 долларов. Но стриминг высокого разрешения — это не всё, что вы получите. У новинки есть пульт. Наконец-то! Он хорош в управлении Google TV, а эта платформа тоже нова для Chromecast. Я не восхищён ребрендингом Android TV, но он в любом случае состоится.

Вам стоит купить Chromecast на Google TV, если:

  • нужно новое устройство для 4К-стриминга;
  • не планируете играть в игры на телевизоре.

Google TV — всё ещё Android, и новая платформа действительно похожа на Android TV. Тем не менее Google рассматривает её как совершенно отдельный продукт, который значимее Android TV, и новая платформа станет доступна большому числу устройств в 2021 году. Новому расположению элементов и рекомендациям отведено центрально место, и это, в основном, оказалось успешным. Экран «Для вас» предлагает много интересного контента (я подключился к 4 стриминговым сервисам), и хорошо, что он отображает только те фильмы, которые можно посмотреть бесплатно с учётом действующих подписок (в большинстве случаев). Интеграция с прямыми эфирами работает, но хотелось бы, чтобы поддерживались больше сервисов.

Вам не следует покупать Chromecast на Google TV, если:

  • хотите играть в игры для Android или Stadia на вашем телевизоре;
  • не нужен пульт дистанционного управления и нет 4К-телевизора.

Если вы раздумываете о покупке Chromecast в качестве устройства для стриминга, то ответ на вопрос, стоит ли покупать новую модель, очевиден. В Google TV есть некоторые раздражители, но стоит думать об этой платформе как о бонусе — вам не придётся использовать её, если не захотите. Новый Chromecast все ещё представляет из себя полнофункциональный донгл для стриминга, только теперь с ДУ-пультом, и это прекрасно.

Плюсы

  • Цена: всего 50 долларов (в США) — очевидное решение, если у вас 4К-телевизор.
  • Аудио и видео: этот донгл поддерживает всё, в том числе многочисленные стандарты HDR и высококачественное аудио.
  • Пульт ДУ: прост в настройке, отзывчив и хорошо продуман.
  • Google TV: обновлённый интерфейс отображения контента, поддержка всех оптимизированных под телевизоры приложений. И это в дополнение к стандартному функционалу стримингового донгла.

Минусы

  • Тоже Google TV: некоторые баги первых сборок, нет поддержки нескольких пользователей. Редизайн и ребрендинг Android TV, вероятно, добавит лишнюю путаницу потребителям.
  • Хранилище: всего 8 ГБ жёстко ограничивают то, что вы можете установить.
  • Прямые эфиры: работают только с YouTube TV (недоступен в России), который стоит весьма не мало.
  • Stadia: несмотря на то, что игровой стриминговый сервис почти готов для Android TV, он получит поддержку Google TV не раньше начала 2021 года.

Источник

Оцените статью