Refactor RetroPlayer buffers for audio and video, abstract using type
erasure pattern