W3C home > Mailing lists > Public > www-style@w3.org > March 2016

Re: [css-color] wider/deeper colors

From: Rik Cabanier <cabanier@gmail.com>
Date: Fri, 25 Mar 2016 09:26:32 -0700
Message-ID: <CAGN7qDChed5jt=TgM9syAgGvETCcveUd_Rqc7Aq=DXVeUFdVrA@mail.gmail.com>
To: Simon Fraser <smfr@me.com>
Cc: Florian Rivoal <florian@rivoal.net>, aaron.www-style-@infinite-source.de, www-style list <www-style@w3.org>
On Tue, Mar 22, 2016 at 10:52 PM, Rik Cabanier <cabanier@gmail.com> wrote:

>
>
> On Tue, Mar 22, 2016 at 10:19 PM, Simon Fraser <smfr@me.com> wrote:
>
>> On Mar 22, 2016, at 6:54 pm, Rik Cabanier <cabanier@gmail.com> wrote:
>>
>> On Tue, Mar 22, 2016 at 5:49 PM, Simon Fraser <smfr@me.com> wrote:
>>
>>>
>>>
>>> The 4k/5k iMac and the new iPad Pro composite in unclipped sRGB, and map
>>> to the display colorspace (DCI-P3) at the end. We (WebKit) have no control
>>> over the colorspace used for compositing, so we don’t have knobs to tune
>>> here.
>>
>>
>> Why can't you use colorsync?
>>
>> https://developer.apple.com/library/ios/technotes/tn2313/_index.html#//apple_ref/doc/uid/DTS40014694-CH1-FRAMEWORKS_FOR_COLOR_MATCHING_WHEN_RENDERING_TO_THE_DISPLAY
>> <https://developer.apple.com/library/ios/technotes/tn2313/_index.html#//apple_ref/doc/uid/DTS40014694-CH1-FRAMEWORKS_FOR_COLOR_MATCHING_WHEN_RENDERING_TO_THE_DISPLAY>
>>
>>
>> ColorSync is about doing color matching, not composting. To be clear,
>> when I say “compositing” here I mean what happens when you paint non-opaque
>> images and colors on top of each other, and when the GPU composites
>> non-opaque textures.
>>
>
> Are you sure?
> The documentation on your website seems to point out that colorsync is
> used to map from input to destination during compositing.
>
>
> https://developer.apple.com/library/ios/technotes/tn2313/_index.html#//apple_ref/doc/uid/DTS40014694-CH1-FRAMEWORKS_FOR_COLOR_MATCHING_WHEN_RENDERING_TO_THE_DISPLAY
> <https://developer.apple.com/library/ios/technotes/tn2313/_index.html#//apple_ref/doc/uid/DTS40014694-CH1-FRAMEWORKS_FOR_COLOR_MATCHING_WHEN_RENDERING_TO_THE_DISPLAY>
> This link shows how you tag the input
>
> In the following link:
>
> https://developer.apple.com/library/ios/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_context/dq_context.html#//apple_ref/doc/uid/TP30001066-CH203-SW9
> under "Listing 2-5  Creating a bitmap graphics context", it shows how to
> create a context with a profile. If you follow the links on the page, it
> describes how you can attach name color spaces (such as sRGB and p3).
>>
>> Also, if you composite in unclipped sRGB, how are you honoring images
>> with a high gamut profile such as p3 or AdobeRGB?
>>
>>
>> Because it’s unclipped? Compositing happens in 10-bit or half-float
>> textures which may contain < 0 or > 1 values. A P3 image is mapped into
>> this unclipped sRGB space for compositing, then the final result is mapped
>> into Display-P3 at the end.
>>
>
> That's a bit odd :-)
> Does this mean there's no gamut mapping from the image profile to the p3
> profile? it seems you can't do that because the intermediate space is
> unbounded...
>

I talked to one of our color experts about this.
He claims that this is a viable workflow as long as you are careful about
the intermediate space.

However, as I suspected, because the intermediate is unbounded, you can no
longer map the gamut.
Instead, colors will be clipped which will result in ugly results if the
input gamut is larger than the output one.
Received on Friday, 25 March 2016 16:27:01 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:09:01 UTC