use single thread for sound