Implement hardware video decoding

Currently video playback is done using software decoding. This work, but is power inefficient. It would be nice if we can utilize hardware decoder for this.

@NotKit mentioned he has some idea on how to implement this.