How to Implement intel for Miracast * on Intel & #174; architecture mobile phones & #174; Wireless Display Differentiation

Source: Internet
Author: User
Tags iqiyi

Introduction

Since Google began to support Miracast on Android 4.2, Wireless Display technology is becoming increasingly popular on Android * mobile phones and tablets. With Wireless Display Technology, end users can more easily expand the LCD size of their mobile phones. I think this is a great opportunity for independent software developers (ISVs) to integrate wireless display functions into their applications, especially games and video players.

However, for ISVs, how to implement Intel Wireless Display differentiation for Miracast on x86 mobile phones has become a huge challenge for them. In this article, we will show you how to enable iQiyi online video player and WPS office software on K900, and introduce how to implement dual-display differentiation for Miracast. We hope to support more important applications in the future.

What is Miracast?

On April 9, September 19, 2012, the Wi-Fi Alliance officially announced the launch of a Wi-Fi *-certified Miracast, a groundbreaking solution that allows seamless video display between devices without the need to use cables or network connections. You can view pictures or videos in your smartphone on a large-screen TV, share the screen content of your laptop with a conference room projector in real time, or watch live broadcasts in your home cable box on your tablet. Because this Miracast connection is implemented through Wi-Fi-certified Wi-Fi Direct *, you do not need to access the Wi-Fi network, at the same time, this connection capability already exists in Miracast-certified devices.

Miracast is a peering connection based on Wi-Fi direct. The Wi-Fi-based Miracast architecture is as follows.



Figure 1: Miracast * Architecture

There are four Miracast connection modes as follows:



Figure 2: Miracast * connection mode

With Miracast connection, you can connect multiple devices without using the Wi-Fi AP infrastructure, as shown in topology 1. After you connect to an AP, you can also connect to a monitor using an adapter, as shown in topology 2. In this mode, you can conveniently watch online videos at home. If you have a smart TV that supports Miracast, your TV, AP, and smartphone can even connect to each other, as shown in topology 4.

Shows the interaction modes between the source device and the display device according to the Miracast standard:



Figure 3: Miracast * session management

The source and display devices have discovered their Miracast functions before connection settings. This connection is implemented based on Wi-Fi direct or TDLS. The source device and the display device determine the parameters for the Miracast session based on the capability negotiation. This negotiation process is implemented based on TCP connections. The Source Device transmits content to the display device in MPEG2-TS format based on UDP connections.

Table 4 lists the formats supported by Miracast wireless streams.

Table 4: Miracast * stream format

Miracast on Android 4.2

Google has supported Miracast since Android 4.2. With Wireless Display Technology, end users can share any content on movies, photos, YouTube videos, and HDTV screens. An external HDTV is considered as an external display device.

Currently, Miracast on Android supports clone mode and demo mode, as shown below:



Figure 5: supported modes of Miracast *

In clone mode, you can copy the displayed content on your phone to a remote display device. The resolution of the number of frames sent to the adapter must match the resolution of the local monitor. In this mode, the local and remote display devices are displayed with the same content.

In Demo mode, Android now allows your application to display unique content on an additional screen that is connected to your device through a wired or Wi-Fi connection. The precondition is that these applications must be modified to support this mode. Otherwise, applications can only support the clone mode by default.

Develop differentiation for Miracast on Intel architecture (IA) Mobile phones

Intel's Wireless Display solution on Android phones and tablets is fully compatible with Miracast. We can also develop some differentiated applications for Miracast on IA mobile phones.

The first application will be used to support iQiyi to implement the video background stream function. You can use an iQiyi app that supports background streams to send videos to a remote monitor with a resolution of 1080 p, in this case, you can play a 1080 p video on the local screen or use any other application, including sending an email or accessing their browser without interrupting the background, as follows:



Figure 6: iQiyi video background music Function

The second application will be used to support WPS office for UI splitting on local and remote monitors. After connecting to the TV via wireless display, the supported WPS office applications can display PPT slides on a remote screen and PPT notes on the screen of the mobile phone, this feature is very convenient for the speaker. We plan to add a timer clock on the screen of the phone in the future to remind the speaker of the time.



Figure 7: WPS office UI splitting

The two differentiated uses are developed based on the Miracast demonstration mode by using the IA hardware function of the mobile phone. These two applications are now uploaded to Intel AppUp for end users to download and install on their IA mobile phones.

Case study: How to support dual-display Differentiation

In this section, I will introduce how to implement the video background stream function based on our iQiyi application support experience.

As we all know, in order to realize the video background music function, the key point is to play a video in the background through a service, while correctly processing the surface view or video view. When a user presses the base key, the surface view or video view is automatically destroyed, so we must use an auxiliary monitor to display the background stream video. The program flowchart is as follows:



Figure 8 background video stream Flowchart

To create unique content for the secondary monitorPresentation Class and executeonCreate()Callback. InonCreate()By callingsetContentView()Specify your UI for the secondary monitor. AsDialogClass extension,PresentationClass provides a location for your application to display a unique UI on the secondary monitor.

In your demo, you can use the secondary monitor in two ways. UseDisplayManagerOrMediaRouterAPI. The easiest way to select a demo is to useMediaRouterAPI. The media router service tracks available audio and video paths on the system. The media router recommends that you use the preferred demo display if you want to display the content on the secondary display.

This section describes how to create a presentation by using a media router andgetPresentationDisplay()The document is displayed on the demo display.

1 MediaRouter mediaRouter = (MediaRouter) context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
2 MediaRouter.RouteInfo route = mediaRouter.getSelectedRoute();
3 if (route != null) {
4     Display presentationDisplay = route.getPresentationDisplay();
5     if (presentationDisplay != null) {
6         Presentation presentation = new MyPresentation(context, presentationDisplay);
7         presentation.show();
8     }
9 }

Another way to select a demo display is to directly useDisplayManagerAPI. The Display Manager Service provides functions to list and describe all displays connected to the system, including displays that can be used as demonstrations.

The Display Manager tracks all displays in the system. This section describes how to identify and use suitable displays.getDisplays(String)AndDISPLAY_CATEGORY_PRESENTATIONClass display presentation.

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

Developers can reference the Demo code on the Android SDK as follows:

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

Summary

For IA-based mobile phones and tablets, wireless display features may become a bright spot in addition to Intel Inside. Independent software developers should pay attention to developing more innovative usage Based on Wireless Display, especially the differentiated usage of Dual-display.

References

Intel reserves all rights reserved on April 9, 2013. All rights are protected.

* Other names and brands may be assets of other owners.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.