悬浮层在窗口合成器层面被排除在屏幕捕获之外,这正是它对 Zoom、Google Meet 和 Microsoft Teams 不可见的原因。这种排除是按窗口生效的,一旦会议应用捕获的不是一个窗口,这种排除就会失效。
常见原因
Zoom 有一条硬件加速的捕获路径,它直接抓取帧缓冲区而不是逐个合成窗口。当该路径生效时,按窗口排除就没有作用的对象,屏幕上的一切(包括悬浮层)都会被共享出去。
- 在 Zoom 中打开设置 → 共享屏幕,然后点击高级。
- 关闭屏幕共享的硬件加速。根据你的 Zoom 版本不同,这可能是一个复选框,也可能是三个(用于共享屏幕、用于接收视频、用于发送视频)。这里只有第一个重要。
- 完全退出 Zoom 并重新打开。该设置在启动时才会生效。
共享窗口,而非整个屏幕
无论设置如何,一个更稳健、值得养成的习惯是:共享某个具体窗口,而不是整个屏幕。窗口共享只发送该窗口的内容,因此屏幕上的其他任何东西都不会泄露——悬浮层不会,通知不会,第二台显示器也不会。
隐身能力不涉及的方面
- 对准你的摄像头,或是盯着你眼睛的监考人员。
- 另一台录制设备:对准显示器的手机摄像头。
- 设计上就是传输整个帧缓冲区,而不是合成窗口的远程桌面软件。
- 运行在你无法控制的机器上的锁定监考浏览器。
