补充一下alvinli大大的内容
(1)
电脑萤幕因为成本的关系, 不会像电视分多颗IC, 电脑萤幕主控同常只有
一颗"Scaler IC", 这颗IC的大致有的电路
(a)处理DP/HDMI高速接口输入
(b)处理G-SYNC/FreeSync不规则timing control讯号,
同时也解决影像的放大/缩小的需求
(c)影像处理电路(ex:调整亮度/颜色/对比/SRGB/Gamma...等)<重点1>
这里面包括处理HDR content的电路
(2)虽然FreeSync Premium Pro在网站上写着同时支援FreeSync和HDR
参考AMD网站, https://tinyurl.com/rvjduu8
但这两个功能在实做上是互相些牴触的, 引用alvinli大大之前提到的内容
"HDR这个技术本身重点....所以可以是多个frame合成...."
HDR可以是多个frame合成,简单来说需要把某一张frame存入Scaler内的DRAM,
下一张frame来的时候,再把存在DRAM中的frame拿出来一起做运算<重点2>
下面用一个很简化的例子做比喻
FreeSync假设运作在144Hz, 也就是1秒内我们预期要有144个frame输出,
这144个frame中, 假设第1个frame和第2个frame需要用刚提到<重点2>的方法
运算HDR, 就算Scaler IC能及时产生其余142个frame, 这样1秒内也只有143个
frame, 因为第1个但第2个frame必须一起运算才能产生一个新的frame
也就是FreeSync并不是运作在144Hz,而是143Hz
从这个非常简化的例子就知道, FreeSync和HDR在实做上矛盾的地方,
业界常用的省成本偷吃步方法
<做法1>降低G_SYNC/FreeSync的频率可变范围,虽然还是可以超过60Hz
<做法2>使用<重点1>提到, 其他可以调整亮度/颜色/对比的电路来假装成HDR
对于便宜的萤幕, 通常只会用<做法2>不会用<做法1>, 因为符合<做法1>的萤幕
可以卖比较贵的价格,
其实从巴哈姆特的一些讨论文章
https://tinyurl.com/wph4oea 就可以看出业界使用偷吃步的端倪
XV272UP搭配螃蟹的Scaler IC https://i.imgur.com/GiUpEar.jpg
刚出货时FreeSync和HDR不能同时开启 ->
送修后更新韧体,变成号称可以同时开启FreeSync & HDR ->
有些网友反应更新韧体之后, 虽然看到osd显示开启FreeSync & HDR,
但画面出现撕裂, 或HDR显示的影像很怪/Youtubte HDR不能选
从这些症状来看, 是不是使用类似<做法2>, 让使用者以为同时开启了
FreeSync & HDR, 但其实靠其他电路做出的效果, 就留给大家自行判断了
※ 引述《alvinli (alvin)》之铭言:
: 一个做过GPU, 待过萤幕厂, 也待过微软windows team的人路过说明一下...
: 刚你按下Windows HDR模式的时候,
: 基本上Windows是告诉显示卡要从标准RGB buffer切换成HDR用的video buffer,
: 显示卡如果从萤幕EDID上读到他有支援这个功能的话就会开始:
: 1.准备新的video/frame buffer
: 2.跟萤幕的HDR芯片沟通
: 3.跟萤幕HDR芯片沟通完后如果成功就跟windows报是否成功
: 3a.失败的话当然就跟user说失败了
: 4.成功后windows准备buffer的时候就会带着HDR需要的参数给显示卡(还有DRM资讯)
: 5.显示卡就会把这个格式丢给萤幕
: HDR这个技术本身重点在于色阶压缩,
: 将画面过曝跟过暗的色阶曲线压成大致是平均分配的状态,
: 所以可以是多个frame合成, 也可以是单frame用不同frequency产生,
: 看HDR芯片怎么处理还有参数怎么带这样.
: G-sync or whatever sync就不是了, 那是游戏,显卡,萤幕之间的事情.
: 显卡从萤幕EDID上得知它支援G-sync, 显卡自己也打开G-sync支援的话,
: 显卡就会报给应用程式说你可以开G-sync,
: 然后游戏call的API就不会经过Windows了, 命令会直接到显卡去,
: (也不是完全不经过啦, 但总之OS不太会介入graphics API)
: 由显卡负责跟萤幕沟通whatever sync要怎么做,
: 显卡就会跟萤幕协调出一个可行的frame输出率.
: 当G-sync跟HDR都开的时候呢?
: 萤幕就要同时跟显卡报HDR跟G-Sync的状况,
: 前面说到HDR是关于色阶压缩,
: 所以基本上显卡送过来的每个frame都会经过HDR芯片处理,
: 做得好一点的, 会同时考虑前后frame一致性, 差一点的大概就每张各自算各自的.
: G-sync就不是HDR这颗芯片处理了,
: 萤幕需要视HDR处理的状况反映在丢回去给显示卡的参数中,
: 简单的说就是个比较复杂的流程,
: 当分辨率很高更新率很高的时候状况更是艰难,
: 因为高分辨率时每个frame处理的时间会拉长, 但你设定的高更新率又让它不能太长.
: 显卡的话, 它需要处理HDR protected content, 需要计算自己frame输出率,
: 需要配合萤幕的能力调整输出率, 大概是这样,
: 基本上就是萤幕跟它说什么它就配合处理.
: 但PlayReady (HDR protected content, DRM处理)这边就有个变量了,
: 这个基本上是Windows会决定什么时候需要reauthenticate,
: 这个authenticate的时间我记得规格上好像是7ms内要完成(不确定, 要翻spec看看)
: 而这个authentication大概固定每几秒就可能需要做一次.
: 但Windows不会去管GPU有多忙, 那是GPU需要去处理的.
: 所以如果某段时间内GPU太忙, PlayReady authenticate等了比较长的时间,
: 或是线材不好导致PlayReady authenticate延迟不稳定或太长的话,
: GPU这边只能根据实际状况调整, 万一某一次authenticate超过7ms,
: 那可能就会有几个ms的时间是没有内容输出的(因为authenticate失败了),
: 需要靠萤幕上的HDR芯片去补, 或是显示卡的其他技术去补.
: 或者说, PlayReady authenticate的时间也影响了输出率,
: 例如如果每次authenticate的时候都等了6ms,
: (无论原因是是线材不好还是GPU过载还是什么其他原因)
: 那你当时的画面输出率就会被锁在166张每秒,
: 但GPU仍然还需要花一点时间去画图,
: 而的萤幕可能最高能7ms收一次(144Hz的情况),
: 在没有G-sync认证的萤幕上, 此时你的画面就很高机率会破掉.
: (HDR处理需要时间, 萤幕不可能真的7ms收一次, 一定是更短的时间要收到)
: 这样不知道你会觉得是谁的问题?
: 我是觉得萤幕是凶手的机率比较大啦...
: ※ 引述《westwade (秋思化刃)》之铭言:
: : 月初入手XV272U P
: : 搭配显卡技嘉 Windforce 2070S O8G
: : 想说终于可以HDR+Gsync来享受一下
: : 然后过程中各种问题
: : 简单说HDR+Gsync下
: : 开启HDR模式会有机会失败 要一直重开
: : 这问题经过各种爬文收集后
: : 似乎是win10的问题
: : 然后前几天更新最新的驱动后
: : 玩mhwi时发现居然各种破图成一片亮光
: : 不停测试后发现重启HDR后就解决了
: : 讲这么多只是好奇
: : HDR会有这些问题 是
: : 1.微软做不好
: : 2.NV驱动做不好
: : 3.HDR技术不成熟
: : 到底是谁的锅XDD
: :