proper play/record cycle WIP