Hello blink-dev! This is the first feature from HDR canvas work that is
ready to ship. It has been split off and reduced in scope from this wider
feature <https://chromestatus.com/feature/5703719636172800>.
Contact [email protected]

ExplainerNone

Specificationhttps://www.w3.org/TR/webgpu/#gpucanvastonemappingmode

Design docs
https://github.com/ccameron-chromium/webgpu-hdr/blob/main/EXPLAINER.md

Summary

Adds tone mapping parameters to the WebGPU canvas configuration, and adds
options of "standard" (the current behavior of restricting content to the
SDR range of the display) as the default, and "extended" (not imposing this
restriction) as a new behavior. This allows WebGPU content to use the full
range of a display.


Blink componentBlink>WebGPU
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU>

Search tagsWebGPU <https://chromestatus.com/features#tags:WebGPU>, HDR
<https://chromestatus.com/features#tags:HDR>, Canvas
<https://chromestatus.com/features#tags:Canvas>

TAG reviewNone

TAG review statusNot applicable

Risks


Interoperability and Compatibility

None. This feature has been developed with and reviewed by representatives
of Mozilla and WebKit, and maps to mature APIs present on all platforms
(except ChromeOS, where support is coming soon).


*Gecko*: Positive (https://github.com/gpuweb/gpuweb/pull/4500) Approval
does not automatically imply positive signal for Mozilla, but approver
communicated that it does here (can file for signal if requested).

*WebKit*: Positive (https://github.com/gpuweb/gpuweb/pull/4500) Approval
implies positive signal for Safari, in WebGPU WG.

*Web developers*: Positive (
https://github.com/gpuweb/gpuweb/issues/4239#issuecomment-1935112593)
Several requests have been made for this feature.

*Other signals*: PR (https://github.com/gpuweb/gpuweb/pull/4500) reviewed
by kdashg at Mozilla and mwyrzykowski at WebKit

Ergonomics

This maps directly to the platform APIs that are used for HDR video and
image rendering, and should require almost no additional work to support.
On some platforms, this maps directly to the exact underlying API, while on
other platforms some conversion is required.


Activation

This can be used immediately by developers.


Security

This introduces no new security or privacy issues.


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?

None. WebView does not current support this (because it does not support
HDR images), but the support for both features will come simultaneously.


Debuggability

None


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, ChromeOS, Android, and Android WebView)?No

ChromeOS platform support for HDR images (and canvas) has not been
completed.


Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?No

Issues with testing the rendering of HDR (images, video, and now also
canvas) is discussed at:
https://github.com/web-platform-tests/wpt/issues/44320


Flag name on chrome://flagsNone

Finch feature nameWebGPUHDR

Requires code in //chrome?False

Tracking bughttps://issues.chromium.org/issues/333967627

Adoption expectationFeature is currently being used by specific partners in
prototypes. It is also used in internal features.

Sample links
https://ccameron-chromium.github.io/webgpu-hdr/example.html

Estimated milestones
Shipping on desktop 128
Shipping on Android 128
Shipping on WebView 128

Anticipated spec changesThis was split off from a larger "HDR for all
HTMLCanvasElement" spec. This feature is planned to be added to WebGL soon.
Additional tone mapping modes are planned to be added as they are published.

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/6196313866895360?gate=6588754021318656

Links to previous Intent discussionsIntent to prototype:
https://groups.google.com/a/chromium.org/g/blink-dev/c/S609KGTkSSk/m/1EW4CWn3BgAJ

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGnfxj_Pss5f2sXWHB%2BaxcqTfxxRBJctZ18xrv2Gd0Q-BaDGvg%40mail.gmail.com.

Reply via email to