Многие пользователи отмечали проблемы с корректной загрузкой LUT в видеокартах Intel Graphics. Калибровка «слетает» после standby, logoff, смены видеорежима или подключения второго монитора/TV. При этом все загрузчики LUT, как старые испытанные Adobe Gamma Loader, Logo Calibration Loader, basiccolor LUTloader, так и современные, и даже родные (встроенные в windows 7) проявляют «непослушание», и даже вручную запускаемые — грузят LUT нехотя, не с первой попытки.
Связано это с тем, что функция SetGammaRamp, которой пользуются все наши загрузчики, не отрабатывается драйвером Intel Graphics напрямую, как того ожидает здравый смысл. Напрямую отрабатывается собственная фирменная функция, которая берет gamma ramp из registry [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ialm\Device0] "DisplayGamma" (где ialm - имя драйвера видеокарты).
Как исправить? Ведь переписывать драйвера мы вряд ли станем, непростая это работа. Да и лоадер писать специальный лень. Мы перепишем gamma ramp непосредственно в registry:
1. Экспортировать данные из vcgt нашего профиля.
2. Преобразовать их в 8-bit (в registry запись словами, 16-разрядная, но старший байт всегда 00h).
3. Сформировать reg-файл (текстовый) в формате строка 256 слов red, строка green, строка blue
"DisplayGamma"=hex:\
00,00,00,01...00,ff\
00,00,00,01...00,fс\
00,00,00,01...00,ef
4. Добавить файл в registry.
5. Отключить все остальные лоадеры.
2 Serge_e Если навыка работы с registry нет - вышлите мне в приват свой LUT (пусть хоть save из calibration tester).
Связано это с тем, что функция SetGammaRamp, которой пользуются все наши загрузчики, не отрабатывается драйвером Intel Graphics напрямую, как того ожидает здравый смысл. Напрямую отрабатывается собственная фирменная функция, которая берет gamma ramp из registry [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ialm\Device0] "DisplayGamma" (где ialm - имя драйвера видеокарты).
Как исправить? Ведь переписывать драйвера мы вряд ли станем, непростая это работа. Да и лоадер писать специальный лень. Мы перепишем gamma ramp непосредственно в registry:
1. Экспортировать данные из vcgt нашего профиля.
2. Преобразовать их в 8-bit (в registry запись словами, 16-разрядная, но старший байт всегда 00h).
3. Сформировать reg-файл (текстовый) в формате строка 256 слов red, строка green, строка blue
"DisplayGamma"=hex:\
00,00,00,01...00,ff\
00,00,00,01...00,fс\
00,00,00,01...00,ef
4. Добавить файл в registry.
5. Отключить все остальные лоадеры.
2 Serge_e Если навыка работы с registry нет - вышлите мне в приват свой LUT (пусть хоть save из calibration tester).