working branch, except audio plays over itself