POPPUR爱换

标题: 找个动画片测了下A卡和N卡播放视频时画面的区别 [打印本页]

作者: fish2fish    时间: 2008-8-2 14:55
标题: 找个动画片测了下A卡和N卡播放视频时画面的区别
1.我是Afan,从rage128开始用A卡,中间就用过2个月n卡。。。
2.文件是[SumiSora][Oinarisama][01][GB][x264_aac](0A8DC43F).mkv,想测同样文件的人可以去找一下,截图在21:51左右
3.本人不发表评论,只贴图,大家来评
4.测试的显卡是8800GS和HD4850,画面同一帧截图
5.88gs用的是177.79驱动,视频色彩设置成0-255,4850用的是8.7;全部都是默认设置,不开启显卡驱动中的任何动态对比度,色彩增强会对色彩产生影响的设置,截图均是MPC解码器硬解时的画面

HD4850:



8800GS:


[ 本帖最后由 fish2fish 于 2008-8-2 15:04 编辑 ]
作者: godlike    时间: 2008-8-2 14:58
{titter:] 这个不是rmvb啊,rmvb画质好啊
作者: fish2fish    时间: 2008-8-2 15:00
注意看画面内嵌的字幕表现,A卡和N卡天差地别,虽然用的是硬解,但是用软解也是一样的~
作者: tx97    时间: 2008-8-2 15:14
没看出任何差别……[funk> [funk> [funk>
作者: akcadia    时间: 2008-8-2 15:15
{lol:] {lol:] {lol:] 我怎么感觉N卡看起来更平滑的字幕?
作者: fish2fish    时间: 2008-8-2 15:16
放大10倍后的文字:
4850:
[attach]902567[/attach]

8800gs:
[attach]902568[/attach]

A卡的红色和白色的渲染明显和N卡不同
作者: goplayer361    时间: 2008-8-2 15:19
我倒是没去看这么仔细的 只是前个把月把88gs换成4850后进桌面时感觉眼前一亮[w00t> [ninja>
作者: 左岸    时间: 2008-8-2 15:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: fish2fish    时间: 2008-8-2 15:23
原帖由 左岸 于 2008-8-2 15:21 发表
ati是鲜艳点~~~ 锐利度高点      但是lz因该用拍的~~~~~~~~~~


拍照受环境影响太大了,再说截图就能够表现了,何必再要拍照
作者: Edison    时间: 2008-8-2 15:28
你用驱动设置为16-235的level来截取8800GS的图片看看。

AMD卡的视频默认就是16-235的,你用两个level不同的设置来对比,得出来的自然会时不一样的画面了。
作者: jackpeng33    时间: 2008-8-2 15:31
提示: 作者被禁止或删除 内容自动屏蔽
作者: ekang4887    时间: 2008-8-2 15:31
我给一个用了五年镭7200的朋友,换了片我淘汰下来的6600GT后,他说画面怎么差了那么多
不鲜明了

他只是普通用户,不知道哪个显卡的特点的,只是最直观的感受
作者: cgape    时间: 2008-8-2 15:33
应该拍照,截图我们显示器终端不一样体现不了
作者: cgape    时间: 2008-8-2 15:34
不过确实A卡视频和颜色都鲜艳很多。
以前用1650后来换了一块8600GTS桌面颜色画面马上暗淡下来,很明显的、
作者: 落花如梦    时间: 2008-8-2 15:38
原帖由 Edison 于 2008-8-2 15:28 发表
你用驱动设置为16-235的level来截取8800GS的图片看看。

AMD卡的视频默认就是16-235的,你用两个level不同的设置来对比,得出来的自然会时不一样的画面了。


首先是有很多人说开了0-225画质有明显提升的{wink:]
作者: katerren    时间: 2008-8-2 15:38
LS的,只要眼睛不钝,从A卡换到N卡必然有所感觉。

{lol:]
作者: Edison    时间: 2008-8-2 15:46
原帖由 水银 于 2008-8-2 15:38 发表
不是说A卡默认PC level,是0-255么,而N卡是TV level是 16-235么?
怎么都是16-235?
N卡用16-235画面只会更惨

你的说法是从何而来,这完全是与事实相反的说法。
作者: laoli06    时间: 2008-8-2 15:48
原帖由 cgape 于 2008-8-2 15:34 发表
不过确实A卡视频和颜色都鲜艳很多。
以前用1650后来换了一块8600GTS桌面颜色画面马上暗淡下来,很明显的、

没错,以前用ATI9600移动版1年多,后来换了机器显卡换成7300GT后,桌面感觉很薄很淡。
作者: Edison    时间: 2008-8-2 15:48
原帖由 落花如梦 于 2008-8-2 15:38 发表
首先是有很多人说开了0-225画质有明显提升的{wink:]


16-235作为视频有效level是来自于上个世纪视频工业的遗传,  而0/255本身在视频上是另有用途的。
作者: wqz333    时间: 2008-8-2 15:50
呵呵,我反而觉得N卡放的比较适合我{lol:]
作者: fish2fish    时间: 2008-8-2 15:52
16-235来了



然后是放大10倍的文字
[attach]902590[/attach]

[ 本帖最后由 fish2fish 于 2008-8-2 15:55 编辑 ]
作者: Edison    时间: 2008-8-2 15:59
为何这个16-235的截图比0-255更朦?
作者: fish2fish    时间: 2008-8-2 16:03
原帖由 Edison 于 2008-8-2 15:59 发表
为何这个16-235的截图比0-255更朦?


事实如此,n卡硬解用16-235就是蒙了一层白纱一样,0-255在大范围色彩上和a卡无异
作者: Edison    时间: 2008-8-2 16:07
那可能NVIDIA定义的level是指output level而不是input level,这就会出现这样的情况了,不过之前有说法是指HDMI/DVI的时候NVIDIA的视频输出是0-255而不是正确的16-235。
作者: davi787    时间: 2008-8-2 16:11
nv 卡就是傻快,(现在傻快也悬了)看电影,2d ,ati的优势很明显。

lz 你拿一些镜面反光(例如车身反光)高清视频看,nv 那叫一个蒙
作者: davi787    时间: 2008-8-2 16:14
原帖由 Edison 于 2008-8-2 16:07 发表
那可能NVIDIA定义的level是指output level而不是input level,这就会出现这样的情况了,不过之前有说法是指HDMI/DVI的时候NVIDIA的视频输出是0-255而不是正确的16-235。


每当说nv 2d的贴 这位xd必出来说 level {titter:]   

之前也信过一震,后来用2400 3850 和 96 86 一比,明白了“真理”。群众的眼睛是雪亮的。{lol:]
作者: pccell    时间: 2008-8-2 16:15
仔细观察人物的手臂和草地,好像A卡对细节的处理更好一些。或许这是两种风格吧。{shy:]
作者: akcadia    时间: 2008-8-2 16:16
原帖由 fish2fish 于 2008-8-2 15:16 发表
放大10倍后的文字:
4850:
902567

8800gs:
902568

A卡的红色和白色的渲染明显和N卡不同



我实在是看不出有什么大的区别
不过我女朋友说下面颜色比较重点
我问她比较喜欢哪个
她指下面那个{lol:] {lol:] {lol:]
作者: 3月7日    时间: 2008-8-2 16:19
{lol:] 女的都喜欢下面那个{victory:]
作者: ArseneKarl    时间: 2008-8-2 16:20
原帖由 akcadia 于 2008-8-2 16:16 发表



我实在是看不出有什么大的区别
不过我女朋友说下面颜色比较重点
我问她比较喜欢哪个
她指下面那个{lol:] {lol:] {lol:]


啊,很幸福,她果然是真心爱你 -_-
作者: Edison    时间: 2008-8-2 16:20
原帖由 davi787 于 2008-8-2 16:14 发表
每当说nv 2d的贴 这位xd必出来说 level {titter:]   
之前也信过一震,后来用2400 3850 和 96 86 一比,明白了“真理”。群众的眼睛是雪亮的。{lol:]


你的对比在哪里?给大家看看?

http://forums.nvidia.com/index.p ... 60&#entry393660
作者: cataclyson    时间: 2008-8-2 16:20
原帖由 fish2fish 于 2008-8-2 15:16 发表
放大10倍后的文字:
4850:
902567

8800gs:
902568

A卡的红色和白色的渲染明显和N卡不同


         即使放大了10倍还是没看出来啥区别,本人对这种2D效果向来都不敏感{shy:]
作者: gaot    时间: 2008-8-2 16:22
你们都是神仙,我看不出来区别{shocked:]
作者: xboxzx    时间: 2008-8-2 16:22
为什么我看不出区别啊。恕我眼拙
作者: fish2fish    时间: 2008-8-2 16:28
可以用电驴下~


  1. ed2k://|file|%5B%E6%88%91%E5%AE%B6%E6%9C%89%E4%B8%AA%E7%8B%90%E4%BB%99%E5%A4%A7%E4%BA%BA%5D.%5BSumiSora%5D%5BOinarisama%5D%5B01%5D%5BGB%5D%5Bx264_aac%5D%280A8DC43F%29.mkv|249379658|ed65da5da7735a56cec49c0f380895f9|h=TLJYIGZ5RERRPPQA2Y77DPBSKIZK5JFD|
复制代码

作者: droganmaster    时间: 2008-8-2 16:34
区别是有 但是这个没有优劣之分吧 只是颜色的问题
作者: droganmaster    时间: 2008-8-2 16:36
还有就是放大10倍的字体边缘:funk:  谁没事看动画的时候这么干啊
反正差的不明显嘛~
作者: lkpkp    时间: 2008-8-2 16:37
说实话 截图是看不出来,不过当年从GF3TI 换成9550后 我这近视和散光在看视频的时候都明显感觉不同-ATI的感觉好些

[ 本帖最后由 lkpkp 于 2008-8-2 16:38 编辑 ]
作者: 内个    时间: 2008-8-2 16:41
:wacko: 这个只出来的也就是位图数据,显卡也就是渲染,不影响截图数据的吧?
加了滤镜处理的除外

不过A的颜色更加绚丽倒是真的,是否属于失真就不发表意见了

应该拍照对比

[ 本帖最后由 内个 于 2008-8-2 16:45 编辑 ]
作者: Edison    时间: 2008-8-2 16:44
如果以 Threshold 设置为 0,14 vs 15, 有44%的像素存在区别,色彩区别为0.15%:

[attach]902605[/attach]

如果把 Threshold  设置为1,有16.93%的像素存在区别,色彩区别为0.12%。

如果用微软的PixWin作对比,14 vs 15 的 xor Tolerance 值为 99.7854139539932,可以说是非常非常接近的画面 。
作者: weiky    时间: 2008-8-2 16:49
望向自己硬盘里的BD秒速五厘米
作者: Edison    时间: 2008-8-2 16:51
差别不等于差距,只是说明图片存在差别,不代表好坏,而且从测试结果来看两者差别是非常小的。
作者: 内个    时间: 2008-8-2 16:52
c大用相机拍2幅来对比吧
作者: guohua1987    时间: 2008-8-2 16:58
晕 平时谁去注意这么点细节啊 除非是搞美术的
作者: 红发IXFXI    时间: 2008-8-2 16:59
{mellow:] a卡视频还是好一点啊。。。不用改参数。。方便
作者: clawhammer    时间: 2008-8-2 17:02
用haali的上图
作者: 左岸    时间: 2008-8-2 17:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: clawhammer    时间: 2008-8-2 17:04
原帖由 davi787 于 2008-8-2 16:14 发表


每当说nv 2d的贴 这位xd必出来说 level {titter:]   

之前也信过一震,后来用2400 3850 和 96 86 一比,明白了“真理”。群众的眼睛是雪亮的。{lol:]

呵呵,群众的眼睛雪亮?
那么请问炒股的亏损人的比例有多少
真理总是掌握在少数人手中
N是泛白,简单得调整就可以修正,是你们自己懒
作者: 左岸    时间: 2008-8-2 17:05
提示: 作者被禁止或删除 内容自动屏蔽
作者: sheena    时间: 2008-8-2 17:06
提示: 作者被禁止或删除 内容自动屏蔽
作者: 色.情.狂    时间: 2008-8-2 17:07
真的是神仙才能看出来差别……你们的眼睛都赶上色彩效验器了,还要红蜘蛛绿蜘蛛干嘛~~~~{shocked:]
作者: msmme    时间: 2008-8-2 17:07
A卡看视频一直以来就是舒服。。。。。{happy:]
作者: clawhammer    时间: 2008-8-2 17:10
原帖由 左岸 于 2008-8-2 17:05 发表



倒  怎么扯到股票上去了,这位兄弟应该是没炒过股,谁不知道股票不是掌握在散户手里的,散户那点分量算9牛一毛不过分~~~

我没说散户,我说全部
现在基金不也都亏了50%以上
作者: sheena    时间: 2008-8-2 17:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: china17    时间: 2008-8-2 17:25
放rmvb差距才大,其他基本很难看出
作者: ktv123    时间: 2008-8-2 17:31
A 显得饱满

N 显得苍白
作者: 红发IXFXI    时间: 2008-8-2 17:31
原帖由 china17 于 2008-8-2 18:25 发表
放rmvb差距才大,其他基本很难看出


:lol:能搞个截图吗。。。{ninja:]俺刚刚换了3650
作者: rukky    时间: 2008-8-2 17:36
原帖由 水银 于 2008-8-2 16:53 发表
还是人眼来区别吧,基于楼主提供的图裁剪大小,JPEG最高品质压缩
从左到右一次为 A卡默认、N卡0-255、N卡16-235


大家看A卡与N卡0-255间裙子的颜色差 ...

a卡字体锐利,锯齿多 ,n卡要平滑些。
作者: smty1111    时间: 2008-8-2 17:53
原帖由 clawhammer 于 2008-8-2 17:04 发表

呵呵,群众的眼睛雪亮?
那么请问炒股的亏损人的比例有多少
真理总是掌握在少数人手中
N是泛白,简单得调整就可以修正,是你们自己懒

不是大家懒,而是n的驱动懒。
作者: LYHeart    时间: 2008-8-2 18:05
显卡是ATI的,用来看LZ的NV卡的截图,和用NV卡看NV截图会有什么不同?
显卡是NV的,用来看LZ的ATI卡的截图,和用ATI卡看ATI截图会有什么不同?{lol:]
作者: zmw_831110    时间: 2008-8-2 18:07
楼上各位的想看出区别的,就把这3张图片都保存下来,也不要看文件名,放在同一个地方,用滚轮来切换图片看,找张你最喜欢的,然后再去看是什么显卡的
作者: zajara    时间: 2008-8-2 18:29
{titter:] 这么大的优点,为什么amd推广自己的卡的时候都不拿这个来说事,反而是饭a们乐此不疲,津津乐道

[ 本帖最后由 zajara 于 2008-8-2 18:56 编辑 ]
作者: clawhammer    时间: 2008-8-2 18:39
原帖由 smty1111 于 2008-8-2 17:53 发表

不是大家懒,而是n的驱动懒。

的确发过E-mail提过意见,可是没回复
不知道驱动部门的人怎么想的
作者: xreal    时间: 2008-8-2 19:22
:shifty: 主观性太强。
作者: iamzuojun    时间: 2008-8-2 19:35
大多数人的感受都是A卡放视频比N卡好,虽然此论坛管理员是N饭,不过也阻止不了群众的呼声啊。
作者: cagejin    时间: 2008-8-2 19:40
别的不说两张放大10倍的字体  明显n卡胜出。  
即使在原图不放大的基础上 也能看出a卡的字体有略微的锯齿
作者: shieldfeng    时间: 2008-8-2 21:16
经过cho指导设置的图的那个画质太差了,前两个还差别比较小,第3个就一眼能看出来了
作者: lptt3    时间: 2008-8-2 21:23
原帖由 水银 于 2008-8-2 16:53 发表
还是人眼来区别吧,基于楼主提供的图裁剪大小,JPEG最高品质压缩
从左到右一次为 A卡默认、N卡0-255、N卡16-235


大家看A卡与N卡0-255间裙子的颜色差 ...



我来教你看。我不fan a也不fan n,只是根据事实说话。

好了,你现在得坐远一点点,如果眼睛离得屏幕太近,反而不用以分辨。

1.先看人物的袖子。。。看出来区别没有?白色的部分,第一个画面最白,第二各画面有点偏米黄,3最差是肯定的了。

2.看袖子上灰色的阴影,是不是觉得第二个画面的灰色有点偏色,第三个最差。


3.看下方的"际“字,一的最白,二次之,三最差。。。
作者: daytohi    时间: 2008-8-2 21:27
N卡泛白,N年前就知道了
不过N卡跑游戏比较快
但是A卡性价比高
作者: gmid    时间: 2008-8-2 21:35
怎么像看心中的红!索尼新BRAVIA??{closedeyes:]
作者: lptt3    时间: 2008-8-2 21:36
纯白出现问题是最难校正的,你不能改亮度,如果改那么其他的颜色就全变味了。。。
作者: 懿梵    时间: 2008-8-2 21:46
不行,,,太专业,看不出区别在哪,,,,,,
用的全是A.......卡
作者: thinkforward    时间: 2008-8-2 21:49
经过89楼提醒
感觉差别是蛮大的
作者: clawhammer    时间: 2008-8-2 21:50
原帖由 lptt3 于 2008-8-2 21:23 发表



我来教你看。我不fan a也不fan n,只是根据事实说话。

好了,你现在得坐远一点点,如果眼睛离得屏幕太近,反而不用以分辨。

1.先看人物的袖子。。。看出来区别没有?白色的部分,第一个画面最白,第二各 ...

我怎么看都是第一张袖子颜色偏了
作者: julian110    时间: 2008-8-2 21:51
A卡字幕那么大的锯齿,看来某些人的眼睛自带抗锯齿了" src="./images/smilies/PCinlife2009/w00t.gif" border=0 smilieid="128">,当然A FAN也可以说那是字体的特效。。。
作者: 55555555    时间: 2008-8-2 22:10
在朋友家里用液晶看。

第一张色彩偏黄。
第二张色彩最好。
第三丈高光已经毁了。

明天晚上回去用校正色彩系统的CRT看看效果如何。
作者: lptt3    时间: 2008-8-2 22:25
原帖由 clawhammer 于 2008-8-2 21:50 发表

我怎么看都是第一张袖子颜色偏了



无所谓,反正这里大家一起看,看看到底是谁偏了,对比1跟3的差别和2跟3的差别就知道谁偏了。还有很多地方能看出来,如果你愿意调节一下你显示器的亮度的话。。。
作者: zanelu    时间: 2008-8-2 22:28
没看出来有什么区别{sweat:]
作者: bfg9000    时间: 2008-8-2 22:38
原帖由 水银 于 2008-8-2 16:53 发表
还是人眼来区别吧,基于楼主提供的图裁剪大小,JPEG最高品质压缩
从左到右一次为 A卡默认、N卡0-255、N卡16-235


大家看A卡与N卡0-255间裙子的颜色差 ...


第一张图下面的字边缘不平滑,但颜色最鲜艳

另外N卡的默认设置是0-255么?
作者: jht1977    时间: 2008-8-2 22:39
恕我眼拙 看了半天也看不出啥区别。有请高人指点一二
作者: jht1977    时间: 2008-8-2 22:46
看下来,还是第3张差点
作者: japhsoncross    时间: 2008-8-2 22:53
关于这个问题我来说一下,对于A卡来说,驱动中有bug,Overlay下,default size播放视频的时候,两个chroma channel采用point resize,导致楼主说的A卡下字幕的问题,因为红色占据大量的V信号,但是overlay在拖动到任意非default size的情况下,对chroma channel的resize又开始起作用,看到的画面又会比较好,但是overlay本身不论是luma,还是chroma channel的resize都非常锐,导致在小画面拉伸到比较大的size的时候会出现网格(grid)。关于这个问题我多次向ATI反映过,他们第一次踢皮球,第二次索性不理。
目前用VMR9比较多,VMR9下,ATI的驱动对chroma channel默认统统做point resize,所以楼主的问题不会随拖动size大小而解决。我在nVidia的8400GS和8500GT上发现nVidia的VMR9的Chroma channel拉伸做得非常完美,这也是楼主看到的效果比ATI效果要的原因。但是nVidia的问题在于使用169WHQL驱动的情况下,对SD和HD都使用limited range,即16-235,不能拉伸到Full Range。幸亏VMR9还有shader,网络上有16-235->0-255的shader,不过我认为这种做法太简单,我自己写了一个,仅作参考:
ampler s0 : register(s0);
float4 p0 : register(c0);
float4 p1 : register(c1);

#define width (p0[0])
#define height (p0[1])
#define counter (p0[2])
#define clock (p0[3])
#define one_over_width (p1[0])
#define one_over_height (p1[1])

#define PI acos(-1)

static float4x4 RGB2YCbCr601 =
{
        65.473689369329, 128.426245019123, 25.1000656115476, 0.0,
        -37.8187503388942, -74.1812496611058, 112.0, 0.0,
        112.0, -93.6890841905523, -18.3109158094477, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 YCbCr6012RGB =
{
        0.0045662100456621, 0.0, 0.0062592266238858, 0.0,
        0.0045662100456621, -0.00154502886195404, -0.0031910507046555, 0.0,
        0.0045662100456621, 0.00790524846658726, 0.0, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 RGB2YCbCr709 =
{
        46.5679422858608, 156.621940650139, 15.8101170640007, 0.0,
        -25.6686477724839, -86.3313522275161, 112.0, 0.0,
        112.0, -101.730835816484, -10.2691641835164, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 YCbCr7092RGB =
{
        0.0045662100456621, 0.0 , 0.00703000887614723, 0.0,
        0.0045662100456621, -0.000836223613994593, -0.00209021192212653, 0.0,
        0.0045662100456621, 0.00828399718427916, 0.0, 0.0,
        0.0, 0.0, 0.0, 0.0
};

float4 main(float2 tex : TEXCOORD0) : COLOR
{
        float4 c0 = tex2D(s0, tex);
        float4 yuvc0 = {0, 0, 0, 0};

        if (height < 720)
        {
                yuvc0 = mul(RGB2YCbCr601, c0) + float4(16, 128, 128, 0);
                yuvc0.r = (yuvc0.r-16) / 219 * 255;
                yuvc0.g = (yuvc0.g-16) / 224 * 255;
                yuvc0.b = (yuvc0.b-16) / 224 * 255;

                c0 = mul(YCbCr6012RGB , yuvc0-float4(16, 128, 128, 0));
        }
        else
        {
                yuvc0 = mul(RGB2YCbCr709, c0) + float4(16, 128, 128, 0);
                yuvc0.r = (yuvc0.r-16) / 219 * 255;
                yuvc0.g = (yuvc0.g-16) / 224 * 255;
                yuvc0.b = (yuvc0.b-16) / 224 * 255;

                c0 = mul(YCbCr7092RGB , yuvc0-float4(16, 128, 128, 0));
        }

        return c0;
}
如果有问题欢迎指正。这样n卡使用这个shader也可以达到full range,不过这里界定SD和HD的我是依靠Hight,也有看Width的,这个没有固定的说法。

待续。。。
作者: japhsoncross    时间: 2008-8-2 22:54
关于ATI的问题,我自己就用ATI的卡,2600Pro,被这个问题搞的头疼,不过自己写了一个work around的办法,在shader中加入两个,一个是UV Blur,然后在UV Sharpen,使用最简单的高斯Kernel:
UV Blur:
sampler s0 : register(s0);
float4 p0 : register(c0);
float4 p1 : register(c1);

#define width (p0[0])
#define height (p0[1])
#define counter (p0[2])
#define clock (p0[3])
#define one_over_width (p1[0])
#define one_over_height (p1[1])

#define PI acos(-1)

static float4x4 RGB2YUV709Matrix =
{
        0.21263900587151, 0.715168678767756, 0.0721923153607337, 0.0,
        -0.21263900587151, -0.715168678767756, 0.927807684639266, 0.0,
        0.78736099412849, -0.715168678767756, -0.0721923153607337, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 YUV7092RGBMatrix =
{
        1.0, -0.00000000000000005288, 1.0, 0.0,
        1.0, -0.100944458984308, -0.297327067284168, 0.0,
        1.0, 1.0, 0.0, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 RGB2YUV601Matrix =
{
        0.29896661812479, 0.586421210132983, 0.114612171742227, 0.0,
        -0.29896661812479, -0.586421210132983, 0.885387828257773, 0.0,
        0.70103338187521, -0.586421210132983, -0.114612171742227, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 YUV6012RGBMatrix =
{
        1.0, 0.0000000000000000198, 1.0, 0.0,
        1.0, -0.195443428310234, -0.509815492616635, 0.0,
        1.0, 1.0, 0.0, 0.0,
        0.0, 0.0, 0.0, 0.0
};

float4 main(float2 tex : TEXCOORD0) : COLOR
{
        float4 c0 = tex2D(s0, tex);
        float4 yuvc0 = {0, 0, 0, 0};

        if (height>=720)
        {
                yuvc0 = mul(RGB2YUV709Matrix, c0);
                yuvc0.g = (      ( mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, 1/height)))).g*2 + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, -1/height)))).g*2
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 0)))).g*2 + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 0)))).g*2
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).g + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).g
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).g + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).g
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, 0)))).g*4)/16.0;


                yuvc0.b = (      ( mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, 1/height)))).b*2 + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, -1/height)))).b*2
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 0)))).b*2 + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 0)))).b*2
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).b + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).b
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).b + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).b
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, 0)))).b*4)/16.0;

                c0 = mul(YUV7092RGBMatrix, yuvc0);
        }
        else
        {
                yuvc0 = mul(RGB2YUV601Matrix, c0);
                yuvc0.g = (      ( mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, 1/height)))).g*2 + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, -1/height)))).g*2
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 0)))).g*2 + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 0)))).g*2
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).g + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).g
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).g + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).g
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, 0)))).g*4)/16.0;


                yuvc0.b = (      ( mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, 1/height)))).b*2 + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, -1/height)))).b*2
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 0)))).b*2 + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 0)))).b*2
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).b + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).b
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).b + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).b
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, 0)))).b*4)/16.0;

                c0 = mul(YUV6012RGBMatrix, yuvc0);               
        }

        return c0;
}

