ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

screenstudio-alt - SKILL

screenstudio-alt - SKILL name: screenstudio-altdescription: “Open-source headless Screen Studio alternative: auto speed-up of idle, auto-zoom on click clusters, keystroke overlay chips, smoothed synthetic cursor, and 9:16 vertical export that follows the action — post-production for screen recordings from the CLI.”risk: criticalsource: communitysource_type: communitysource_repo: connerkward/screenstudio-alternative-skilldate_added: “2026-06-16”author: Conner K Wardlicense: MITtags:screen-recordingvideopost-productionauto-zoomvertical-videoffmpegtools:claude-codeantigravitycursorgemini-clicodex-cliplugin:targets:codex: blockedclaude: blockedsetup:type: manualsummary: “Screen/input capture requires sensitive local permissions; keep out of plugin-safe bundles.”docs: SKILL.md何时使用在润色屏幕录制/演示视频以便分享时使用当用户提到 Screen Studio、自动缩放、空闲加速或从屏幕捕获制作垂直/社交媒体视频时使用以及用于任何面向社交媒体的演示垂直输出是这类视频的默认设置。来源 connerkward/screenstudio-alternative-skillMIT。screenstudio-alt该技能的代码位于此目录中polish.py、render.py、studio.py、events-log.swift、测试夹具等。通过 publish-skill 技能公开发布为connerkward/screen-studio-alternative。两个组件events-logSwift——捕获端的输入记录器光标 60Hz、点击、按键在 macOS 安全输入期间丢弃按键。仅在录制时运行。需要终端具备辅助功能/输入监控权限。自动缩放/按键/光标需要在捕获时获得这些数据——之后无法从像素中恢复。polish.pyPython、ffmpeg PIL——后期处理过程python3 src/polish.py in.mp4--eventsin.events.jsonl\--speedup# compress idle (input-gap ∩ frozen-pixels; animations stay 1x)--zoom# eased auto-zoom on click clusters (zoompan)--keys# accumulating keystroke chips (PIL overlays, no drawtext dep)--smooth-cursor# synthetic eased cursor (best with sck-record --no-cursor)--vertical# ALSO emit 1080x1920 following the action--speedup无需事件即可工作仅 freezedetect——可用于整个现有的 dailies 语料库。render.py——高质量非破坏性渲染器推荐在原始高分辨率帧上使用单遍弹簧物理相机通过 LANCZOS 缩小到较小的目标清晰缩放比 ffmpeg 放大路径锐利约 1.3 倍60fpsH 9:16 V。可调--freq/--zeta弹簧、--fps、--target-w。接受显式--regions [{t0,t1,z,cx,cy}]。polish.py是较旧的 ffmpeg 滤镜回退方案。studio.py [recording.mp4]——本地 Web UINLE 风格固定标尺时间线条 源时长从不缩放 → 上游始终锚定缩放区域是可拖动的块移动 / 重调边缘时间 / 单击添加 / 双击删除空闲跨度是仅编辑速率的加速块——源范围锁定速率通过检查器滑块在选择时设置或通过右边缘速率拉伸拖动FCP retime / Premiere Rate Stretch设置速率变化仅向下游波及。可调余弦缓动斜坡、默认缩放、宽高比、帧样式。始终平滑的合成光标 点击涟漪 真实录制的点击声CC0 #735771。导出使用 render.py。空闲端口本地运行。按键覆盖层在引擎中存在但默认关闭。简单路径screencast.sh --demoscreencast 技能执行整个链路启动事件记录器、录制然后自动润色并输出 9:16 垂直视频。垂直是面向社交媒体的演示的默认。注意事项来之不易的经验保留在此以免重蹈覆辙ffmpeg无法做动画化的scaleevalframe→crop链接重新初始化会卡住 crop 的逐帧表达式。这就是缩放使用zoompan的原因那里没有t变量——使用on/FPS。这台机器的 ffmpeg 缺少drawtext所有文字/光标覆盖层都是 PIL 渲染的 PNG overlay。测试台make-fixture.py合成一个假的屏幕录制 带真实数据的 events.jsonl——在对真实素材建立信任之前先用它验证任何改动。局限性该工作流假设 FFmpeg 和配套脚本在本地可用它不是托管的视频编辑器。润色后的光标、点击和按键效果依赖于录制期间捕获的事件日志缺少日志会限制可重建的内容。自动缩放和空闲加速仍需要人工审查节奏、构图和平台特定偏好。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进