这个项目能做什么

obs-studio-node 为 libobs 提供 Node.js 绑定,libobs 是 OBS Studio 的内部库,因此其采集、场景合成和推流能力可以从 Node 或 Electron 运行时中驱动。README 指出目前仅支持 Windows 和 macOS。 构建需要 Git、Node.js、Yarn 和 CMake;在 Windows 上还需要 Visual Studio 2019/2022 和 Windows SDK,而 macOS 构建需要 Xcode。典型的构建流程是运行 yarn install、初始化 git 子模块、使用选定的 CMAKE_INSTALL_PREFIX 配置 CMake,然后构建 install 目标。默认会下载预构建的 libobs;也可以提供自定义的 OBS 构建,但必须禁用 ENABLE_SCRIPTING 和 ENABLE_UI,并且不设置 QTDIR。OSN_LIBOBS_DEPENDENCY_PREFIX_PATH 选项支持较旧的本地 libobs 开发包。 JavaScript 接口通过 tsc 从 js/module.ts 生成到 js/module.js 和 js/module.d.ts,这些文件会被提交,因为它们会随 npm 包一起发布;yarn build:javascript 会重新生成它们,CI 会检查是否有过期的输出。静态分析目标包括 cppcheck 和 Clang 分析器工作流。 测试使用 TypeScript 编写,配合 Mocha、electron-mocha 和 Chai,并且需要已构建的模块以及 ELECTRON_PATH 环境变量。部分测试会与 Twitch 交互,可以使用 SLOBS_BE_STREAMKEY 作为后备推流密钥。测试可以完整运行、按 describe 名称过滤,或通过提供的 VS Code 启动配置进行调试。