UV Sharpen:
sampler s0 : register(s0);
float4 p0 : register(c0);
float4 p1 : register(c1);

#define width (p0[0])
#define height (p0[1])
#define counter (p0[2])
#define clock (p0[3])
#define one_over_width (p1[0])
#define one_over_height (p1[1])

#define PI acos(-1)

static float4x4 RGB2YUV709Matrix =
{
        0.21263900587151, 0.715168678767756, 0.0721923153607337, 0.0,
        -0.21263900587151, -0.715168678767756, 0.927807684639266, 0.0,
        0.78736099412849, -0.715168678767756, -0.0721923153607337, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 YUV7092RGBMatrix =
{
        1.0, -0.00000000000000005288, 1.0, 0.0,
        1.0, -0.100944458984308, -0.297327067284168, 0.0,
        1.0, 1.0, 0.0, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 RGB2YUV601Matrix =
{
        0.29896661812479, 0.586421210132983, 0.114612171742227, 0.0,
        -0.29896661812479, -0.586421210132983, 0.885387828257773, 0.0,
        0.70103338187521, -0.586421210132983, -0.114612171742227, 0.0,
        0.0, 0.0, 0.0, 0.0
};

static float4x4 YUV6012RGBMatrix =
{
        1.0, 0.0000000000000000198, 1.0, 0.0,
        1.0, -0.195443428310234, -0.509815492616635, 0.0,
        1.0, 1.0, 0.0, 0.0,
        0.0, 0.0, 0.0, 0.0
};

float4 main(float2 tex : TEXCOORD0) : COLOR
{
        float4 c0 = tex2D(s0, tex);
        float4 yuvc0 = {0, 0, 0, 0};

        if (height >= 720)
        {
                yuvc0 = mul(RGB2YUV709Matrix, c0);
                yuvc0.g = -(      (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, 1/height)))).g + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, -1/height)))).g
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 0)))).g + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 0)))).g
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).g + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).g
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).g + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).g)/8.0 + 2* (mul(RGB2YUV709Matrix, tex2D(s0, tex))).g;

                yuvc0.b = -(      (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, 1/height)))).b + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(0, -1/height)))).b
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 0)))).b + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 0)))).b
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).b + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).b
                                        +(mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).b + (mul(RGB2YUV709Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).b)/8.0 + 2* (mul(RGB2YUV709Matrix, tex2D(s0, tex))).b;
                c0 = mul(YUV7092RGBMatrix, yuvc0);

                return c0;
        }
        else
        {
                yuvc0 = mul(RGB2YUV601Matrix, c0);
                yuvc0.g = -(      (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, 1/height)))).g + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, -1/height)))).g
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 0)))).g + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 0)))).g
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).g + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).g
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).g + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).g)/8.0 + 2* (mul(RGB2YUV601Matrix, tex2D(s0, tex))).g;

                yuvc0.b = -(      (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, 1/height)))).b + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(0, -1/height)))).b
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 0)))).b + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 0)))).b
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, 1/height)))).b + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, -1/height)))).b
                                        +(mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(-1/width, 1/height)))).b + (mul(RGB2YUV601Matrix, tex2D(s0, tex+float2(1/width, -1/height)))).b)/8.0 + 2* (mul(RGB2YUV601Matrix, tex2D(s0, tex))).b;
                c0 = mul(YUV6012RGBMatrix, yuvc0);

                return c0;               
        }
}

