max desired must be one less than the max frames in our ringbuffer