You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OBS-Websocket无法修改文本与图片源设置问题求助

OBS WebSocket 修改文本/图片源无效果的排查与解决

核心问题排查方向

1. 源名称完全匹配检查

OBS的源名称区分大小写、空格和特殊字符,必须确保代码中source_name_text、source_name_image的值和OBS界面里显示的源名完全一致(比如OBS里是"Text",代码里不能写"text")。

2. 图片路径有效性

  • 优先使用绝对路径:OBS的工作目录可能和脚本运行目录不一致,相对路径可能无法被正确识别。可以用os.path.abspath()将相对路径转为绝对路径,示例:
    import os
    new_image_file_path = os.path.abspath("image.png")
    
  • 路径格式规范:Windows系统下使用正斜杠/或双反斜杠\\,避免转义错误。

3. 文本源API参数错误

你的代码中调用SetTextGDIPlusProperties时用了source_name参数,但obs-websocket-py的正确参数名是sourceName(驼峰命名),参数名不匹配会导致调用无效但无报错。修正后的调用:

ws.call(requests.SetTextGDIPlusProperties(
    sourceName=source_name_text,
    text="修改后的文本"
))

4. 源类型与API匹配

  • 文本源必须是GDI+文本源:如果是「文本(FreeType2)」类型,需要改用SetTextFreeType2Properties API。
  • 图片源必须是图片源:不能是媒体源或其他类型,否则SetSourceSettings的file参数不生效。

5. 调试API返回结果

即使无报错,也可以打印API调用的返回结果,查看是否存在隐藏的错误信息:

response = ws.call(request)
print(response)

正常成功的返回会包含status:ok,如果有问题会返回对应的错误码和描述。

6. 文件权限与路径访问

确保OBS有访问图片文件的权限,避免将图片放在系统受保护目录(如Windows的Program Files),优先选择用户目录(如Documents)存放图片。

修正后的完整代码

from obswebsocket import obsws, requests
import os

new_image_file_path = os.path.abspath("image.png")
source_name_text = "text"
source_name_image = "image"

def connect():
    host = "localhost"
    port = 4455
    password = "myPassword"
    ws = obsws(host, port, password)
    ws.connect()

    run(ws)
    ws.disconnect()  # 执行完操作后断开连接

def run(ws):
    # 修改图片源
    img_req = requests.SetSourceSettings(
        sourceName=source_name_image,
        sourceSettings={"file": new_image_file_path}
    )
    img_res = ws.call(img_req)
    print("图片源修改响应:", img_res)

    # 修改GDI+文本源(修正参数名)
    text_req = requests.SetTextGDIPlusProperties(
        sourceName=source_name_text,
        text="已成功修改的文本内容"
    )
    text_res = ws.call(text_req)
    print("文本源修改响应:", text_res)

if __name__ == '__main__':
    connect()

内容的提问来源于stack exchange,提问作者JLP17

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 19:10:30