Quantcast
Channel: Статьи Intel Developer Zone
Viewing all articles
Browse latest Browse all 357

Использование возможностей технологии Intel® Wireless Display для стандарта Miracast* на телефонах с архитектурой Intel®

$
0
0

Введение

Технология Wireless Display становится все более и более популярной на телефонах и планшетных ПК под управлением ОС Android* с того момента, как системы Google начали поддерживать Miracast в ОС Android 4.2. Технология Wireless Display облегчает использование функций расширения экрана телефона для конечных пользователей. Это представляется хорошей возможностью для независимых поставщиков ПО для интеграции функций технологии Wireless Display в их приложениях, в особенности, в играх и видеопроигрывателях.

Однако использование технологии Intel® Wireless Display для поддержки Miracast в ОС Android для телефонов на основе платформы x86 представляется большой проблемой для независимых поставщиков ПО. В данной статье описываются возможности использования двух дисплеев с функциями Miracast на примере онлайнового видеопроигрывателя iQiyi и приложения WPS Office на телефоне K900. Мы надеемся, что в будущем также появятся и многие другие удивительные приложения.

Что такое Miracast

19.сентября 2012 года организация Wi-Fi Alliance официально объявила о создании стандарта Wi-Fi CERTIFIED* Miracast, который является новаторским решением для качественного воспроизведения видеоданных на устройствах без кабелей и подключений к сети. Пользователи могут просматривать фотографии или видео, находящиеся на смартфоне, на большом экране телевизора, совместно использовать экран ноутбука для показа информации, отображаемой на его экране, с помощью проектора в конференц-зале в режиме реального времени и просмотра прямых трансляций программ кабельного телевидения на планшетном ПК. Подключения Miracast выполняются с помощью стандарта Wi-Fi CERTIFIED Wi-Fi Direct* между сертифицированными устройствами без использования сетевых точек доступа.

Связь Miracast основана на непосредственных подключениях между сетевыми узлами Wi-Fi Direct. Далее представлена архитектура Miracast на основе Wi-Fi.



Рисунок 1. Архитектура Miracast*

Существуют четыре режима подключений Miracast, которые показаны на следующем рисунке:



Рисунок 2. Режимы подключения Miracast*

Используя подключения Miracast, вы можете обеспечить связь различных устройств без инфраструктуры точек доступа Wi-Fi (см. топологию 1). Вы также можете подключаться к дисплею с помощью адаптера при одновременном подключении к точке доступа (см. топологию 2). В этом режиме очень удобно смотреть видеофильмы онлайн в домашних условиях. Если у вас есть телевизор с технологией Smart TV, который также поддерживает Miracast, тогда он, точка доступа и смартфон могут подключиться друг к другу (см. топологию 4).

По стандарту Miracast интерактивное взаимодействие источника видео и устройств отображения может выглядеть следующим образом:



Рисунок 3. Управление сеансом Miracast*

Перед установлением подключения источник и устройства отображения обнаруживают друг у друга возможности Miracast. Данное подключение основано на технологии Wi-Fi Direct или TDLS. Источник и устройства отображения устанавливают параметры для сеанса Miracast на основе функции согласования. Процесс согласования использует протокол подключения TCP. Устройства-источники начинают передачу данных на устройства отображения в формате MPEG2-TS, который используется в подключениях UDP.

Во время беспроводной потоковой передачи данных стандарт Miracast поддерживает форматы, которые представлены в таблице 4.

Таблица 4. Форматы передачи данных Miracast*

Miracast в среде Android 4.2

Операционные системы Google начали поддерживать возможности Miracast, начиная с ОС Android версии 4.2. Теперь конечные пользователи могут обмениваться фильмами, фотографиями, видео на сайте YouTube и любыми данными, которые могут транслироваться на экране телевизора HDTV, с помощью технологии беспроводного отображения. Внешний HDTV-приемник отображается как внешний дисплей.

Теперь возможности Miracast на Android поддерживают использование режима дополнительного дисплея и режима презентации (см. следующий рисунок):



Рисунок 5. Режимы, поддерживаемые Miracast*

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

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

Разработка функций поддержки стандарта Miracast для телефонов на базе архитектуры Intel

Решение Intel Wireless Display, работающее на телефонах и планшетных ПК с ОС Android, полностью совместимо с Miracast. Оно также обеспечивает поддержку некоторых приложений с функциями Miracast на телефонах, имеющих архитектуру Intel.

