improve playback interface