Add a better way of sampling so that we always produce enough audio samples to sdl