Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[css-mediaqueries] consider prefers-reduced-strobing #8651

Open
cookiecrook opened this issue Mar 28, 2023 · 2 comments
Open

[css-mediaqueries] consider prefers-reduced-strobing #8651

cookiecrook opened this issue Mar 28, 2023 · 2 comments

Comments

@cookiecrook
Copy link
Contributor

cookiecrook commented Mar 28, 2023

Earlier today, Apple released a new strobing mitigation media accessibility accommodation in tvOS 16.4, iOS 16.4, and macOS 13.3, called "Dim Flashing Lights." (Additional links below)

Prior to this, the typical behavior with flashing media was that a viewer was warned once before before a video played. Even in a feature length film, there was no indication of when the flashing may occur, and no information about the intensity or type of strobing.

On Apple devices, we can now adjust for some strobing/flashing in real time with onboard hardware and software, but as Apple's TV+ content is viewable on many other platforms, we'd also like to be able to do this on non-Apple hardware.

Earlier tonight I proposed using a VTT metadata track to denote flashing in a video, such as a nightclub scene in a movie.

For CSS, we think this makes sense as the following User Preference Media Feature:

11.x. Detecting the desire to minimize strobing or flashing in page media and animations: the prefers-reduced-strobing feature

Name: prefers-reduced-strobing
For: @media
Type: discrete
Value: no-preference | reduce 
// open syntax for more granular value expansion if needed: 
// reduce-general-flash, reduce-red-flash, reduce-spatial-pattern, etc.

The prefers-reduced-strobing media feature is used to detect if the user has requested the system minimize the amount of strobing or flashing effect in video or animation.

no-preference: Indicates that the user has made no preference known to the system. This keyword value evaluates as false in the boolean context.

reduce: Indicates that user has notified the system that they prefer media and interfaces that remove or replace the types of strobing and flashing that can trigger seizures or discomfort for those with photosensitive epilepsy or other types of photosensitivity.

There is no proposal for further granularity than the values: no-preference (default), and reduce (user preference to reduce strobing is enabled), but the syntax is open-ended in case other values are deemed necessary.

Note on Fingerprinting

This proposed media feature and others are subject to changes based on the outcome of WebKit/standards-positions#145 and other related privacy issues. We debated not proposing this until after privacy issues with @media/matchMedia() had been resolved, but decided to propose it here anyway to further the discussion.

Related VTT Issue:

Other documentation on the recently released feature

@lukewarlow
Copy link
Member

I'm unsure if the CSSWG has a requirement for implementor interest but thought I'd note if this was added to the spec I'd be happy to implement it for Chromium (and WebKit but I imagine given it's come from them they'd be happy to implement it themselves).

@cookiecrook
Copy link
Contributor Author

Thanks Luke. It's on hold at the moment due to the fingerprinting/privacy topics mentioned above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants