Skip to content

receive_image() succeeds but returns all-zero buffer (black frame) with OBS Spout2 sender #1

Description

@sugphaze

Hi, thank you for this library.

Problem
I can successfully connect to an OBS Studio Spout2 sender (Spout_OBS_Filter), receiver.receive() works, and receive_image() returns True. However, the received buffer is all zeros , resulting in a completely black image in OpenCV.

What works
Official Spout2 Receiver.exe displays the content correctly .
SpoutUtils can see the sender and correct resolution (1920x1032).
Tried both invert=True and False.

What I tried
Using the official examples :preview_example.py , and it does not show anything

Environment
Windows 11 x64
Python 3.13
Latest SPOUT2ForPython (from git)
OBS with Off-World-Live Spout2 plugin
Sender is created via Spout2 Output (filter on a source)

It seems like a texture sharing / mapping issue specific to the Python bindings (ctypes + SpoutLibrary.dll), while native applications work fine.Is there any known limitation with OBS Spout2 Output, or any additional flags / calls needed for the receiver to get actual texture data?Thanks in advance!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions