基于Android4.2平台实现Miracast 无缝视频共享
2014-07-16王建文
王建文
摘要:Android 4.2自发布以来受到极大的瞩目,相对于Android 4.1增加了很多新功能。特别的是,Android 4.2在显示部分新增了对无线共享(Wi-Fi Display)的支持功能,即支持Miracast无缝视频共享功能。通过对Miracast的概念、Miracast的发展背景进行介绍,给出了一种基于Android4.2的设备实现无缝视频共享的基本方案,分析得出Miracast 无缝视频共享会有更大的发展空间。
关键词: 安卓4.2;无线共享;新功能;无缝视频共享;基本方案
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)14-3382-03
Abstract:Since the Android 4.2 was released,it has got a great deal of attention.Relative to the Android 4.1,the Android4.2 adds many new features.Especially,a new feature that supports Wi-Fi Display is added in the display part of Android4.2,which also mean supporting Miracast Video sharing.By introducing the concept and the development background of the Miracast,a basic scheme was given to realize video sharing based on Android 4.2.The video sharing will get a rapid development.
Key words: Android 4.2;Wi-Fi Display;New feature;Video sharing;Basic scheme
Android 4.2于2012年11月中旬问世,Android 4.2和4.1一样都属于Jelly Bean系列,但Google给Android 4.2赋予了很多Android 4.1所不具有的新功能,如Photo Sphere全景拍照、键盘手势输入、Miracast无线显示共享等等。其中,Android 4.2在显示部分新增的对Wi-Fi Display[1]支持功能是一大亮点,不仅让整个显示架构发生很大变化,同时也符合目前无线视频共享的大趋势。
Miracast是一种认证名称,所有的设备要想拥有Wi-Fi Display功能,都必须通过Wi-Fi联盟(Wi-Fi Alliance)的Miracast认证。Miracast是Wi-Fi系列中最新增加的技术,使Wi-Fi突破了无线上网范畴。具体来说,Miracast是一种能够解决两种设备画面共享的方案,通过无线连接,两个设备间就可以共享音视频数据。
很明显,无线媒体共享是日后流行的大趋势,目前可以实现媒体共享的应用比较多的技术有DLNA[2]、苹果的Airplay、Miracast等。DLNA技术功能不够全面,苹果的Airplay只针对苹果产品,而最新的Miracast集结了前两个技术的优势,必定成为以后研究和应用的重点。目前,有200多种“来源”设备(提供音视频等数据来源的设备)和800多种“接收”设备(播放音视频数据),总共1000多种通过了Miracast认证[3],如此大规模采用,更多的消费者可以更早的接触无线视频共享。
智能电视机已经配备了高清的大屏幕,智能手机的操作越来越方便,适应了越来越多的人,智能机顶盒的需求量连续几年都呈上升趋势,因此人们不再满足于单一的智能家庭设备,建立一个家庭网络,使得智能电视的高清大屏优势、智能手机方便操作优势等充分整合使其互联沟通,方便快速控制,达到媒体共享,已经成为解决用户需求的当务之急[4]。该文主要介绍基于Android 4.2的Miracast实现无缝视频共享的基本过程。
1 Miracast
2012年9月,Wi-Fi Alliance推出了第一批Wi-Fi CERTIFIED Miracast产品,从这些产品原理应用可知,Wi-Fi Display功能是Wi-Fi CERTIFIED Miracast产品重点考察的功能之一。
Wi-Fi Display即是无线显示,通过无线连接,两个设备之间可以共享多媒体资料。从技术层面来说,Wi-Fi Display平台的应用主要是在“源端”(即Source,是将多媒体内容发送出去的Wi-Fi终端,如智能手机或平板电脑)和“播放端”(即Sink,能够接收由Source端传送过来的多媒体内容并将之显示出来,如电视机或投影机设备)之间建立一个点对点的链接,从而将手机、平板电脑或网络中的音视频内容在大屏幕的电视机或是投影设备上播放;同时,电视或电脑上的音视频内容也可以在手机中观看[5],使消费者的日常生活更加便捷,提高了消费者的生活质量。
Wi-Fi Miracast技术并不是凭空产生的,它应用到了很多已经成熟的Wi-Fi技术[6],如图1所示。
从图1可以看出,Miracast应用到的几项比较成熟的Wi-Fi技术有:
1) Wi-Fi Direct:当环境中既没有有线网络也没有无线网络覆盖时,通过Miracast认证的设备内部自带无线接入点,设备间可以进行无线直连。
2) Wi-Fi Protected Setup:自动配置Wi-Fi网络,只需简单的输入PIN码,用户即可安全连网。
3) 11n/WMM/WPA2:包括了三项Wi-Fi技术:802.11n协议、QoS服务和无线安全保护机制。802.11n是最新的Wi-Fi传输协议,11n将速率提高到了300-600 Mbps。Miracast视频共享是一种实时数据共享,因此就应用到了Wi-Fi Multimedia(WMM)实时音视频数据QoS服务。音视频共享过程中,传输数据的保密性非常重要。WPA2弥补了WPA出现的很多安全漏洞,是最新的安全保护机制,用来加密保护音视频共享过程中传输的数据。endprint
2 Miracast实现无缝视频共享
DLNA协议、闪联协议、苹果的Airplay ,还有本文介绍的Wi-Fi Alliance的Miracast认证技术都可以实现设备间音视频共享,市面上可以实现音视频共享的产品有小米系列、苹果系列等,但是相对来说,可以实现实时投影共享音视频数据的厂商还不多[7],Miracast是比较新的技术,利用Miracast实现音视频共享还不够成熟。该文给出了Miracast实现视频共享的基本流程。
Miracast实现视频共享的过程如图2所示:Miracast中,Wi-Fi Direct用来搜索及连接Miracast显示设备。一旦源设备与显示设备连接之后,Miracast源端设备将根据H.264[8]编码标准对视频进行编码压缩,然后通过Wi-Fi网络进行数据传送。接收到的视频数据流经过解码解压缩,在拥有大屏幕的显示设备上进行播放。该文重点介绍基于Android4.2平台一种选择Miracast显示设备的新方法,及Miracast是如何实现视频共享的。
2.1 Miracast支持的视音频格式
视音频本身有很多格式,不是所有的音视频格式Miracast都可以支持,如表1所示。
表1给出了Miracast支持的音视频格式,给出了17种CEA格式、29种VESA格式和12种手持设备格式的分辨率和帧率范围,Miracast视频编码标准为H.264,音频格式分必选和可选两部分,线性脉冲编码调制(LPCM)规格必选16bits/48kHz,可选为普通CD的规格16bits/44.1kHz,文件类型为双声道。
2.2 Miracast显示设备的选择
Miracast搜索设备经常会搜到多个显示设备,之前Miracast是就近选择连接一个接收设备。
Android 4.2在显示设备的选择上有了很大的突破,不再仅仅依据以前的就近原则,而是在自身框架中添加了一个新的服务,称作DisplayManagerService。因为这个服务可以对搜索到的所有显示设备进行管理,为“源设备”找到最合适的终端显示设备。
只应用DisplayManagerService服务是不能完成显示设备的选择的,必须有其它的服务对其进行协助,如图3所示。
由图3可以看出:(1)DisplayManagerService用来实现WindowManagerService和IdisplayManager。其中, IdisplayManager接口实现是重点,IdisplayManager包括管理显示设备的搜索、注册、连接等;(2)WindowManagerService主要管理用户界面显示的内容。(3) DisplayManagerService想要和显示设备进行交互要应用到mDisplayAdapters,显示设备和显示适配器是相对应的,有了适配器即DisplayAdapter,才能使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。由图3可看出,适配器有四种,在无线视频共享中,需要模拟多个屏幕,就用到了 OverlayDisplayAdapter;主屏幕和显示屏幕分别由LocalDisplayAdapter和WifiDisplayAdapter来模拟。
2.3 Miracast实现无缝视频共享
首先在“源设备”中找到Miracast并开启,Miracast中的Wi-Fi Direct 开始搜索显示设备,当找到可以匹配的Device后,系统会通过一个DeviceConnect函数发起请求,请求连接到符合条件的显示设备。DeviceConnect函数的代码如图4所示。
图4代码段中,Connect(device)即连接设备函数,它被调用去连接Miracast找到的匹配的设备。当双方设备都就绪时,发送端将数据进行编码,发送给远端设备,如此Miracast实现了无缝视频共享。
3 总结
本文主要介绍了基于Android4.2平台实现Miracast 无缝视频共享的一种基本流程,包括Miracast技术分析、支持视频格式分析以及显示设备选择连接等。
由于Wi-Fi联盟早在2012年就推出了Miracast标准和Miracast认证计划。根据最新的市场研究显示,到2016年,全球将有超过10亿台设备可以用来在两个设备屏幕间共享音视频。Miracast操作简便、基于成熟的Wi-Fi技术、具有较低的时延等优势,可以在两个设备间快速无缝的共享音视频,未来Miracast会发展的更加迅速。
参考文献:
[1] 余泽喜,王香婷,马婷婷.多屏互动系统的研究与实现[J].智能计算机与应用,2012,2(1)69-70.
[2] 乐行. 数字家庭的网络标准——DLNA[J]. 实用影音技术,2008,(5)29-30.
[3] Miracast无缝视频共享[J].新商务,2013,12:99-100.
[4] 龙禹.基于WFD的智能多屏交互系统的设计与实现[D]. 哈尔滨:哈尔滨工业大学,2013,6:1-2.
[5] 宋碧莲,吴华平.流媒体技术研究及其系统平台的设计与比较[J].计算机应用研究,2004,21(1):204-207.
[6] Wi-Fi联盟,Miracast技术白皮书[S].2012.9.
[7] Yoon H,Kim J.Collaborative streaming-based media content sharing in WiFi-enabled home networks[J].Consumer Electronics,IEEE Transactions on,2010,56(4)2193-2200.
[8] 陈志玉,宋建新. 基于H.264/AVC视频安全级别可分的加密方案[J].电视技术,2013,37(5).endprint
2 Miracast实现无缝视频共享
DLNA协议、闪联协议、苹果的Airplay ,还有本文介绍的Wi-Fi Alliance的Miracast认证技术都可以实现设备间音视频共享,市面上可以实现音视频共享的产品有小米系列、苹果系列等,但是相对来说,可以实现实时投影共享音视频数据的厂商还不多[7],Miracast是比较新的技术,利用Miracast实现音视频共享还不够成熟。该文给出了Miracast实现视频共享的基本流程。
Miracast实现视频共享的过程如图2所示:Miracast中,Wi-Fi Direct用来搜索及连接Miracast显示设备。一旦源设备与显示设备连接之后,Miracast源端设备将根据H.264[8]编码标准对视频进行编码压缩,然后通过Wi-Fi网络进行数据传送。接收到的视频数据流经过解码解压缩,在拥有大屏幕的显示设备上进行播放。该文重点介绍基于Android4.2平台一种选择Miracast显示设备的新方法,及Miracast是如何实现视频共享的。
2.1 Miracast支持的视音频格式
视音频本身有很多格式,不是所有的音视频格式Miracast都可以支持,如表1所示。
表1给出了Miracast支持的音视频格式,给出了17种CEA格式、29种VESA格式和12种手持设备格式的分辨率和帧率范围,Miracast视频编码标准为H.264,音频格式分必选和可选两部分,线性脉冲编码调制(LPCM)规格必选16bits/48kHz,可选为普通CD的规格16bits/44.1kHz,文件类型为双声道。
2.2 Miracast显示设备的选择
Miracast搜索设备经常会搜到多个显示设备,之前Miracast是就近选择连接一个接收设备。
Android 4.2在显示设备的选择上有了很大的突破,不再仅仅依据以前的就近原则,而是在自身框架中添加了一个新的服务,称作DisplayManagerService。因为这个服务可以对搜索到的所有显示设备进行管理,为“源设备”找到最合适的终端显示设备。
只应用DisplayManagerService服务是不能完成显示设备的选择的,必须有其它的服务对其进行协助,如图3所示。
由图3可以看出:(1)DisplayManagerService用来实现WindowManagerService和IdisplayManager。其中, IdisplayManager接口实现是重点,IdisplayManager包括管理显示设备的搜索、注册、连接等;(2)WindowManagerService主要管理用户界面显示的内容。(3) DisplayManagerService想要和显示设备进行交互要应用到mDisplayAdapters,显示设备和显示适配器是相对应的,有了适配器即DisplayAdapter,才能使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。由图3可看出,适配器有四种,在无线视频共享中,需要模拟多个屏幕,就用到了 OverlayDisplayAdapter;主屏幕和显示屏幕分别由LocalDisplayAdapter和WifiDisplayAdapter来模拟。
2.3 Miracast实现无缝视频共享
首先在“源设备”中找到Miracast并开启,Miracast中的Wi-Fi Direct 开始搜索显示设备,当找到可以匹配的Device后,系统会通过一个DeviceConnect函数发起请求,请求连接到符合条件的显示设备。DeviceConnect函数的代码如图4所示。
图4代码段中,Connect(device)即连接设备函数,它被调用去连接Miracast找到的匹配的设备。当双方设备都就绪时,发送端将数据进行编码,发送给远端设备,如此Miracast实现了无缝视频共享。
3 总结
本文主要介绍了基于Android4.2平台实现Miracast 无缝视频共享的一种基本流程,包括Miracast技术分析、支持视频格式分析以及显示设备选择连接等。
由于Wi-Fi联盟早在2012年就推出了Miracast标准和Miracast认证计划。根据最新的市场研究显示,到2016年,全球将有超过10亿台设备可以用来在两个设备屏幕间共享音视频。Miracast操作简便、基于成熟的Wi-Fi技术、具有较低的时延等优势,可以在两个设备间快速无缝的共享音视频,未来Miracast会发展的更加迅速。
参考文献:
[1] 余泽喜,王香婷,马婷婷.多屏互动系统的研究与实现[J].智能计算机与应用,2012,2(1)69-70.
[2] 乐行. 数字家庭的网络标准——DLNA[J]. 实用影音技术,2008,(5)29-30.
[3] Miracast无缝视频共享[J].新商务,2013,12:99-100.
[4] 龙禹.基于WFD的智能多屏交互系统的设计与实现[D]. 哈尔滨:哈尔滨工业大学,2013,6:1-2.
[5] 宋碧莲,吴华平.流媒体技术研究及其系统平台的设计与比较[J].计算机应用研究,2004,21(1):204-207.
[6] Wi-Fi联盟,Miracast技术白皮书[S].2012.9.
[7] Yoon H,Kim J.Collaborative streaming-based media content sharing in WiFi-enabled home networks[J].Consumer Electronics,IEEE Transactions on,2010,56(4)2193-2200.
[8] 陈志玉,宋建新. 基于H.264/AVC视频安全级别可分的加密方案[J].电视技术,2013,37(5).endprint
2 Miracast实现无缝视频共享
DLNA协议、闪联协议、苹果的Airplay ,还有本文介绍的Wi-Fi Alliance的Miracast认证技术都可以实现设备间音视频共享,市面上可以实现音视频共享的产品有小米系列、苹果系列等,但是相对来说,可以实现实时投影共享音视频数据的厂商还不多[7],Miracast是比较新的技术,利用Miracast实现音视频共享还不够成熟。该文给出了Miracast实现视频共享的基本流程。
Miracast实现视频共享的过程如图2所示:Miracast中,Wi-Fi Direct用来搜索及连接Miracast显示设备。一旦源设备与显示设备连接之后,Miracast源端设备将根据H.264[8]编码标准对视频进行编码压缩,然后通过Wi-Fi网络进行数据传送。接收到的视频数据流经过解码解压缩,在拥有大屏幕的显示设备上进行播放。该文重点介绍基于Android4.2平台一种选择Miracast显示设备的新方法,及Miracast是如何实现视频共享的。
2.1 Miracast支持的视音频格式
视音频本身有很多格式,不是所有的音视频格式Miracast都可以支持,如表1所示。
表1给出了Miracast支持的音视频格式,给出了17种CEA格式、29种VESA格式和12种手持设备格式的分辨率和帧率范围,Miracast视频编码标准为H.264,音频格式分必选和可选两部分,线性脉冲编码调制(LPCM)规格必选16bits/48kHz,可选为普通CD的规格16bits/44.1kHz,文件类型为双声道。
2.2 Miracast显示设备的选择
Miracast搜索设备经常会搜到多个显示设备,之前Miracast是就近选择连接一个接收设备。
Android 4.2在显示设备的选择上有了很大的突破,不再仅仅依据以前的就近原则,而是在自身框架中添加了一个新的服务,称作DisplayManagerService。因为这个服务可以对搜索到的所有显示设备进行管理,为“源设备”找到最合适的终端显示设备。
只应用DisplayManagerService服务是不能完成显示设备的选择的,必须有其它的服务对其进行协助,如图3所示。
由图3可以看出:(1)DisplayManagerService用来实现WindowManagerService和IdisplayManager。其中, IdisplayManager接口实现是重点,IdisplayManager包括管理显示设备的搜索、注册、连接等;(2)WindowManagerService主要管理用户界面显示的内容。(3) DisplayManagerService想要和显示设备进行交互要应用到mDisplayAdapters,显示设备和显示适配器是相对应的,有了适配器即DisplayAdapter,才能使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。由图3可看出,适配器有四种,在无线视频共享中,需要模拟多个屏幕,就用到了 OverlayDisplayAdapter;主屏幕和显示屏幕分别由LocalDisplayAdapter和WifiDisplayAdapter来模拟。
2.3 Miracast实现无缝视频共享
首先在“源设备”中找到Miracast并开启,Miracast中的Wi-Fi Direct 开始搜索显示设备,当找到可以匹配的Device后,系统会通过一个DeviceConnect函数发起请求,请求连接到符合条件的显示设备。DeviceConnect函数的代码如图4所示。
图4代码段中,Connect(device)即连接设备函数,它被调用去连接Miracast找到的匹配的设备。当双方设备都就绪时,发送端将数据进行编码,发送给远端设备,如此Miracast实现了无缝视频共享。
3 总结
本文主要介绍了基于Android4.2平台实现Miracast 无缝视频共享的一种基本流程,包括Miracast技术分析、支持视频格式分析以及显示设备选择连接等。
由于Wi-Fi联盟早在2012年就推出了Miracast标准和Miracast认证计划。根据最新的市场研究显示,到2016年,全球将有超过10亿台设备可以用来在两个设备屏幕间共享音视频。Miracast操作简便、基于成熟的Wi-Fi技术、具有较低的时延等优势,可以在两个设备间快速无缝的共享音视频,未来Miracast会发展的更加迅速。
参考文献:
[1] 余泽喜,王香婷,马婷婷.多屏互动系统的研究与实现[J].智能计算机与应用,2012,2(1)69-70.
[2] 乐行. 数字家庭的网络标准——DLNA[J]. 实用影音技术,2008,(5)29-30.
[3] Miracast无缝视频共享[J].新商务,2013,12:99-100.
[4] 龙禹.基于WFD的智能多屏交互系统的设计与实现[D]. 哈尔滨:哈尔滨工业大学,2013,6:1-2.
[5] 宋碧莲,吴华平.流媒体技术研究及其系统平台的设计与比较[J].计算机应用研究,2004,21(1):204-207.
[6] Wi-Fi联盟,Miracast技术白皮书[S].2012.9.
[7] Yoon H,Kim J.Collaborative streaming-based media content sharing in WiFi-enabled home networks[J].Consumer Electronics,IEEE Transactions on,2010,56(4)2193-2200.
[8] 陈志玉,宋建新. 基于H.264/AVC视频安全级别可分的加密方案[J].电视技术,2013,37(5).endprint