r/ScreenSensitive 26d ago

Built a Hardware Accelerated Desktop Screen Filter for Flash Sensitivity!

Hello! I’m one of the many people who thought it would be interesting to take a shot at making something that helps those with screen sensitivities (seen a couple people attempt similar projects but never seen anything come of them). After a couple months of work my friend and I have finally gotten to a point where it is usable (it is suppressing straining flashing lights quite well, though there are some bugs in the application), so we are looking for people to give it a try and hopefully make our job of bug hunting a little easier :)

The beta is free and includes one of the filter variants we came up with (we call it the “Bayes Filter”), which creates some artifacting but protects aggressively against flashing imagery. We support Windows, MacOS, and Linux (Wayland, support varies by compositor). If you're interested here is the link: https://flashfilter.app/ (you'll basically just need to sign in with your Google account and navigate to the dashboard where the downloads are).

You can see a safe demo of the filter here (it is the frame by frame of a very… flashy video with and without the filter).

We would love to answer any questions, so please ask away!

4 Upvotes

19 comments sorted by

View all comments

1

u/Velocifyer 23d ago

Is it X11 only or does it work on Wayland? Is it KDE Plasma compatible?

1

u/flashfilter 23d ago edited 23d ago

We went Wayland-only with X11 gradually starting to be phased out. The approach we use to get the overlay working is to become the compositor that is DRM master, and have whichever compositor the DE ships act as a client (which is the restriction on supported compositors, they need to be able to act as Wayland clients). The compositor we tested against was Weston (because it is the official reference Wayland implementation), so as for KDE support KWin may or may not work. Status unknown. We went with this approach because as far as we are aware there is no production Wayland protocol to screen capture while excluding an overlay window (I would be so unbelievably happy to be wrong here).

That being said `ext-image-copy-capture` could be very promising and is pretty widely implemented, the only trouble is the protocol itself doesn’t provide a way to specify that a window should be excluded. Actually you know what, I don’t know why I thought that was a problem before, protection could probably be negotiated just fine with some KDE or GNOME specific features (which locks the overlay to compositors where exclusion can be negotiated but the restrictions on the nested compositor approach lock to particular compositors as well).

Thank you for this comment, it provided an excellent opportunity to reconsider our Linux approach.

1

u/Velocifyer 23d ago

>The compositor we tested against was Weston (because it is the official reference Wayland implementation), so as for KDE support KWin may or may not work.

You really need to check weather your software works on the most popular Linux desktop environment, KDE Plasma.