I’m currently experiencing an issue regarding the output of Spout within the Max framework. The transmission doesn’t work correctly on my side, it almost looks like some kind of ‘pixel error’. Please take a look at the following screen capture: Spout - Google Drive
These examples are covering the transmission from:
Spout sender to Spout receiver // pixel error appears
Spout sender to TouchDesigner // pixel error appears
TouchDesigner to Spout receiver // is working fine
This issue first appeared to me when trying to send the output of the Spectral One visualizers (hosted in Ableton via M4L, also using Spout) to the TouchDesigner Syhpon Spout In TOP. Thanks to Chris Vik, the Developer of Spectral One, we were able to isolate the issue to only exist within the Max framework on the sender side.
I’ve already updated to the newest version of Spout (2.007). Additionally, I’ve moved the Spout installation to a folder that doesn’t rely on administrative rights and installed the provided versions of the Visual Studio Runtime.
Here are some more specifications to my system:
Lenovo ThinkPad T480 running Windows 7 64-Bit
External graphics card (eGPU) AMD RX Vega 56 OC
Processor is an Intel Core i7-8550U
All in all 16GB of RAM
I would be really glad if anybody could help me out on that as I’m working on an audiovisual performance with a smaller group of people.
From your videos, this looks like a driver problem almost identical to that reported for AMD Radeon graphics recently. The AMD RX Vega driver could have the same issue, the fact that its an external GPU could also be a cause.
I have a diagnostic mode in development but it isn’t ready yet. Meanwhile you might be able to isolate the OpenGL/DirectX linkage part of the driver by going back to the earlier 2.006 demo programs.
Run 2.006 SpoutSettings. Check “CPU” on and OK to save. Run the 2.006 demo Sender and Receiver together. These will be very slow but might confirm an issue with the OpenGL/DirectX texture functions of the graphics driver. The Max/Msp plugin does not support CPU share mode but might add to the test, as might TouchDesigner.
When you have finished the tests, run the 2.007 version of SpoutSettings aagin, click “Reset” and OK to save.
The fact that TouchDesigner works OK is a lead and I will follow that up.
Thanks a lot for your fast response, I’m really looking forward to finally come around this issue.
Maybe I should add that the external GPU is connected via Thunderbolt 3, I’ll test if the pixel error still persists when I’m running everything on the internal/dedicated graphics card (NVIDIA GeForce MX150).
I’ve tested with the 2.006 version again, the CPU mode does not run at all. While there are no problems to open up the sender in this mode, the receiver instantly crashes after opening (greyed out, ‘Spout demo program doesn’t work anymore’). The same message occurs when I’m trying to use the Max plugin in Ableton or the Syphon Spout Out in TouchDesigner as a sender.
Yeah, I was also really surprised to see that TouchDesigner generally works in Texture mode ─ no matter if I use version 2.006 or 2.007. But it’s not just TouchDesigner, as long as Texture mode is enabled the transmission between the Spout demo sender and receiver works as well. That’s why were guessing that the pixel error only occurs when using a sender within the Max framework.
OK, the programs are too old to isolate all the variations, but it was worth trying.
I had a reply from the TouchDesigner developer. The Spout part of the program does not use OpenGL, so that’s enough to say that the problem is with the AMD driver for OpenGL/DirectX texture linkage.
If you have an internal NVIDIA graphics card and can set all the programs to use it, this could be the solution. Make sure you run 2.007 SpoutSettings and click reset so that the “CPU” mode setting is disabled.
I suspect that an external graphics card might not be satisfactory in any event. It would be interesting to know, but I don’t have the hardware to confirm one way or the other.
So I had a quick test using the internal NVIDIA graphics card and as you’ve predicted the pixel errors just disappeared. One more thing I’ve observed is that the frame rate in TouchDesigner actually goes up and the program even runs a little bit smoother than before.
While it’s definitely nice to see that the issue is somehow solved, I feel a bit disappointed by the AMD graphics card. Beside my main goal to run current games on a laptop, I was hoping for an increased graphics performance when generating visuals… I haven’t expected that it would actually be the other way around meaning that an external graphics card is less performative.
Do you know if this would still be the case when an external NVIDIA graphics card is used?
I really can’t say because I have had no experience with them. Maybe you can get some answers on other forums unless somebody might like to chime in here.