背景:
在学习我们实战高性能投屏开发课程时候,主要是对我们自定义的投屏进行深入的开发。但是安卓中投屏其实不仅仅只有自定义投屏,更有一种更加通用的投屏叫做Miracast/Wifi Display。
下面就来重点介绍一下通用投屏Miracast/Wifi Display和自定义投屏的一些优缺点。
miracast是什么?
Miracast是由Wi-Fi联盟于2012年所制定,以Wi-Fi直连(Wi-Fi Direct)为基础的无线显示标准。支持此标准的消费性电子产品(又称3C设备)可透过无线方式分享视频画面,例如手机可透过Miracast将视频或照片直接在电视或其他设备播放而无需任何连接线,也不需透过无线热点(AP,Access Point)。
Wi-Fi Direct
Wi-Fi直连(英语:Wi-Fi Direct),之前曾被称为Wi-Fi点对点(Wi-Fi Peer-to-Peer),是一套无线网络互连协议,让wifi设备可以不必透过无线网络接入点(Access Point),以点对点的方式,直接与另一个wifi设备连线,进行高速数据传输。这个协议由Wi-Fi联盟发展、支持与授与认证,通过认证的产品将可获得Wi-Fi CERTIFIED Wi-Fi Direct®标志。
Wifi Display
Miracast实际上就是WiFi联盟(WiFi Alliance)对支持WiFi Display功能的设备的认证名称(该认证项目已经在2012年9月正式启动)。而通过Miracast认证的设备,便可提供简化发现和设置,实现设备间高速传输视频。
Miracast实际上就是Wi-Fi联盟对支持WiFi Display功能的设备的认证名称,产品通过认证后会打上Miracast标签。
Sink & Source
如下图所示,Miracast可分为发送端与接收端。Source端为Miracast音视频数据发送端,负责音视频数据的采集、编码及发送。而Sink端为Miracast业务的接收端,负责接收Source端的音视频码流并解码显示,其中通过Wi-Fi Direct技术进行连接。
通用投屏Miracast总结图如下:
通用投屏和自定义投屏对比
下面就来讲解为啥有了这个通用Miracast投屏还需要自定义投屏?它们各自有啥优缺点?
通用投屏优缺点
优点:
1、本身属于通用协议,很多芯片厂商自带了相关代码功能,不需要多少额外开发工作,大部分都属于维护工作
2、通用兼容性非常好,各种设备一般都支持,一般大屏幕Tv都是有Miracast认证的,手机投屏也支持,就不需要考虑安卓手机要和安卓电视一个品牌等匹配问题,也就是最保定的投屏方式就是Miracast投屏。
缺点:
1、因为通用性,协议功能等一般是固定的,所以导致很多功能可能无法进行扩展定制,导致功能非常单一,只能进行镜像投屏,无法扩展其他功能
2、投屏各端设备因为不是一个厂商的,都是只支持标准协议的设备而已,但是涉及的sink和source端都是不同厂商,各个厂商投屏设备性能质量不同,设备二者连接使用的厂商测试可能不那么全面,导致一些使用体验不那么好,因为彼此不同厂商没办法要求对方如何。
3、使用交互方式不好,因为涉及多个终端,每个终端的投屏功能寻找难度都需要查询手册,有的时候很难找到
自定义投屏优缺点
优点:
1、可以丰富定制各种用户的投屏需求,比如车载多屏幕投屏,游戏扩展投屏,平行空间等。因为source和sink端都属于自己开发功能,所以想要怎么定制功能就可以怎么定制,灵活性非常高,这也才可以方便的满足用户各种各样不同的需求。
2、因为sink和source两端都是自己开发的功能,所以使用体验和性能方面有比较好的保证,毕竟二者属于一个厂商的产品,所以测试也是比较全面的。
3、交互使用体验非常好,因为完全自定义开发,一般厂商会作为特色卖点功能,所以交互使用肯定很好
缺点:
最大缺点就是sink端和source都是需要同一个厂商开发,没办法通用该功能,比如华为的多端多屏互联互动这种只适用于多个设备都是华为品牌的,比如手机,电脑,电视都是同一个品牌,功能丰富程度比通用Miracast好太多,但是一旦某个终端不是自己品牌的,那么这个功能就无法使用了。
上面优缺点对比就很详细的解释了自定义投屏和通用Miracast投屏的使用场景,各自都有自己的优缺点,对于厂商来说大部分都是投入在自定义投屏部分,做出更好更优秀的卖点投屏,一般通用Miracast投屏就属于一个必备但是不太会投入人力的功能。
更多framework技术干货,请关注下面“千里马学框架”