RE: GTK progressbar call on XRenderComposite

2010-05-29 Thread Huang, FrankR
Thanks.
Is there any difference in RGB24 and ARGB32 to display them on the screen 
without mask(mask=0)? The same? I gave a test, seems that for ARGB32 picture, I 
change the alpha value of it, no difference.

If CA is used for text rendering, I don't care that.




-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月28日 22:18
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-28 at 15:34 +0800, Huang, FrankR wrote:
 I know if the source pict format is RGB24, the mask will do multiply
 each color. For example Red*alpha, Green*alpha, Blue*alpha. 
 If the source pict format is ARGB32, how the calculate comes on?

The same - the alpha channel and each colour channel are all multiplied
by the mask value.  (Remembering of course that 255 == 1.0, so the
values always go down or stay the same.)

In fact this is also what should happen in the RGB24 case, since in the
XRender pipeline, RGB24 is treated the same as ARGB32, with the alpha
channel implied to be 255.

 And what's the difference between Composite and CompositeCA?

CA stands for Component Alpha.  It's used for subpixel antialiasing,
which you might have heard described as ClearType.

You should probably not try to accelerate Component Alpha directly until
you deeply understand the formulae involved.  EXA can convert common use
cases of Component Alpha into pairs of simpler operations.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

RE: GTK progressbar call on XRenderComposite

2010-05-29 Thread Huang, FrankR
You know I want to know the use of alpha value for ARGB32 format picture? For 
example,
RGB: 255,0,0
ARGB: 100,255,0,0

What's the use of 100?

-Original Message-
From: xorg-devel-bounces+frankr.huang=amd@lists.x.org 
[mailto:xorg-devel-bounces+frankr.huang=amd@lists.x.org] On Behalf Of 
Huang, FrankR
Sent: 2010年5月29日 16:10
To: Jonathan Morton
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

Thanks.
Is there any difference in RGB24 and ARGB32 to display them on the screen 
without mask(mask=0)? The same? I gave a test, seems that for ARGB32 picture, I 
change the alpha value of it, no difference.

If CA is used for text rendering, I don't care that.




-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月28日 22:18
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-28 at 15:34 +0800, Huang, FrankR wrote:
 I know if the source pict format is RGB24, the mask will do multiply
 each color. For example Red*alpha, Green*alpha, Blue*alpha. 
 If the source pict format is ARGB32, how the calculate comes on?

The same - the alpha channel and each colour channel are all multiplied
by the mask value.  (Remembering of course that 255 == 1.0, so the
values always go down or stay the same.)

In fact this is also what should happen in the RGB24 case, since in the
XRender pipeline, RGB24 is treated the same as ARGB32, with the alpha
channel implied to be 255.

 And what's the difference between Composite and CompositeCA?

CA stands for Component Alpha.  It's used for subpixel antialiasing,
which you might have heard described as ClearType.

You should probably not try to accelerate Component Alpha directly until
you deeply understand the formulae involved.  EXA can convert common use
cases of Component Alpha into pairs of simpler operations.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

RE: GTK progressbar call on XRenderComposite

2010-05-29 Thread Huang, FrankR
When the operation is Over, the alpha value of ARGB pict will be used as the 
alpha select. But there is a problem in our driver, when the mask is not 
zero(for example PICT_a8), the alpha value of mask also should be used. That is 
to say, two alpha values should be used at the same time.
Right now, Our driver use the mask alpha value, does nothing with alpha value 
of ARGB pict. That is absolutely wrong to do so when I compared with the result 
under X1200 driver(It will use two alpha values). Should I do raster operation 
two times for each alpha use to correct this bug?

Thanks,
Frank 

-Original Message-
From: xorg-devel-bounces+frankr.huang=amd@lists.x.org 
[mailto:xorg-devel-bounces+frankr.huang=amd@lists.x.org] On Behalf Of 
Huang, FrankR
Sent: 2010年5月29日 16:17
To: Jonathan Morton
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