Одним из них является iQiyi для работы фоновой функции передачи видео. Пользователи могут транслировать видео в фоновом режиме на удаленный дисплей в разрешении 1080p, используя приложение iQiyi, одновременно просматривая видео локально или используя другое приложение, например, электронную почту или браузер, не прерывая фоновое воспроизведение (см. следующий рисунок):



Рисунок 6. Видео-функция BGM приложения iQiyi

Другим приложением является WPS Office с возможностью разделения пользовательского интерфейса на локальном и удаленных дисплеях. При подключении к телевизору с помощью технологии Wireless Display приложение WPS Office может использоваться для демонстрации слайдов PPT на удаленном экране с одновременным отображением замечаний PPT на экране телефона, что очень удобно для вступающего. Мы также планируем добавить функцию отображения таймера на экране телефона, чтобы у выступающего была возможность получать напоминания.



Рисунок 7. Функция разделения пользовательского интерфейса WPS WPS Office

Эти две функции работают в режиме презентации Miracast с использованием аппаратных возможностей телефона на платформе Intel. Два ранее представленных приложения размещены на сайте Intel AppUp® для конечных пользователей, которые те могут установить на свои телефоны на базе платформы Intel.

Пример. Использование возможностей подключения второго дисплея

В этом разделе будет представлено, как выполнить фоновую передачу видео, воспользовавшись приложением iQiyi.

Как мы уже знаем, применение видео-функции BGM осложняется использованием службы для воспроизведения видео в фоновом режиме или корректного отображения видео на экране. Когда пользователи нажимают клавишу перехода на главную страницу (Home), вывод изображения автоматически прекращается, поэтому необходимо использовать вторичный дисплей для показа передаваемого в фоновом режиме видео. Далее показана блок-схема программы:



Рисунок 8. Блок-схема фоновой передачи видео

Для формирования уникальных данных для вторичного дисплея разверните класс Presentationи используйте функцию onCreate(). В onCreate()укажите свой пользовательский интерфейс, вызвав setContentView(). Являясь дополнением класса Dialog, класс Presentationпредоставляет область, в которой ваше приложение может отображать уникальный пользовательский интерфейс на вторичном дисплее.

Существует два метода использования вторичного дисплея для презентации. Необходимо воспользоваться прикладным интерфейсом DisplayManagerили MediaRouter. Простейшим способом выбора дисплея для презентации является использование прикладного программного интерфейса MediaRouter. Служба медиа-маршрутизатора отслеживает доступные в системе маршруты аудио и видеоданных. Если необходимо показать содержимое на вторичном дисплее, медиа-маршрутизатор предлагает подходящий дисплей для презентации, который должно использовать приложение.

Далее представлено, как можно использовать медиа-маршрутизатор для создания и показа презентации на подходящем дисплее с помощью функции getPresentationDisplay().


 MediaRouter mediaRouter = (MediaRouter) context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
 MediaRouter.RouteInfo route = mediaRouter.getSelectedRoute();
 if (route != null) {
     Display presentationDisplay = route.getPresentationDisplay();
     if (presentationDisplay != null) {
         Presentation presentation = new MyPresentation(context, presentationDisplay);
         presentation.show();
     }
 }

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

Диспетчер дисплеев постоянно отслеживает все дисплеи в системе. Далее представлена идентификация подходящих дисплеев для показа презентаций с помощью getDisplays(String)и категории DISPLAY_CATEGORY_PRESENTATION.


 DisplayManager displayManager = (DisplayManager) context.getSystemService(Context.DISPLAY_SERVICE);
 Display[] presentationDisplays = displayManager.getDisplays(DisplayManager.DISPLAY_CATEGORY_PRESENTATION);
 if (presentationDisplays.length > 0) {
      Display display = presentationDisplays[0];
     Presentation presentation = new MyPresentation(context, presentationDisplay);
     presentation.show();
 }

Далее показано, как разработчики могут использовать код демонстрационной презентации, приведенный в Android SDK:

\sdk\sources\android-17\android\app\Presentation.java

Заключение

Технология Wireless Display может стать прекрасным стимулом продаж помимо других важных преимуществ программы Intel Inside® для телефонов и планшетов на базе платформ Intel. Независимые поставщики ПО должны обратить свое внимание и использовать все инновационные возможности технологии Wireless Display, в особенности, функции применения двух дисплеев.

Справочные сервисы

  1. http://www.wi-fi.org
  2. http://developer.android.com/about/versions/android-4.2.html
  3. Wi-Fi_Display_Technical_Specification_v1.0.0

© Корпорация Intel, 2013 г. Все права защищены.

*Другие наименования и товарные знаки являются собственностью своих законных владельцев.


Viewing all articles
Browse latest Browse all 357

Trending Articles