This repo is starting to really violate SRP. Maybe this should only be the media player...