用MPC的combine shader来达成,注意顺序就可以了,当然ATI最好在注册表中打开UseBT601CSC=1的功能,这样在SD和HD下默认拉伸到0-255,在这种情况下nVidia和ATI的画面差别微乎其微,在用SMPTE监测的时候有细微的差别,应该是Convert Matrix系数的细微差别了。

以上仅供大家参考。
作者: haiou123    时间: 2008-8-2 23:15
提示: 作者被禁止或删除 内容自动屏蔽
作者: wmfwmf    时间: 2008-8-2 23:15
我自己用丽台的7900GS和我的蓝宝X1600PRO 在一台机器上对比 7900GS画面差太多了 总得来说就是苍白
作者: haiou123    时间: 2008-8-2 23:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: haiou123    时间: 2008-8-2 23:18
提示: 作者被禁止或删除 内容自动屏蔽
作者: somarizhou    时间: 2008-8-2 23:35
我是群众,实在看不出前两副的区别,可能眼神较差{shocked:]
这个测试应该不说是哪个卡,就放2个图,看看有几个分的出来的
作者: zq318    时间: 2008-8-2 23:47
提示: 作者被禁止或删除 内容自动屏蔽
作者: eviano    时间: 2008-8-2 23:48
我觉得这没必要做比较吧,完全是个人感觉上的问题。很多时候不单单是显卡有异,显示器也有关系的。就好象用同样是N卡或A卡,用在AOC的屏幕上和用在SHARP的屏幕上会一样吗?我敢说同样的卡用再SHARP上,不单字体会清晰很多,颜色也会有分别。这是我个人的亲身体会。但我的一个做平面广告的朋友就认为还是G550用在钻石珑上面的颜色最真,其他的都靠边站。所谓我觉得画面还是自己喜欢就可以了,不要听人家左右为好..
作者: hwsy789    时间: 2008-8-2 23:50
原帖由 bfg9000 于 2008-8-2 22:38 发表


