16 and 32 bit OpenGL textures are now supported by way of compatible DirectX 11 texture formats. The type of OpenGL texture can be set for the sender and retrieved by the receiver so that the receiving texture can be updated to match. Developers will find the changes in the examples for the sender and receiver.
For example, the sender can use a 16 bit format such as GL_RGBA16 and find the the compatible DirectX format with
DX11format(GL_RGBA16) then specify that with
SetSenderFormat. The receiver can query the sender OpenGL format using
GLDXformat() and allocate the receiving texture with that format. If no query is made, the received texture is 8 bit RGBA as usual.
What this means is that different texture formats such as 16 bit float, sent by TouchDesigner for example, can be queried and received into and OpenGL float texture GL_RGBA16F. The latest Spout Demo Receiver displays the sender’s compatible OpenGL format, in this case “16 bit RGBA float” if TouchDesigner pixel format is set to “16 bit float RGBA”.
While we are on the subject of demo receivers, both this example and the distribution Demo Receiver now support video recording by way of FFmpeg. A command line version, SpoutRecorder, can also be used to show FFmpeg details while it is recording. Options are limited and results will be as you find them, but it’s a useful tool to have in the drawer.