AirPlay 镜像协议-上(发现)

AirPlay 镜像协议-下(交换秘钥与传输)

目标

是在iPhone手机上可以发现屏幕镜像的新设备,如下图所示


1.png

过程

iPhone设备发现屏幕镜像设备依靠的是mdns协议,这是一个用于局域网发现设备的协议,仿照dns协议,镜像设备启动后,会注册自己到路由器的组播地址224.0.0.251,当iPhone设备发起搜索协议的时候,会发送搜索的信息到224.0.0.251,这时路由器会转发信息到所有曾经注册到224.0.0.251的镜像设备,当然也可能是其他类型的设备,搜索信息如下图


2.png

可见查询了支持两个协议的设备,一个是roap.tcp.local,一个是airplay.tcp.local,前者是airplay音频传输,例如传输歌曲到Airport,也用于镜像时候的音频,后者是传输视频,同时也支持传输屏幕镜像,在本例中,我们只支持屏幕镜像,可以先不考虑声音,所以对于屏幕镜像设备,支持airplay.tcp.local即可,也就是说,返回如下的包

3.png

请注意绿框中的信息,是经过特别准备的,它包含了如下字典信息,该字典信息会在下文中用到

     "deviceid" -> "58:55:CA:1A:E2:88" 
     "features" -> "0x5A7FFEE6"" 
     "flags" -> "0x4" 
     "model" -> "AppleTV3,1" 
     "pk" -> "b07727d6f6cd6e08b58ede525ec3cdeaa252ad9f683feb212ef8a205246554e7" 
     "pi" -> "2e388006-13ba-4041-9a67-25dd4a43d536" 
     "srcvers" -> "220.68" 
     "vv" -> "2" 

iPhone收到上面的信息之后,还会再次查询txt信息,依然把上面的字典信息返回,这时iPhone上面会看到新的镜像设备My AirPlay Device

点击My AirPlay Device后无法连接,如果想要连接成功,需要看下篇AirPlay 镜像协议-下(交换秘钥与传输)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 多屏互动技术研究(三)之Airplay研究(原创)来源:https://blog.csdn.net/u011897...
    WilburLi阅读 9,570评论 1 5
  • AirPlay 是苹果的一个私有标准,可以用来将 iDevice(iPhone、iPad、iPod) 上的音视频流...
    nix1024阅读 6,901评论 0 2
  • 手游直播是直播行业中非常重要的一个垂直领域. 手游直播与其他移动直播相比主要是画面的来源不同, 手游直播其实是一种...
    金山视频云阅读 12,812评论 13 18
  • 导语 至于手机投屏的实现方法可谓五花八门,今天小袁就说下以开发人员的角度来说下当今手机的主流投屏方法。目前这种将终...
    快感的感知阅读 30,349评论 0 17
  • 导语 至于手机投屏的实现方法可谓五花八门,今天小袁就说下以开发人员的角度来说下当今手机的主流投屏方法。目前这种将终...
    Mr_Fly阅读 1,327评论 0 2