第一张图下面的字边缘不平滑,但颜色最鲜艳

另外N卡的默认设置是0-255么?

默认是第三张图的16-235:rolleyes:
作者: julian110    时间: 2008-8-3 00:07
原帖由 zq318 于 2008-8-2 23:47 发表
96楼,你别跟我们说看个动画也要抗锯齿吧?A卡字幕为什么显得锯齿多?那是因为A卡显示效果细腻,该表现的都表现,N卡字幕是没锯齿,因为模糊了,少渲染了很多像素。
一直以来N卡都是以少渲染像素来加快速度的,所以 ...

恩,有锯齿是渲染细腻是该表现的,色彩偏黄那是艳丽,很好很强大。

[ 本帖最后由 julian110 于 2008-8-3 00:09 编辑 ]
作者: thinkforward    时间: 2008-8-3 00:10
原帖由 huge_nebula 于 2008-8-2 23:33 发表
下载下来对比没有任何区别

这个平面截图不可能有任何区别,即使你调过画面设置

因为截图和显卡无关,只是一种位图记录

很好很强大
你知道自己在说什么吗?[titter>[titter>
作者: iceqlf    时间: 2008-8-3 00:16
感觉画面没有任何差别,字幕的话,A卡稍微锐利一点,但是不明显
作者: 7sumetai    时间: 2008-8-3 01:00
……LZ居然是用本组的MKV在测试……
作者: godlike    时间: 2008-8-3 01:02
{titter:] a卡难道没发朦么?,我怎么觉得n卡更透亮啊

难道a卡的天空可以模拟crysis的very high效果:sweatingbullets:

上个P卡vmr9 2d看看哪个更接近{titter:]
作者: scjkill    时间: 2008-8-3 01:06
大家都是写轮眼。。。。看个动画片还要放大十倍的字幕。。。
作者: 正宗兔巴哥    时间: 2008-8-3 02:06
画面有区别,其中第2个,n卡效果最好。

ati本来就是个挺不要脸的公司。不过比起以下几位粉丝。。呵呵 呵呵

ktv123
"A 显得饱满 N 显得苍白"

lptt3
我来教你看。我不fan a也不fan n,只是根据事实说话。
好了,你现在得坐远一点点,如果眼睛离得屏幕太近,反而不用以分辨。
1.先看人物的袖子。。。看出来区别没有?白色的部分,第一个画面最白,第二各画面有点偏米黄,3最差是肯定的了。
2.看袖子上灰色的阴影,是不是觉得第二个画面的灰色有点偏色,第三个最差。
3.看下方的"际“字,一的最白,二次之,三最差。。。

Gartour
"1、2之间对比,A卡白色更白,裙子更红。不过差别很小"


自己把图片拖到photoshop里,用取色笔看看画面。1,2张袖子上最白的地方都是240,240,240左右。裙子上最红的地方都是140, 72,75左右。

[ 本帖最后由 正宗兔巴哥 于 2008-8-3 02:09 编辑 ]
作者: mayalan    时间: 2008-8-3 06:09
老家伙 钻石珑显像管儿 Qudro 3450 SDI 输出 没看出什么区别 液晶除了艺卓 其他我看还是不要提颜色了 呵呵 再有 经过压缩的东西就不要拿出来玩儿了 颜色都已经偏了 比个鸟啊

[ 本帖最后由 mayalan 于 2008-8-3 06:14 编辑 ]
作者: iwannasay    时间: 2008-8-3 06:21
n卡0-255和a卡差不多的




欢迎光临 POPPUR爱换 (https://we.poppur.com/) Powered by Discuz! X3.4