add playback functionality