rMBP - El Capitan - Externer Monitor verschwommen

Ich hoffe mir kann jemand helfen, denn das macht mich wahnsinnig...

Am Wochenende habe ich ein neues Macbook Pro Retina (Modell Anfang 2015) bekommen. Bevor ich es an einen externen Monitor anschloss, habe ich auf El Capitan aktualisiert und das Gerät selbst funktioniert einwandfrei.

Wenn ich es an meinen externen Monitor, einen Dell U2412M, anschließe, sind bestimmte Teile des Displays verschwommen. Einige Untersuchungen haben ergeben, dass es möglicherweise den falschen Farbraum verwendet und das bekannte Skript verwendet, das ich generiert und ein neues Profil installiert habe, um RGB zu erzwingen. Es könnte eine leichte Verbesserung gegeben haben, schwer zu sagen ...

Ich habe dann über die Einstellung 'AppleFontSmoothing' gelesen und alle verfügbaren Einstellungen ausprobiert, auch hier kann es zu einer leichten Verbesserung gekommen sein. Ich hatte mich ziemlich entschieden, damit zu leben. Bis ich ein JPG im Finder in der Vorschau angezeigt habe und es wie Bild (1) unten aussah.

Dann zog ich das Sucherfenster zurück auf das eingebaute Retina-Display, und es sah aus wie Bild (2) unten.

Viel flüssiger, aber eine höhere Auflösung - keine große Überraschung. Jetzt zog ich, ohne irgendetwas zu ändern, das Sucherfenster zurück auf den Dell-Monitor und war schockiert, als ich sah, dass das glatte Bild erhalten blieb.

Screenshots von Non-Glättung

Zur Information: Der Effekt unterscheidet sich nicht sichtbar, wenn ein Mini-Displayport-zu-DVI-D- oder mdp-zu-Display-Port-Kabel verwendet wird.

Um es klarzustellen, die Bilder 1 und 3 oben sind Screenshots desselben Fensters auf demselben Monitor, der auf dieselbe Weise mit derselben Maschine verbunden ist. Der einzige Unterschied besteht darin, dass das Fenster zwischen diesen Screenshots einen kurzen Besuch auf dem eingebauten Bildschirm hatte.

Antworten (1)

Hier ist ein Ruby-Skript:

https://gist.github.com/bastibense/6549835

#!/usr/bin/ruby
# Create display override file to force Mac OS X to use RGB mode for Display
# see http://embdev.net/topic/284710
# 
# Update 2013-06-24: added -w0 option to prevent truncated lines

require 'base64'

data=`ioreg -l -w0 -d0 -r -c AppleDisplay`

edid_hex=data.match(/IODisplayEDID.*?<([a-z0-9]+)>/i)[1]
vendorid=data.match(/DisplayVendorID.*?([0-9]+)/i)[1].to_i
productid=data.match(/DisplayProductID.*?([0-9]+)/i)[1].to_i

puts "found display: vendorid #{vendorid}, productid #{productid}, EDID:\n#{edid_hex}"

bytes=edid_hex.scan(/../).map{|x|Integer("0x#{x}")}.flatten

puts "Setting color support to RGB 4:4:4 only"
bytes[24] &= ~(0b11000)

puts "Number of extension blocks: #{bytes[126]}"
puts "removing extension block"
bytes = bytes[0..127]
bytes[126] = 0

bytes[127] = (0x100-(bytes[0..126].reduce(:+) % 256)) % 256
puts 
puts "Recalculated checksum: 0x%x" % bytes[127]
puts "new EDID:\n#{bytes.map{|b|"%02X"%b}.join}"

Dir.mkdir("DisplayVendorID-%x" % vendorid) rescue nil
f = File.open("DisplayVendorID-%x/DisplayProductID-%x" % [vendorid, productid], 'w')
f.write '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">'
f.write "
<dict>
  <key>DisplayProductName</key>
  <string>Display with forced RGB mode (EDID override)</string>
  <key>IODisplayEDID</key>
  <data>#{Base64.encode64(bytes.pack('C*'))}</data>
  <key>DisplayVendorID</key>
  <integer>#{vendorid}</integer>
  <key>DisplayProductID</key>
  <integer>#{productid}</integer>
</dict>
</plist>"
f.close

Sie müssen es im Rootless-Modus von El Capitan ausführen, damit es funktioniert.

Vielen Dank für Ihre Eingabe, aber ich habe die EDID-Überschreibung bereits verwendet, siehe Absatz drei meiner Frage.