Cara Mengaktifkan Diferensiasi Intel Wireless Display untuk Miracast di Ponsel Berarsitektur Intel


* Artikel ini dipersembahkan oleh Intel Developer Zone. Untuk Mengetahui lebih lanjut tentang membuat aplikasi Android di Arstitektur Intel, kunjungi Intel Developer Zone for Android. Artikel asli dari artikel ini dapat dilihat di link ini.

Teknologi Wireless Display semakin populer di ponsel dan tablet Android semenjak Google mendukung Miracast di Android 4.2. Teknologi Wireless Display membuat pengguna lebih mudah untuk mengekspansi layar LCD ponsel. Ada kemungkinan besar pengembang aplikasi akan mengintegrasikan teknologi Wireless Display di aplikasinya terutame game dan pemutar video.

Namun, bagaimana caranya untuk mewujudkan diferensiasi Intel Wireless Display untuk Miracast di Android untuk ponsel x86 merupakan tantangan besar untuk pengembang aplikasi. Artikel ini mengenalkan bagaimana caranya untuk mengaktifkan diferensiasi tampilan ganda untuk Miracast dengan menampilkan studi kasus online video player iQiyi dan WPS Office di K900. Diharapkan akan ada banyak aplikasi canggih dapatkan di masa depan.

[toc]

Apa itu Miracast

Aliansi Wi-Fi secara resmi mengumumkan Wi-Fi CERTIFIED Miracast pada tanggal 19 September 2012 yang mana merupakan terobosan untuk solusi menampilan video antar perangkat secara mulus tanpa menggunakan kabel atau koneksi jaringan. Pengguna dapat melakukan berbagai macam hal seperti melihat gambar atau video dari ponsel pintar di televisi layar besar, berbagi tampilan di layar laptop melalui proyektor secara real time, dan menonton siaran langsung dari TV kabel di tablet. Koneksi Miracast dibentuk menggunakan Wi-Fi CERTIFIED Wi-Fi Direct sehingga tidak perlu mengakses jaringan Wi-Fi, konektivitas dilakukan di dalam perangkat bersertifikat Miracast.

Koneksi Miracast berbasis pada Wi-Fi Direct, koneksi peer to peer. Arsitektur Miracast berbasis Wi-Fi dapat dilihat pada gambar di bawah ini:


Gambar 1. Arsitektur Miracast

Ada empat mode koneksi Miracast seperti yang ditampilkan di bawah ini:


Gambar 2. Mode-mode koneksi Miracast

Dengan koneksi Miracast, kita dapat mengkoneksikan antar perangkat tanpa melalui infrakstruktur Wi-Fi AP seperti yang dijelaskan pada Topology 1. Kita juga dapat mengkoneksikan ke sebuah layar melalui sebuah adaptor ketika mengkoneksikan ke AP seperti yang dijelaskan pada Topology 2. Ini metode yang sangat nyaman untuk menonton video online di rumah. Jika kamu memiliki Smart TV yang mendukung Miracast, TV, AP, dan ponsel pintar kamu dapat saling terhubung seperti yang dijelaskan pada Topology 4.

Berdasarkan standar Miracast, mode interaktif dari perangkat sumber dan tampilan dapat digambarkan sebagai berikut:


Gambar 3. Manajemen sesi Miracast

Perangkat sumber dan tampilan menemukan kapabilitas Miracast masing-masing sebelum mengeset koneksi. Koneksinya berbasis Wi-Fi Direct atau TDLS. Perangkat sumber dan tampilan menentukan parameter untuk sesi Miracast berdasarkan negosiasi kapabilitas. Proses negosiasi berbasis pada koneksi TCP. Perangkat sumber akan mengirimkan konten ke perangkat tampilan melalui format MPEG2-TS berbasis koneksi UDP.

Format-format yang didukung oleh streaming nirkabel Miracast dapat dilihat pada Tabel 4.


Tabel 4. Format streaming Miracast

Miracast di Android 4.2

Google mulai mendukung Miracast di Android versi 4.2. Pengguna dapat berbagi film, foto, video YouTube, dan apapun tampilan yang ada di layar menggunakan HDTV melalui teknologi Wireless Display. HDTV eksternal terdaftar sebagai layar eksternal.

Sekarang Miracast di Android mendukung mode kloning dan presentasi seperti yang ditampilkan pada gambar di bawah ini:


Gambar 5. Mode-mode yang didukung Miracast

Mode kloning menduplikasikan tampilan ponsel ke layar lain. Resolusi frame yang dikirimkan ke adaptor sesuai dengan resolusi dari tampilan lokal. Pada mode ini, baik tampilan lokal maupun layar lain sama-sama nyala dan menampilkan konten yang sama.

Pada mode presentasi, Android memperbolehkan kita untuk menampilkan konten unik pada layar tambahan yang terkoneksi dengan perangkat pengguna melalui koneksi kabel maupun nirkabel. Aplikasinya harus sudah dimodifikasi untuk mendukung mode ini jika tidak makan akan berubah menjadi mode kloning.

