Bug 33741 - Need to change pixman transparency level from 256 to 128 in a8r8g8b8
Summary: Need to change pixman transparency level from 256 to 128 in a8r8g8b8
Status: RESOLVED INVALID
Alias: None
Product: pixman
Classification: Unclassified
Component: pixman (show other bugs)
Version: 0.18.x
Hardware: All All
: medium normal
Assignee: Søren Sandmann Pedersen
QA Contact: Søren Sandmann Pedersen
URL:
Whiteboard:
Keywords:
: 35732 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-01-30 22:48 UTC by ssseintr
Modified: 2011-03-28 06:20 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description ssseintr 2011-01-30 22:48:58 UTC
Dear Pixman Team,

Thanks for the excellent pixel manipulation library. My self Vicky and developing embedded applications for consumer electronics. 

While using pixman library i'm facing some issue. 

Actual problem is my target hardware platform supports only 128 levels of transparency. 

So while rendering the pixman manipulated image buffers(256 levels of transparency) into actual system causes composition issues.

Problem Scenario
-----------------
1. Create one pixman image
2. Manipulate the image buffer via pixman API calls
3. Manipulate the image buffer via native graphics api calls which supports only 128 levels of transparency.

4. Render the image.

This causes the blending(composition) issues.

Please show some way to restrict the pixman's transparency level from 256 to 128 so i can draw using both pixman & native.

Thanks in advance.

Regards,
Vicky.
Comment 1 Søren Sandmann Pedersen 2011-01-31 14:00:01 UTC
Are you looking for a new format such as x1a7r8g8b8? 

If there really is hardware that does this, then adding such a format to pixman would be useful, but why doesn't that hardware simply discard the *lowest* bit of alpha instead of the highest?

It is fairly easy to add support for a new format in pixman - the main piece of code you will have to change is pixman-access.c, where new functions to convert scanlines and pixels from x1a7r8g8b8 to a8r8g8b8 would be added, along with a function to store an a8r8g8b8 scanline in an x1a7r8g8b8 buffer.
Comment 2 Søren Sandmann Pedersen 2011-02-22 04:37:02 UTC
Any news?
Comment 3 Søren Sandmann Pedersen 2011-03-12 12:10:33 UTC
Feel free to reopen if you add additional information.
Comment 4 ssseintr 2011-03-21 06:21:56 UTC
hi,

actually i'm using cairo on top of pixman(only pixman surface is supported) as my graphics engine. I want to accelerate on top of my hardware. 

Which one is better, either doing it on pixman or doing it on cairo..?

Please guide me to do so.
Comment 5 Søren Sandmann Pedersen 2011-03-22 08:00:39 UTC
This is a bug tracker for the pixman project, not a way to get general support for pixman. For a bugzilla entry to be useful, it needs to contain very specific information about what the issue is with pixman. If you think there is a bug in pixman, then that makes sense as a bugzilla entry. If you think pixman should support a specific new format, then we will be happy to talk about that and/or review patches

However, general questions about how to port cairo or pixman to some piece of hardware are better asked on either the cairo or pixman mailing lists. Feel free to do that, although note that for anyone to be able to help you, they will need basic information about what kind of hardware it is, and what kind of graphics driver you are using or want to use.

Your original problem:

> Please show some way to restrict the pixman's transparency level from
> 256 to 128 so i can draw using both pixman & native.

might be solved by adding a new x1a7r8g8b8 format. You will need to write the patches yourself to add this format, though.
Comment 6 ssseintr 2011-03-23 00:18:55 UTC
hi,

actually i'm using cairo on top of pixman(only pixman surface is supported) as
my graphics engine. I want to accelerate on top of my hardware. 

Which one is better, either doing it on pixman or doing it on cairo..?

Currently I'm using s/w only surface by disabling all other surfaces.

Please guide me to accelerate on top of h/w so i can get the jet fast graphics
engine.

Regards,
Vicky
Comment 7 Søren Sandmann Pedersen 2011-03-28 05:54:03 UTC
*** Bug 35732 has been marked as a duplicate of this bug. ***
Comment 8 Søren Sandmann Pedersen 2011-03-28 06:20:58 UTC
There is no bug here.

> general questions about how to port cairo or pixman to some piece of
> hardware are better asked on either the cairo or pixman mailing lists. Feel
> free to do that, although note that for anyone to be able to help you, they
> will need basic information about what kind of hardware it is, and what kind of
> graphics driver you are using or want to use.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.