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
- Windows Spout Sender
- Windows Spout Sender Discovery (only supported from spout version 0.1.0 onward)
- Windows Spout Receiver (only supported from spout version 0.1.0 onward)
- NDI Sender
- NDI Sender Discovery
- NDI Receiver
-
donwload and install NDI SDK before you continue intalling the addon.
-
build a wheel for your system architecture.
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
-
If available, press the button to install the SpoutGL or syphon-python library via pip.
-
For NDI locate your built wheel file (see requirements).
-
Press the button to install the NDI library .
-
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.
Caveat: With the current implementation the update speed is very low (a few frames a second). Thats because the received texture needs to be copied from the GPU into an image buffer on the CPU. For the time beeing I dont see another way to solve this.
When uninstalling 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