Different ways to decode and render video, such as software, low level API and hardware.