Skip to content

Latest commit

 

History

History
53 lines (27 loc) · 10.3 KB

recorder-tutorial.md

File metadata and controls

53 lines (27 loc) · 10.3 KB

教程录屏辅助(0.11.2,开发中)

更新:2026-10-18,程序0.82.0-dev.105。搜索“教程录屏”“录屏放大”或在录屏页展开“教程辅助”。完整教程工具还在开发,这份说明只覆盖当前实现。

0.11.2 修复共用框选流程:拖动时显示最终录制的物理像素尺寸(包含编码需要的偶数尺寸对齐),保留真正按下鼠标的位置;显示器状态变化时会结束本次框选并恢复主窗口,提示刷新屏幕列表,原有选区不被覆盖。过小选区可在浮层直接重试,窄窗口提示自动换行。比例换算和合成原生窗口已测试,真实多显示器/混合 DPI 录屏仍待验收。

本机提词器

在录屏页展开“教程辅助”,选择“打开本机提词器”。讲稿最多12000字符,仅保存在本次程序运行的内存中;关闭提词器或程序后即丢失,不写入视频、设置、日志或其他本机文件。提词窗口独立置顶,可编辑/预览讲稿、开始/暂停自动滚动、调节滚动速度和字号、回到开头。浮窗标题包含进程号,便于系统定位窗口。

显示正文前,Windows 会对提词窗口设置 WDA_EXCLUDEFROMCAPTURE 并读取回验;窗口创建期间或设置/回验失败时正文会保持隐藏。关闭再打开会重新申请。这个机制只请求 Windows 支持的显示亲和性排除;当前验证确认了本进程窗口的设置和读取状态,尚未验证真实录屏输出中必然不可见。不同 Windows 版本、采集接口、屏幕共享程序、外部摄像机可能不遵循该标志,所以开始正式录制前请用无敏感内容的测试稿验证最终成片。此设置不是隐私或安全保证。Windows 10 2004及更新版本才支持完整的排除语义;较早版本按系统行为可能显示黑块。

先选择屏幕、录制区域、输出MP4与质量,再选择原始画面、固定焦点放大、跟随鼠标放大或全景加鼠标放大窗。放大1–4倍,固定焦点用横/纵比例调整;焦点限制在选区,输出宽高不变。可开启约180ms平滑过渡、鼠标高亮和左右键点击波纹,默认全部关闭。复位画面只关闭放大;关闭所有效果同时关闭鼠标提示。

录制中可调整。统一前缀后R T打开设置、R Z开关鼠标跟随放大、R F将固定焦点移到当前物理鼠标位置、R X关闭全部效果;附加序列可修改,实际配置以本机设置为准。R F要求鼠标在录制选区内;不满足时焦点不变并显示原因。开始/暂停/结束仍用R S/R P/R E或原直接热键。倒计时期间不接受效果调整;暂停不推进视频时间并清除瞬态波纹,恢复不重放暂停期间的点击。

预览共用编码输出的像素转换。默认合成网格,可在预览上移动和点击试用。主动点击“预览所选区域当前画面”读取静态快照,仅存于当前工作台内存,不上传或自动写盘;切换区域会丢弃旧预览,可手动恢复示例/清除快照。缩略预览不是最终质量验收,快照不会实时刷新。开始鼠标框选时,程序会先最小化主窗口,等待桌面重绘后获取所选屏幕快照,再打开框选浮层;完成、取消或失败都会恢复主窗口,避免把工作台自身拍进选择底图。

步骤编号默认关闭。开启后从1开始,录制中可以点“下一步”递增、重新从1开始或关闭,最高显示99;编号位置可选四角。编号写入预览和导出MP4,之后的帧持续显示当前编号,直到更改或关闭;关闭全部效果会清除编号。它只绘制数字,不监听或显示键盘输入;聚光灯压暗和放大窗位置可能与编号所在角重叠,请按成片布局选择角落。

章节标记在录制中通过“标记章节”按钮添加,使用有效视频时长,暂停期间不推进;标题和时间可在录制结束后检查、编辑或删除,最多256项。完成录制后可经保存对话框另存 FFmpeg FFMETADATA1 格式的 .ffmeta 文件,供后续 remux/剪辑使用;导出不会自动改动视频,也不会覆盖已有文件。时间戳按毫秒写入,标题中的元数据分隔符和换行会被转义;位于视频时长之外的标记不会导出。此功能只生成旁车元数据,不内置或自动运行 FFmpeg。

方向箭头指针默认关闭。开启后会在鼠标位置绘制带深色描边的白色箭头,并按放大后的鼠标坐标定位;在缩放裁剪画面之外时不显示,靠近区域边缘会自然裁切。效果实时进入同一套预览和视频帧合成,不读取或展示键盘内容。

按键组合提示默认关闭。用户可手动输入最多24个ASCII英文字母、数字、空格及 + - /,例如 CTRL+SHIFT+S,再明确添加到视频;字母会转成大写,并可选择四角位置。提示绘制在预览和录制帧中,关闭提示或关闭所有效果即可移除。该功能从不监听键盘、不读取真实按键或输入框内容;录制前应检查手写组合不包含密码等敏感信息。当前使用内置小型像素字形,不依赖系统字体。

