by fanxiushu 2024-05-04 转载或引用请注明原始作者。
这个课题已经持续了好几年,已经可以说是很长时间了。
实现的程序是 xdisp_virt, 可以去github下载使用:
GitHub - fanxiushu/xdisp_virt: xfsredir file system
一开始是基于测试镜像驱动的目的随便开发的xdisp_virt,到后来只想实现windows远程桌面,
而且是打算自己实现客户端,结果是浏览器的Web客户端代替了自己实现客户端的打算,
再后来移植到各种平台(macOS,linux,iOS),以及各种功能出现,比如直播,推流保存,onvif等等。
反正是整个 xdisp_virt 代码重构了好几遍,越搞越复杂。
实现的功能也与最初只想实现远程控制的目标越来越远。
赤果果的朝着前方的康庄大道奔跑,只是道路越奔越歪了。
这次是在xdisp_virt中实现AirPlay接收端,
之所以有这个打算,起源于上面三篇文章所说的开发模拟鼠标键盘的蓝牙驱动。
开发把电脑模拟成蓝牙鼠标键盘的蓝牙驱动,目的就是为了控制我的iPhone手机,
在开发蓝牙驱动和测试过程中,我需要把iphone手机屏幕投射到电脑上,
然而Windows与Apple天然的隔绝,
windows的AirPlay投屏软件太稀缺了,难找难用;
于是在开发完成bluetooth驱动之后,打算在xdisp_virt集成 AirPlay功能,
并且把模拟蓝牙鼠标键盘的驱动也一起集成进去,真正达到控制各种苹果设备的目的。
首先,我们先大致了解一下什么是 AirPlay。
AirPlay说普通点就是一群通讯协议,把视频和音频在网络中传输的协议。
我们有大量的比如RTSP,RTMP,HTTP, WebRTC,等等公用协议可以用来传输音视频,为何还需要AirPlay。
没办法,这是苹果公司为自家产品(iOS,iPad,macOS)定制的专门的协议。
当然它其实是个协议族,是多个协议混合一起组成了AirPlay, 这点和WebRTC很有像,都是多个协议拼凑在一起的。
AirPlay用来干嘛?
既然是传输音视频的协议,可以在苹果设备上播放的视频镜像出去,或者只把音频镜像出去。
其中一个很重要的用处就是用来把苹果设备的屏幕镜像到网络中的其他地方去。
这就很像我们开发的远程桌面了,只不过不同的是,
AirPlay是苹果系统集成的,苹果设备不需要额外安装程序&#x
Windows远程桌面实现之十四:实现AirPlay接收端,让苹果设备(iOS,iPad等)屏幕镜像到PC端
于 2024-05-06 16:06:02 首次发布