在使用 OBS(Open Broadcaster Software)录制或直播时,经常需要对屏幕特定区域进行放大以突出重点内容,例如展示代码细节或操作步骤。然而,原生 OBS 并未提供直接跟随鼠标位置缩放的功能。OBS-ZOOM-TO-MOUSE 正是一款专为解决此需求而设计的 Lua 脚本,支持 Windows、Linux 和 macOS 三大平台,可自动将指定显示捕获源缩放至鼠标当前位置,显著提升演示效果。

核心功能与设计理念
OBS-ZOOM-TO-MOUSE 最初由开发者为录制 IDE 中的代码片段而创建,旨在提供一种比现有方案更稳定、更灵活的缩放方式。该脚本通过动态调整 OBS 源的裁剪/平移(Crop/Pan)滤镜参数,实现平滑的缩放动画,并支持智能鼠标跟踪逻辑,确保用户在放大后仍能自然地移动光标进行操作,而不会导致画面频繁抖动。
其核心交互逻辑如下:
- 按下快捷键触发缩放后,以当前鼠标位置为中心进行放大;
- 若启用“自动跟随鼠标”,缩放过程中会实时调整视图以保持鼠标可见;
- 缩放完成后,画面中心区域形成一个“安全区”——在此区域内移动鼠标不会触发画面移动,便于精细操作;
- 当鼠标移至视图边缘(由“跟随边距”设定的百分比区域)时,画面开始以设定速度跟随鼠标移动;
- 若启用“反向自动锁定”,当鼠标向中心回移时,跟踪会立即停止,模拟游戏摄像机的平滑控制体验。
安装与配置指南
基础安装步骤
- 从 GitHub 克隆仓库或直接下载
obs-zoom-to-mouse.lua文件; - 在 OBS 中添加一个“显示捕获(Display Capture)”源;
- 进入 工具 → 脚本,点击“+”号加载该 Lua 脚本;
- 为获得最佳效果,建议将显示捕获源的变换设置为:
– 位置对齐:左上
– 边界框类型:缩放至内部边界
– 边界框内对齐:左上
– 裁剪:全部设为 0
如需裁剪屏幕,应额外添加“裁剪/填充(Crop/Pad)”滤镜,而非直接在源变换中设置裁剪。
快捷键设置
在 OBS 的 设置 → 热键 中,需手动绑定以下两个关键操作:
- Toggle zoom to mouse:切换缩放状态(放大/还原);
- Toggle follow mouse during zoom(可选):在已缩放状态下开启/关闭鼠标跟踪。
高级自定义选项
脚本提供丰富的可调参数,涵盖缩放行为、跟踪逻辑和源适配:
- 缩放参数:可调节缩放倍数(Zoom Factor)与动画速度(Zoom Speed);
- 跟踪控制:包括“跟随速度”、“跟随边距”、“锁定灵敏度”及“反向自动锁定”等,精细控制画面响应行为;
- 多源支持:启用“显示所有源(Show all sources)”后,可选择非显示捕获源(如窗口、浏览器或克隆场景),但需手动输入该源在桌面坐标系中的 X、Y 位置、宽高及缩放比例(Scale X/Y);
- 远程鼠标支持:配合配套项目 obs-zoom-to-mouse-remote,可通过 UDP 接收另一台设备的鼠标位置,实现跨设备演示。
平台兼容性与注意事项
- Windows / macOS:开箱即用,支持标准显示捕获源;
- Linux:推荐使用 XSHM 显示捕获源以获得自动尺寸计算支持;若使用 PipeWire 源,则需手动设置源位置与尺寸;
- macOS 手动模式:在设置手动源位置时,可能需指定“监视器高度”以正确转换 Y 坐标;
- 显示配置变更:若更改显示器排列、主屏或方向,需在 OBS 中重新添加显示捕获源并重载脚本,以确保坐标计算准确。
获取方式
访问 GitHub 项目页面:获取 OBS-ZOOM-TO-MOUSE
OBS-ZOOM-TO-MOUSE 通过精准的鼠标位置追踪与智能缩放逻辑,为内容创作者提供了一种高效、流畅的屏幕聚焦解决方案,尤其适用于教学、编程演示和技术分享等场景,显著提升观众的信息获取体验。
@我的印象笔记