我已经使用了几个月的时间,即通过miniDisplayPort-DisplayPort适配器将2010中期的15英寸MBP连接到Dell U2711,而毫无疑问地将Mountain Lion的分辨率提高到2560x1440的完整分辨率。
我刚刚将笔记本电脑更新为Mavericks,但现在无法使用显示器的完整分辨率。我已经进行了几次测试,要么打开或关闭盖子,要么尝试通过gfxCardStatus强制离散GPU
是否有人正在经历同样的行为?有什么我可以尝试的吗?可能的解决方法?
我已经使用了几个月的时间,即通过miniDisplayPort-DisplayPort适配器将2010中期的15英寸MBP连接到Dell U2711,而毫无疑问地将Mountain Lion的分辨率提高到2560x1440的完整分辨率。
我刚刚将笔记本电脑更新为Mavericks,但现在无法使用显示器的完整分辨率。我已经进行了几次测试,要么打开或关闭盖子,要么尝试通过gfxCardStatus强制离散GPU
是否有人正在经历同样的行为?有什么我可以尝试的吗?可能的解决方法?
Answers:
终于我找到了。看起来Dell显示器的默认EDID配置不太正确。
在那篇文章中,还有一个ruby脚本,据说可以为您的显示生成正确的文件,但是最终却搞砸了我的分辨率。
我从第一篇文章中下载了文件,然后将其复制到/ System / Library / Displays / Overrides并重新启动,然后显示器再次显示其超赞的全分辨率。该文件据说可以纠正U2713H和U2713HM的问题,但它也可以与我的U2711一起使用。
希望这能对我有所帮助。
Display Profile
“颜色”标签下的来修复它。单击时按住Alt按钮Display -> Scaled
也很有帮助。
该Ruby脚本为您的监视器生成一个自定义替代。将其另存为patch-edid.rb
您的用户文件夹,然后从Terminal run ruby patch-edid.rb
。将生成的文件复制到/System/Library/Displays/Overrides/
并重新启动。
#!/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
来源:EmbDev.net,主题“ Mac上的Dell U2713H:强制采用RGB模式而不是YCbCr”,文章#3027030
<main>': undefined method
[] for nil:NilClass(NoMethodError)
我有一个对我有用的解决方案。2013年初,使用Dell u2713hm运行MBP Retina 15“。
这样就解决了问题:
http://embdev.net/attachment/167830/U2713H_U2713HM_Mac_EDID_override.zip
通过覆盖显示器的EDID数据(http://en.wikipedia.org/wiki/Extended_display_identification_data)可以解决此问题,以便告诉OS X显示器仅支持RGB。这可以通过使用读取EDID
ioreg -l
,修改有问题的位(请参阅Wikipedia文章中的规范)并为OS X创建显示配置覆盖文件来完成。只需将其解压缩并将包含的文件夹移动到中即可/System/Library/Displays/Overrides
。重新启动后,监视器应显示已使用RGB颜色。对于具有相同问题的其他显示器,文件将不起作用,但是原则上解决方案是相同的。
大声笑你不必做所有的废话。按下“缩放”单选按钮时,只需按住“选项”键即可,所有选项都会出现。这是完全不直观的,但是如果您不愿意阅读按“显示”首选项窗格角的(?)图标时出现的“帮助”屏幕,则会告诉您。