is this a reasonable way to get the texture? It seems to be working in that I can bind it, read the texture and write it to the screen, and then unbind it – but converting it to a Surface (ie dumping it to the cpu so I can read the RGB values) results in an empty object.
Would it be better/worse to draw the syphonClient’s texture into an FBO instead of using a getter?
Unfortunately the texture is backed such that it won’t return meaningful values if you try to read it back to the CPU – you’re not doing anything wrong. Drawing Syphon’s texture into an FBO is the only way to do this .