A:Recent version of PTB 3 support this, given the right hardware. To test your hardware, enter the following code in Matlab, which abort with an error if 10 bit color is not supported by your drivers/hardware:
At least one ATI card supports 10 bit color internally (no matlab errors with the above test) but only shows 8 bit resolution on output over VGA. You can use TestBitDepth.m to test if you are getting actual 10 bit resolution on output.
Tested and known to work:
- ATI V7600 Fire Gl, Linux (Ubuntu 11.04), ATI Binary Drivers 8.872, connected via VGA, and "enable deep color=auto" (force causes it to fail). You also need to call Screen('Preference','ConserveVRAM', 2^21), or you only see 8 bit resolution. Reported by AlanRobinson.
- NIVIDA PNY FX1800 + HP dream color (WinXP), connected via display port, and with the "force 10 bit per component" 3D profile selected in the NVIDIA control panel. Reported by AlanRobinson.
- NIVIDA PNY FX1800 + DVI to VGA (WinXP), connected to a CRT. Actually, this doesn't always work; recently the same hardware has started to refuse to initialize 10 bit mode, for no explicable reason. Also tested and did not work: Display Port -> HP active VGA converter, HPDreamColor connected via dual link DVI->HDMI adapter, or DisplayPort->HDMI adapter (in all cases, screen fails to initialize in 10 bit native mode). Reported by AlanRobinson.
- NIVIDA Quadro FX580 and PNY Quadro 600 (Win7), connected to a CRT or LCD via VGA. It is surprising that the LCD can show 8+ bits. Reported by XiangruiLi.
Tested without success:
- ATI V7600 Fire GL, WinXP, drivers FirePro_18.104.22.168_XP32_119544 and FirePro_8.543_XP32_71427. PTB was able to enable the 10bit frame buffer, but when rasterized to a CRT over VGA only 8 bit resolution was actually visible. Reported by Alan Robinson.
- NVIDIA Geforce 8600 GT (WinXP). Reported by AlanRobinson.
- NVIDIA Quadro FX580 and PNY Quadro 600 under WinXP. The PTB demo exits with error even after above 3D setting change by AlanRobinson. Under Win7, there is no PTB error, but none of the DVI or DisplayPort can give 8+ bits on LCD. Reported by XiangruiLi.
ATI only supports it on FireGL: http://www.amd.com/us/Documents/10-Bit.pdf
NVIDIA only supports it on the Quadro: - http://www.nvidia.com/docs/IO/40049/TB-04701-001_v02_new.pdf
Q: what is the status of 10bit frame buffer support under OSX?
A: OS X PTB appears to require the custom kernel driver written for ATI; here is the error message:
PTB-ERROR: Your script requested a 30bpp, 10bpc framebuffer, but the Psychtoolbox kernel driver is not loaded and ready. PTB-ERROR: The driver currently only supports selected ATI Radeon GPU's (e.g., X1000/HD2000/HD3000/HD4000 series and later). PTB-ERROR: On MacOS/X the driver must be loaded and functional for your graphics card for this to work. PTB-ERROR: On Linux you must start Octave or Matlab as root, ie. system administrator or via sudo command for this to work. PTB-ERROR: Read 'help PsychtoolboxKernelDriver' for more information.
IIRC Quadro and FireGL cards do not require the kernel driver, but could be well mistaken. Reported by IanA
Q: what is the status of 10bit frame buffer support under Linux?
A: According to Mario, the pro cards are also officially announced to support for 10 bit on Linux, just like on Windows without special PTB tricks.