anchor.diff:     (extra-format-bytes :accessor extra-format-bytes)
      (extra-bytes :accessor extra-bytes)))
   
  -(defmethod shared-initialize :after ((rec audio-stream-record) slots &key &allow-other-keys)
  +(defmethod stream-playback-start ((rec wav-stream-record))
  +  (call-next-method))
  +
  +(defmethod shared-initialize :after ((rec wav-stream-record) slots &key &allow-other-keys)
     (declare (ignorable slots))
     (setf  (buffer rec) (make-array (suggested-buffer-size rec) :element-type '(unsigned-byte 8))))
   
  -(defmethod read-audio-stream-header ((rec audio-stream-record) stream)
  +(defmethod read-audio-stream-header ((rec wav-stream-record) stream)
     (loop for chunk = (riff:read-riff-chunk stream)
  -     when (string-equal (riff:riff-chunk-id chunk) "strf") do
  +     when (string-equal (riff:riff-chunk-id chunk) "fmt ") do
          (flexi-streams:with-input-from-sequence (is (riff:riff-chunk-data chunk))
   	(setf (compression-code rec) (riff:read-u2 is)
   	     (number-of-channels rec) (riff:read-u2 is)
  
positive.code: 	     (format stream "Malformed WAV file format"))))
  
  (defclass wav-stream-record (stream-record)
    ((fcc-type :accessor fcc-type)
     (fcc-handler :accessor fcc-handler)
     (flags :accessor flags)
     (priority :accessor priority)
     (language :accessor language)
     (initial-frames :accessor initial-frames)
     (scale :accessor scale)
     (rate :accessor rate)
     (start :accessor start)
     (stream-length :accessor stream-length)
     (suggested-buffer-size :accessor suggested-buffer-size)
     (quality :accessor quality)
     (sample-size :accessor sample-size)
     (frame :accessor frame)
     (frame-delay :accessor frame-delay :initarg :frame-delay)
     (index :accessor index)))
  
  (defmethod stream-playback-start ((rec wav-stream-record))
    (sleep (* (start rec) (/ (scale rec) (rate rec)))) ;stream delay, if any
    (call-next-method))
  
  (defclass audio-stream-record (wav-stream-record)
    ((compression-code :accessor compression-code)
     (number-of-channels :accessor number-of-channels)
     (sample-rate :accessor sample-rate)
  
negative.code:   (loop for chunk = (riff:read-riff-chunk stream)
       with rec = (make-instance 'wav-stream-record :container wav)
       when (string-equal (riff:riff-chunk-id chunk) "strh") do
         (read-audio-stream-header rec stream)
         (return-from read-wav-stream-info rec))
    (error 'malformed-wav-file-format))
  
  