You know I want to know the use of alpha value for ARGB32 format picture? For 
example,
RGB: 255,0,0
ARGB: 100,255,0,0

What's the use of 100?

-Original Message-
From: xorg-devel-bounces+frankr.huang=amd@lists.x.org 
[mailto:xorg-devel-bounces+frankr.huang=amd@lists.x.org] On Behalf Of 
Huang, FrankR
Sent: 2010年5月29日 16:10
To: Jonathan Morton
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

Thanks.
Is there any difference in RGB24 and ARGB32 to display them on the screen 
without mask(mask=0)? The same? I gave a test, seems that for ARGB32 picture, I 
change the alpha value of it, no difference.

If CA is used for text rendering, I don't care that.




-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月28日 22:18
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-28 at 15:34 +0800, Huang, FrankR wrote:
 I know if the source pict format is RGB24, the mask will do multiply
 each color. For example Red*alpha, Green*alpha, Blue*alpha. 
 If the source pict format is ARGB32, how the calculate comes on?

The same - the alpha channel and each colour channel are all multiplied
by the mask value.  (Remembering of course that 255 == 1.0, so the
values always go down or stay the same.)

In fact this is also what should happen in the RGB24 case, since in the
XRender pipeline, RGB24 is treated the same as ARGB32, with the alpha
channel implied to be 255.

 And what's the difference between Composite and CompositeCA?

CA stands for Component Alpha.  It's used for subpixel antialiasing,
which you might have heard described as ClearType.

You should probably not try to accelerate Component Alpha directly until
you deeply understand the formulae involved.  EXA can convert common use
cases of Component Alpha into pairs of simpler operations.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

RE: GTK progressbar call on XRenderComposite

2010-05-28 Thread Huang, FrankR
I found the cause of the rendering bug in geode driver.
When the source pict format is ARGB32 and the mask pict format is A8(our driver 
can only support PICT_a8 and PICT_a4), the result is wrong.
Now I want to ask a question here:
I know if the source pict format is RGB24, the mask will do multiply 
each color. For example Red*alpha, Green*alpha, Blue*alpha. 
If the source pict format is ARGB32, how the calculate comes on?

And what's the difference between Composite and CompositeCA?



Thanks,
Frank

-Original Message-
From: Huang, FrankR 
Sent: 2010年5月21日 15:52
To: 'Jonathan Morton'
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

Ok. The test is huge for the format. The whole format number(nformats) is 16, 
that includes a8r8g8b8,x8r8g8b8,a8,r5g6b5...x2b10g10r10. I think your suggest's 
format is used often. So I will point these format to tests. And maybe use one 
color. And test blend,composite,cacompoiste with Src(Dst,Over,Clear)...
I'll go on:)


Thanks,
Frank

-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月21日 14:59
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-21 at 14:28 +0800, Huang, FrankR wrote:
 I decided to use rendercheck application to correct the rendering
 error in Geode drivers.  With this miscellaneous app, I will test
 every operation, every pict format. 
 Use -o and -t option to minimize what I want.
 Do you know the -f option use?

I would test a8r8g8b8 first, then add x8r8g8b8, a8 and r5g6b5 to the
list.  Probably once you fix the logic for those, the rest should follow
naturally.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

RE: GTK progressbar call on XRenderComposite

2010-05-28 Thread Jonathan Morton
On Fri, 2010-05-28 at 15:34 +0800, Huang, FrankR wrote:
 I know if the source pict format is RGB24, the mask will do multiply
 each color. For example Red*alpha, Green*alpha, Blue*alpha. 
 If the source pict format is ARGB32, how the calculate comes on?

The same - the alpha channel and each colour channel are all multiplied
by the mask value.  (Remembering of course that 255 == 1.0, so the
values always go down or stay the same.)

In fact this is also what should happen in the RGB24 case, since in the
XRender pipeline, RGB24 is treated the same as ARGB32, with the alpha
channel implied to be 255.

 And what's the difference between Composite and CompositeCA?

