playback with 2 method (1.thread 2.timer)