Blender addon that allows to share textures via Spout or Syphon or NDI from and to blender.
This works for current Windows (Spout & NDI), Linux (NDI) and OSX (Syphon & NDI).
- ✅ OSX Syphon Metal Server
- ✅ OSX Syphon OpenGL Server
- ✅ OSX Syphon Server Discovery
⚠️ OSX Syphon Metal Client (blender 4.x upwards)- ❌ OSX Syphon OpenGL Client (Intel Macs)
- ✅ Windows Spout Sender
- ✅ Windows Spout Sender Discovery
⚠️ Windows Spout Receiver
- ✅ NDI Sender
- ✅ NDI Sender Discovery
⚠️ NDI Receiver
✅ = Works |
Please make sure you have the most current Blender installed.
-
Download the latest master as a zip
-
Open Blender > Menu > Preferences > Add-ons > search for and enable the 'TextureSharing' add-on
-
Press the button to install the NDI library .
-
If available, press the button to install the SpoutGL or syphon-python library via pip.
-
Once the library is installed, disable and reenable the addon.
-
If the addon doesn't show a successfully loaded python-library, then try restarting blender.
-
Save and close preferences.
See the current limitation above under State of Development
For sharing you need a Camera object.
The plugin adds a panel to the Camera properties called 'Share texture'. The following properties are available:
- The streaming type (NDI, Spout or Syphon)
- The sender (also known as server) name is default set to the camera name.
- use color management (recommended).
- render transparent background. (
⚠️ seems to work only for 'Display in solid mode') - vertical flip of the output texture.
- show preview inside viewport.
- capture/streaming resolution.
- chose a workspace with the desired render / shading preferences.
- chose a scene and layer setup to render.
You should be able to create as many Cameras and share textures as you wish.
The plugin adds a panel to the UV-Editor Tools 'Share texture'.
- create a new image and name it accordingly (in the above case 'Spout')
- press update to get all available shared textures.
- select a sender/server
- press 'create'
- select the image inside the pane.
- enable the receiver
The receiver will automatically adjust the image size to the size of the received texture.
With the current implementation the update speed is very low (a few frames a second). Thats because the received texture needs to be copied into an image buffer on the CPU.
-> https://docs.blender.org/api/current/bpy.types.Image.html#bpy.types.Image.pixels
If anybody knows a more efficient way to do this, please let me know.
When desinstalling a package, blender needs to be restarted to reflect the missing package in the userinterface.
Blender Plugin by Martin Froehlich.
- Lyn Jarvis for developing Spout
- Tom Butterworth and Anton Marini for developing Syphon
- Jason for the python wrappper SpoutGL for Python
- Florian Bruggisser for the python wrappper syphon-python
- Without the valuable hint from Jonas Dichelle I would still dab in darkness...
- CAD_Sketcher showed me how to dynamically install the needed libraries. Hurray to Opensource!
- Python support by Florian Bruggisser - without him, the flawless working of spyhon in blender would still be a dream.
- Spout Directory/Receiver implemented by Jonathan Chemla