实时组合键显示为单独的可选项,默认关闭。明确开启后,只在有效录制帧到达时检查组合:必须包含 Ctrl、Alt 或 Win,且同时只按下一个可识别键;可识别项包括字母、数字、F1–F12 和常用导航键。未修饰的文字、Shift单独输入、修饰键单独按下或多个普通键同时按下均不显示。组合键会合成到预览和录制帧,可选择四角位置;暂停时不采样。实现不安装键盘钩子、不维护键盘日志,也不把按键持久化。采样大约随录制帧率(最多约30次/秒),短暂组合可能漏掉;请勿在录制密码、账号或其他敏感窗口时启用。手动组合提示仍可独立使用。

临时画笔默认关闭。明确开启后,在预览画面或录制选区按住左键拖动绘制,支持红、黄、青、白四种颜色。笔迹作为视频画面的一部分持续保留,不会随着鼠标移开而消失;录制中点“清除标注”可擦除当前所有笔迹,关闭所有效果也会清除。暂停会结束当前笔划,恢复后若左键仍按住,会等按键释放再开始绘制。每次录制最多保留24条笔划,每条最多256个采样点;超过上限后旧笔划淘汰或长笔划抽稀。笔迹不会写入独立图片文件,录制结束后随视频保留。

选区小于32×32像素时,框选浮层会直接显示错误提示;开始下一次拖选会清除旧提示。

实现与边界

裁剪后、行翻转与H.264编码前进行BGRA合成。静止桌面也从保留的原始帧重新合成,不重复放大上一张输出;末尾补帧使用已合成画面。鼠标用显示器物理起点和选区转换坐标;离开选区不绘制高亮,跟随焦点保留最后位置。放大使用最近源像素,缩放边缘可能有锯齿。黄色波纹为左键,蓝色为右键,最多8个、约500ms淡出。

点击以状态变化采样,极快点击可能遗漏,不是完整事件记录。效果区域最多1600万像素,超限拒绝启用。效果与预览均是会话设置,不自动保存或采集键盘文字。主窗口是否被录入仍取决于选区与最小化设置;建议缩小选区或使用前缀操作。快捷面板也可能被录入,原生控制层捕获排除尚待实现。

验证与后续

测试覆盖边界/行方向、字节级复位、源内容不变、平滑跟随、暂停/点击衰减和无效设置拒绝。实际Windows采集回调用测试专用合成源和指针,导出MP4后解码检查固定焦点、跟随、高亮、波纹、复位及暂停时长;注入只存在于ui-preview特性,不进入普通发布程序。这证明编码路径与合成输出,不等同于真实桌面、物理鼠标或混合DPI验收。本机测试窗口的桌面合成颜色未通过实际采样,失败证据保留,真实屏幕内容与物理输入仍待验证。

按热键聚焦当前位置已提供:R F读取一次物理指针坐标,将鼠标位置换算为选区内固定焦点;它不会持续跟随光标。手动与受限实时组合提示、有限临时画笔已有首版;提词器,以及高分辨率性能、不同屏幕/DPI与音画同步仍逐项推进。普通录屏边界见屏幕录制,完整九项路线见桌面效率扩展。

dev23全景放大窗与聚光灯

“全景+鼠标放大窗”保留完整录制区域,在四角之一叠加约36%画面宽高的局部放大窗;1–4倍、跟随鼠标、支持平滑,鼠标离开后保持最后焦点。放大窗边框帮助区分局部与全景,选择不遮挡教程内容的位置。

聚光灯独立于放大模式,半径为画面短边的3–45%、外围压暗0–90%,圆周带柔和过渡;鼠标离开选区时取消压暗,放大窗保持明亮。先合成全景压暗,再叠加局部窗及鼠标提示;关闭全部效果恢复原始像素。聚光灯不是隐私遮挡,敏感内容仍可能在视频中出现。方向箭头指针可选启用,随当前鼠标位置绘制并经缩放映射后合成;R F通过物理鼠标坐标设置固定焦点。手动按键组合和临时画笔已有首版;跟随真实按键的字幕、提词器、高分辨率性能与真实物理输入仍待验收。

本轮增加放大窗四角、聚光灯越界、固定放大时指针不在可见裁剪画面、无效参数拒绝等回归测试。合成源经实际 Windows 编码导出 640×360、30fps 的 MP4,解码后 9 项像素及时长检查通过;亮暗两种主题的设置和预览均已截图检查。测试专用窗口仍注入合成画面和指针,不能代替真实桌面、多屏、高 DPI 和性能验收。

2026-10-18 本机交互桌面运行了 cargo test --locked recorder_ui::tests::captures_primary_display_snapshot_in_memory -- --ignored --exact:GDI 主屏快照返回的尺寸与主屏一致,像素数量匹配且 alpha 通道有效;图像只在测试进程内存中使用,不写入磁盘。该检查证明屏幕像素读取 API 返回了完整缓冲,不证明画面内容视觉正确,也不覆盖最小化主窗口后打开框选浮层、框选结束/取消恢复窗口的端到端交互。此前测试窗口桌面合成颜色采样失败的证据仍保留;真实内容目视、多屏、混合 DPI、物理输入和高分辨率性能继续待验。