#917: Adding support for High Dynamic Range (HDR) imagery to HTML Canvas

Visit on Github.

Opened Nov 13, 2023

こんにちは TAG-さん!

The Color on the Web CG is kindly requesting a TAG review of its proposed modification to the Web Platform to support High Dynamic Range (HDR) imagery in HTML Canvas.

The complete proposal is at https://github.com/w3c/ColorWeb-CG/blob/hdr_canvas_r2/hdr_html_canvas_element.md

Today HTML Canvas supports only 8 bit per color channel and two PredefinedColorSpace color spaces (srgb and display-p3). This is insufficient for High-Dynamic Range (HDR) imagery, which is in widespread use today. Accordingly, the following API modifications are needed to manipulate HDR images in HTML Canvas:

  • add BT.2100 color spaces to PredefinedColorSpace
  • add higher bit depth capabilities to CanvasRenderingContext2DSettings
  • add higher bit depth capabilities to ImageDataSettings
  • add image color volume information to ImageDataSettings and CanvasRenderingContext2DSettings
  • add display color volume information to the Screen interface of the CSS Object Model, to determine the characteristics of the display on which the image is being reproduced

Please note that the proposed screenColorInfo property adds a fingerprinting surface. This feature is however intended primarily for advanced color volume mapping applications and is not believed to be generally necessary.

Contacts: @palemieux and @svgeesus (Color on the Web CG co-chairs)

Feedback, issues and questions are welcome at mailto:public-colorweb@w3.org and https://github.com/w3c/ColorWeb-CG/issues.

Discussions

2023-12-11

Minutes

Dan: I feel like Lea had opinions on this..

bumped

2023-12-18

Minutes

Ready to be worked on.

triage breakout 3

Lea, Rossen, Yves

2024-01-15

Minutes

bump to f2f

2024-02-05

Minutes

https://drafts.csswg.org/css-color-hdr/ !

Tess: There's a PredefinedColorSpace WebIDL enum defined in HTML. CSS Color Level 4 defines <predefined-rgb> as a different list, and Level 5 adds more. We should really have one WebIDL enum that gets pulled in by reference everywhere, so we ensure we don't have regretable collisions later on. That is, there should be one source of truth for the names of color spaces in web specs.

2024-02-26

Minutes

Brought in ChrisL to discuss, sent feedback.

2024-03-18

Minutes

Best to wait for Lea to talk about this one.

2024-04-29

Minutes

Punting as Lea isn't present

2024-05-06

Minutes

Deferring to assignees.