CA stands for Component Alpha.  It's used for subpixel antialiasing,
which you might have heard described as ClearType.

You should probably not try to accelerate Component Alpha directly until
you deeply understand the formulae involved.  EXA can convert common use
cases of Component Alpha into pairs of simpler operations.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com


___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


RE: GTK progressbar call on XRenderComposite

2010-05-21 Thread Huang, FrankR
Ok. The test is huge for the format. The whole format number(nformats) is 16, 
that includes a8r8g8b8,x8r8g8b8,a8,r5g6b5...x2b10g10r10. I think your suggest's 
format is used often. So I will point these format to tests. And maybe use one 
color. And test blend,composite,cacompoiste with Src(Dst,Over,Clear)...
I'll go on:)


Thanks,
Frank

-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月21日 14:59
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-21 at 14:28 +0800, Huang, FrankR wrote:
 I decided to use rendercheck application to correct the rendering
 error in Geode drivers.  With this miscellaneous app, I will test
 every operation, every pict format. 
 Use -o and -t option to minimize what I want.
 Do you know the -f option use?

I would test a8r8g8b8 first, then add x8r8g8b8, a8 and r5g6b5 to the
list.  Probably once you fix the logic for those, the rest should follow
naturally.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

RE: GTK progressbar call on XRenderComposite

2010-05-21 Thread Jonathan Morton
On Fri, 2010-05-21 at 15:51 +0800, Huang, FrankR wrote:
 Ok. The test is huge for the format. The whole format number(nformats)
 is 16, that includes a8r8g8b8,x8r8g8b8,a8,r5g6b5...x2b10g10r10. I
 think your suggest's format is used often. So I will point these
 format to tests. And maybe use one color. And test
 blend,composite,cacompoiste with Src(Dst,Over,Clear)...
 I'll go on:)

I would leave out cacomposite and test repeat instead.

Indeed, test only one thing from each category at first, get those
right, and then expand.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com


___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


RE: GTK progressbar call on XRenderComposite

2010-05-21 Thread Huang, FrankR
Ok. composite blend first.
Then expand to others.
Seem huge, but I think I can handle it :)
Hard begin, easy to follow.
But I don't know if the rendercheck can cover the most test cases.

Thanks,
Frank

-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月21日 16:17
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-21 at 15:51 +0800, Huang, FrankR wrote:
 Ok. The test is huge for the format. The whole format number(nformats)
 is 16, that includes a8r8g8b8,x8r8g8b8,a8,r5g6b5...x2b10g10r10. I
 think your suggest's format is used often. So I will point these
 format to tests. And maybe use one color. And test
 blend,composite,cacompoiste with Src(Dst,Over,Clear)...
 I'll go on:)

I would leave out cacomposite and test repeat instead.

Indeed, test only one thing from each category at first, get those
right, and then expand.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

RE: GTK progressbar call on XRenderComposite

2010-05-21 Thread Huang, FrankR
And after that, I think I can give patch to rendercheck:)

-Original Message-
From: Jonathan Morton [mailto:jonathan.mor...@movial.com] 
Sent: 2010年5月21日 16:17
To: Huang, FrankR
Cc: xorg-devel@lists.x.org; gtk-l...@gnome.org
Subject: RE: GTK progressbar call on XRenderComposite

On Fri, 2010-05-21 at 15:51 +0800, Huang, FrankR wrote:
 Ok. The test is huge for the format. The whole format number(nformats)
 is 16, that includes a8r8g8b8,x8r8g8b8,a8,r5g6b5...x2b10g10r10. I
 think your suggest's format is used often. So I will point these
 format to tests. And maybe use one color. And test
 blend,composite,cacompoiste with Src(Dst,Over,Clear)...
 I'll go on:)

I would leave out cacomposite and test repeat instead.

Indeed, test only one thing from each category at first, get those
right, and then expand.

-- 
--
From: Jonathan Morton
  jonathan.mor...@movial.com




___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel