如何配置 OBS 运行 Python 脚本

我被代码海扁署名-非商业-禁演绎
阅读 4:16·字数 1281·发布 
Bilibili 空间
关注 960

OBS Studio

OBS 是一款免费开源的直播软件,支持用户开发插件,或运行 Python 编写的脚本,以实现功能的拓展。

Open Broadcaster Software | OBS

安装 Python

由于 OBS 提供的安装包并未附带 Python,因此你的操作系统需要拥有某个版本的 Python,这是在 OBS 中运行 Python 脚本的前提条件之一。

Python 安装

想要详细了解如何安装 Python,你可以查看Python 教程如何在 UNIX/Linux/Windows/macOS 中安装 Python一节。

为 OBS 设置 Python 安装路径

OBS 似乎并不使用环境变量PATH来定位 Python,如果希望 Python 能够正确启动,需要为 OBS 说明 Python 的安装位置。

你可以通过 OBS 的菜单项工具 | 脚本打开脚本窗口,然后切换到 Python 设置选项卡,以选择 Python 所在的安装路径,OBS 将从该路径载入 Python,并显示其版本信息。

OBS 可能不支持 Python 的最新或过旧版本

OBS 可能并不支持最新或过于陈旧的 Python 版本,如果遇到这种情况,Python 设置选项卡中会出现类似于“当前未加载 Python”这样的提示。此时可以选择安装其他版本的 Python,并在 Python 设置选项卡中重新指定 Python 安装路径。

当你为 OBS 指定了新的 Python 安装路径后,OBS 可能会提示重启,以从新的路径载入 Python。

为 OBS 编写 Python 脚本

下面,让我们准备一个名为hello_world.py的文件,并在其中编写一段简单的代码,这段代码会在 OBS 的脚本日志窗口中显示 Python 模块搜索路径。

hello_world.py
# 导入模块 obspython
import obspython as obs

# 在脚本日志窗口显示 Python 模块搜索路径 import sys obs.script_log(obs.LOG_INFO, str(sys.path))

OBS 中的 obspython 模块

OBS 提供了一个重要的 Python 模块obspython,用于调用 OBS 中的各种功能,或获取设置 OBS 的某些状态。该模块所在的目录,会被 OBS 添加至 Python 的模块搜索路径,因此你可以直接使用模块名称将其导入。

OBS obspython 模块的 script_log 函数

obspython模块的script_log函数用于向脚本日志窗口输出消息,可以使用该函数辅助调试,或显示提示性的信息。

配置 VSCode

由于 OBS 本身并不提供脚本编辑功能,本教程将使用 VSCode 来编写 Python 代码。你可以从Python 教程如何配置 VSCode 编写运行 Python 代码一节中获取相关信息。

在 OBS 中添加 Python 脚本

在 OBS 脚本窗口脚本选项卡中,点击添加脚本按钮即可添加 Python 脚本文件,被添加的文件将出现在已载入脚本列表框中。这里,我们需要添加之前编写的文件hello_world.py

在 OBS 中运行 Python 脚本

一旦你在 OBS 中成功添加了 Python 脚本,这些脚本就会自动运行,因此并不需要任何特别的操作。

这里,我们通过脚本选项卡脚本日志按钮,打开脚本日志窗口,该窗口显示了 Python 模块搜索路径,说明hello_world.py的确已经运行。

# Windows 中的输出结果
[hello_world.py] ['\\data\\obs-scripting\\64bit',]

在 OBS 中重新载入 Python 脚本

选择已载入脚本列表框中希望重新载入的 Python 脚本,然后点击重新载入脚本按钮,即可重新载入该脚本,当然,这意味着重新运行。

在 OBS 中移除 Python 脚本

选择已载入脚本列表框中希望移除的 Python 脚本,然后点击移除脚本按钮,即可将该脚本移除。

源码

hello_world.py·codebeatme/obs-python-scripting·GitHub

讲解视频

如何在 OBS 中添加和运行 Python 脚本?如何为 OBS 设置 Python 安装路径·Bilibili