anchor.diff:              ((= sample lowerpoint)
                ;; We are extremely lucky
                ;; All we need to do is set input to a new frame
  -             (reader-position bitreader (+ audio-start lowerpoint))
  +             (reader-position bitreader (+ start-pos lowerpoint))
                (return-from seek-sample 0))
               (t
  -             (setq start-pos (+ audio-start lowerpoint)
  -                   end-pos (+ audio-start upperpoint))))))
  +             (psetq start-pos (+ start-pos lowerpoint)
  +                    end-pos (+ start-pos upperpoint))))))
   
       ;; Check implementation limitations
       (if (and streaminfo
  
positive.code: 	       :message "Cannot seek with variable blocksize"))
  
      (multiple-value-bind (needed-num remainder)
  	(floor sample blocksize)
        (declare (type non-negative-fixnum needed-num remainder))
  
        (labels ((dichotomy-search (start end)
  
negative.code:                :message "Seek error. Desired sample number is bigger than
                           number of samples in stream")))
  
    ;; Reset the reader
    (reader-position bitreader 0)
    (restore-sync bitreader)
    ;; Init the boundaries where desired sample must be
    (let ((start-pos (reader-position bitreader))
  	(end-pos (reader-length bitreader)))
  
      ;; Now, if seektable is present, correct the boundaries
  