NO IMAGE

最近在使用MacBookPro時,覺得螢幕不夠大,外擴一個三星顯示器,使用HDMI介面連線至MBP,結果發現,三星顯示器畫面模糊或虛化嚴重,幾乎看不清的節奏。無法忍受,覺得是HDMI線材太差,但是換一臺T420筆記本(Windows 7)後,顯示器畫質正常(遠好於此時的MBP)。顯然,是MBP引起。

問題定位

MacBookPro外接第三方顯示器會被識別成電視,導致字型模糊,和字型渲染方式以及線材沒有關係。跟顏色空間的選擇有關,TV使用的是YCbCr空間,需要將其強制轉換為RGB空間即可。

解決步驟

第一步:關閉系統保護

由於macOS預設啟用了System Integrity Protection(又稱為rootless),因此我們需要暫時解除,一遍後面的步驟可以順利進行。要關閉rootless,需要重啟macOS,按住CMD+R進入恢復模式。選擇Utilities選單,開啟終端Terminal,並輸入csrutil disable。成功的話會提示“Successfully disabled System Integrity Protection”的字樣。然後重啟。

通過csrutil status可以檢視當前的系統保護狀態。

第二步:生成DisplayVendorID資料夾

下載指令碼到本地、解壓後得到patch-edid.rb,在Terminal中輸入ruby patch-edid.rb執行指令碼,會產生一個DisplayVendorID-4c2d資料夾,4c2d是編號,不同的顯示器會有區別。

第三步:替換系統檔案

備份!備份!!備份!!! /System/Library/Displays/Contents/Resources/Overrides資料夾!

然後,終端中輸入sudo cp -R DisplayVendorID-4c2d /System/Library/Displays/Contents/Resources/Overrides。拷貝成功之後,拔掉顯示器介面,再接上,即可看到顯示效果明顯改進。然後必須執行下一步!

話說,如果沒有改進,說明此方法不能解決你的問題。可能是由於HDMI線材或其他因素導致。另外,如果拷貝檔案時出現許可權不允許,請重新檢查是否已經成功執行第一步。

第四步:【重要】重新啟用系統保護

在第一步中,我們禁用了系統保護,這是很危險的。完成第三步操作後,可以參照第一步的做法,將csrutil disable改為csrutil enable即可。

參考連結


閱讀原文 | 作者官網 | 公眾號 | Feed | 訂閱 | 發私信