1 votos

¿Cómo desbloquear la tasa de refresco de Sierra para otras resoluciones inferiores a 4k?

Tenía un MacBook Pro 2017, usando un USB-C a HDMI que puede soportar 4K@60Hz.

Corrí CoreDisplay parcheador para habilitar 60Hz para la resolución 4K:

enter image description here

Pero la tasa de refresco sigue bloqueada en 30Hz para otras resoluciones. ¿Hay alguna forma de desbloquear los 60Hz para 2560x1440?

enter image description here

1voto

NewWorld Puntos 132

HDMI 2.0 4K60Hz podría utilizar el submuestreo de croma (YCbCr422 10bpc) https://www.rtings.com/tv/learn/chroma-subsampling

Puedes forzar el RGB anulando el EDID (te limita a 8bpc) https://www.mathewinkson.com/2013/03/force-rgb-mode-in-mac-os-x-to-fix-the-picture-quality-of-an-external-monitor

Se prefiere DisplayPort 1.2 porque tiene un poco más de ancho de banda y permite RGB 10bpc sin requerir soluciones.

2560x1440@60Hz HiDPI utiliza una resolución a escala de 5120x2880. Esto significa que MacOS dibuja en un frame buffer que es 5120x2880 y la tarjeta gráfica escala el frame buffer a la base de la resolución escalada que es 3840x2160 en tu caso (SwitchResX puede cambiar la base de la resolución escalada). Por defecto, las resoluciones escaladas se crean con una sola tasa de refresco/tiempo. Creo que la temporización utilizada para la resolución base es la última temporización incorporada que tiene la misma resolución que la resolución base escalada. Por eso se elige 3840x2160 30Hz para la temporización.

MacOS 10.14.6 tiene una nueva preferencia oculta para habilitar múltiples frecuencias de actualización para resoluciones escaladas (incluyendo resoluciones HiDPI).

sudo defaults write /Library/Preferences/com.apple.CoreDisplay multiRefreshRateScaledModes -bool true

Cada resolución escalada (y su correspondiente resolución HiDPI) tendrá entonces todos los tiempos que tiene la resolución base escalada. https://www.tonymacx86.com/threads/adding-using-hidpi-custom-resolutions.133254/post-1999528

Para las versiones más antiguas de MacOS, supongo que necesitarás código para crear resoluciones escaladas con tiempos específicos, y parches para CoreDisplay para permitirlas. El código para algunas versiones de MacOS (pero no todas) que podría hacer eso está en IOGraphicsLib.c en opensource.apple.com

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X