Mengembangkan diferensiasi untuk Miracast di ponsel berarsitektur Intel

Intel Wireless Display di ponsel dan tablet Android kompatibel secara penuh dengan Miracast. Beberapa aplikasi juga sudah memungkinkan untuk penggunaan diferensiasi ke Miracast di ponsel berarsitektur Intel.

Yang pertama adalah memungkinkan iQiyi untuk mengetahui fungsi video background streaming. Pengguna dapat mengirimkan video ke layar eksternal dengan resolusi 1080p menggunakan aplikasi iQiyi yang memungkin background streaming sementara pengguna navigasi keluar aplikasi dan memainkan video 1080p pada layar lokal atau menggunakan aplikasi lainnya termasuk mengirim email atau mengakses peramban web tanpa menggangu pemutara video di latar seperti yang ditampilkan di bawah ini:


Gambar 6. Fungsi BGM video iQiyi

Yang kedua adalah memungkinkan WPS Office untuk membelah fungsi UI di baik layar lokal maupun eksternal. Ketika melalukan koneksi ke TV melalui Wireless Display, WPS Office dapat menampilkan slide presentasi di layar eksternal sementar layar lokal menampilkan catatan presentasi yang mana membuat nyaman pembicara. Direncanakan ke depannya akan ditambahkan timer di layar ponsel untuk memberikan peringatan ke pembicara.


Gambar 7. Fungsi split UI di WPS Office

Kedua penggunaan diferensiasi ini dikembangkan berdasarkan mode presentasi Miracast dan kapabilitas perangkat keras ponsel berarsitektur Intel. Kedua aplikasi tersebut sudah diunggah ke Intel AppUp agar dapat diunduh dan diinstal oleh pengguna di ponsel berarsitektur Intel mereka.

Studi kasus: Bagaimana cara untuk mengaktifkan diferensiasi penggunaan tampilan ganda

Pada bagian ini, akan diberitahukan bagaimana caranya mengetahui fungsi video background streaming berdasarkan pengalaman mengaktifkan aplikasi iQiyi.

Seperti yang kita ketahui, untuk mengaktifkan fungsi BGM video, kesulitan yang paling utama adalah membuat layanan yang memainkan video di latar dan berurusan dengan tampilan di permukaan atau menampilkan video dengan benar. Ketika pengguna memencet tombol “home”, tampilan permukaan atau tampilan video akan secara otomatis dimatikan, jadi kita harus menggunakan tampilan tambahan untuk menampilkan video streaming di latar. Flow chart dari programnya adalah sebagai berikut:


Gambar 8. Flow chart streaming video di latar

Untuk membuat konten unik yang akan digunakan di layar tambahan, perluas class Presentation dan implementasikan callback onCreate(). Di dalam onCreate(), spesifikasikan tampilan antarmuka untuk layar tambahan dengan memanggil setContentView(). Sebagai ekstensi dari class Dialog, class Presentation menyediakan area di mana aplikasi kita dapat menampilkan tampilan antarmuka unik untuk layar tambahan.

Ada dua metode untuk mengaplikasikan tampilan tambahan untuk presentasi kita. Gunakan antara API DisplayManager atau MediaRouter. Cara yang paling mudah adalah untuk memilih layar untuk presentasi adalah dengan menggunakan API MediaRouter. Layanan media router mencatat rute audio dan video apa yang tersedia pada sebuah sistem. Media router merekomendasikan layar presentasi yang sebaiknya digunakan oleh aplikasi jika ingin menampilkan konten di layar tambahan.

Beginilah caranya dalam menggunakan media router untuk membuat dan menampilkan presentasi di layar presenasi pilihan menggunakan 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();
    }
}

Cara lain untuk menentukan layar presentasi adalah menggunakan API DisplayManager secara langsung. Layanan display manager menyediakan fungsi untuk mengenumerasikan dan menjabarkan semua layar yang terkoneksikan ke sistem termasuk layar yang kemungkinan akan digunakan untuk presentasi.

Display manager mencatat semua layar yang ada di sistem. Beginilah caranya untuk mengidentifikasikan layar yang cocok untuk menampilkan presentasi menggunakan getDisplay(String) dan kategori 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();
}

Pengembang aplikasi dapat mereferensikan kode demo presentasi di Android SDK seperti di bawah ini:

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

Kesimpulan

Selain nilai jual ponsel dan tablet berarsitektur Intel, fitur wireless display mungkin akan menjadi poin yang bersinar. Pengembang aplikasi sebaiknya mengetahui dan mengembangkan lebih banyak lagi penggunaan inovatif yang menggunakan wireless display, terutama penggunaan diferensiasi layar ganda.

* Kunjungi Intel Developer Zone for Android untuk mengetahui lebih lanjut. Artikel asli dari artikel ini dapat dilihat di link ini.