rewrote dsp, put buffer refill in threads