not working yet, buffer might be too small, signal might be overflowing/underflowing