It should be possible with reasonable amounts of coding.
The basic problem seems to be "how to obtain a video feed as input, decode it to a form we can modifiy (such as RGB) and then draw "sprites" on top of the feed, and display it in a smooth enough manner?".
I've personally done it many times in different forms (although never anything decorative like this "snowfall" effect). I usually draw telemetry data and environment maps on top of the video feed that a robot sends.
The tools that different people would use to solve the same problem, would of course differ a lot.... I could provide some code snippets only for Java, presuming AWT as the user interface. Yeah, I know, that must sound like technology from the Middle Ages, but it's what I've come to rely on, and it works stable for me...