本系列文章仅讨论AirPlay的接收端(Server端)
AirPlay 是苹果开发的一种无线技术,它可以将iOS设备上的包括图片、音频、视频传输到支持AirPlay设备(比如Apple TV)观看。AirPlay支持以下方案:
- 来自iOS设备的照片和幻灯片
- 来自iOS设备的音频
- 来自iOS设备的视频
- 显示iOS设备或OSX设备的屏幕镜像
一些名词解释
在AirPlay这项技术中,你可能遇到如下的名词,有些我也没有研究太清楚。
-
DNS-SD:DNS-based service discovery(基于DNS的发现服务)
这个技术基于multicast DNS(DNS多播),苹果官方称这项技术为Bonjour。一般来说,这个库的简称叫做mDNS或DNS-sd。 -
RAOP:Remote Audio Output Protocol(远程音频输出协议)
这个协议用于音频流传输。 -
FairPlay
FairPlay是苹果公司开发的一种DRM(数字版权管理)技术,苹果的视频和音频传输都在这种技术的保护之下被AES加密后传输。
屏幕镜像功能的整体流程
- 启动RAOP服务(在nto.github.io文档上叫做AirTunes service)
- 启动AirPlay服务
- 将以上两个服务注册到DNS-SD
- iOS在屏幕镜像中连接接收端设备
- iOS和接收端建立连接,接收音视频数据
引用资料
AirPlay无线技术研究:https://blog.csdn.net/libins/article/details/50013239
nto非官方AirPlay文档:http://nto.github.io/AirPlay.html