HTML5 video
Support for HTML5 video has been steadily increasing. In June 2013, Netflix added support for HTML5 video. In January 2015, YouTube switched to using HTML5 video instead of Flash by default. In December 2015, Facebook switched from Flash to HTML5 for all video content.
Canvas element
The canvas element is part of HTML5 and allows for dynamic, scriptable rendering of 2D shapes and bitmap images. It is a low level, procedural model that updates a bitmap and does not have a built-in scene graph; however through WebGL allows 3D shapes and images and so-on.