Color management via VNC?
Use a known reference to calibrate your local and remote displays. No other approach will be able to provide a consistent or predictable result.
VNC is a protocol and not an implementation. Both client and server implementations will make their own decisions about colour management.
Where available, ensure your VNC server and client are using their maximum quality settings available. This will help reduce visual differences introduced during video encoding and decoding.
Colour Encoding
It is likely the VNC service will use macOS's Quartz Display Services to access and then transcode the contents of the display.
CGDisplayStreamCreate
is the function used to gain access to the display and the call can request a specific pixel format. The colour space used is set as a property to this call, see kCGDisplayStreamColorSpace
.
This means that the colour space and colour information will depend on the VNC server used.
You may also find the VNC client alters the colour output.
Do not rely on VNC for faithful colour reproduction. Calibrate the output displays.