Hi, Pause means to retain buffers but hold playback. Flush means to discard buffers buy keep playing. So checking pause within Flush is almost certainly wrong; these things should be orthogonal. Also mixing atomic ops and muteces smells very bad, TBH. -- Remi Denis-Courmont