anchor.diff:      (when audio-rec
         (mezzano.supervisor:make-thread
          #'(lambda ()
  -	   (when (not (and (eql compression 1) ; uncompressed
  -			   (eql channels 2)
  -			   (eql sample-rate 44100)
  -			   (member sample-size '(8 16))))
  -	     (format t "Unsupported wav file. ~S ~S ~S ~S ~S~%" fmt compression channels sample-rate sample-size)
  -	     (return-from play-audio-stream))
   	   (cl-video:stream-playback-start audio-rec)
   	   (unwind-protect
  -		(loop until (cl-video:finish container)
  -		   for cur = (if (cl-video:pause container) cur (cl-video:pop-chunk-rcursor audio-rec))
  -		   for src = (cl-video:frame cur) do
  -		   ;; pause synching protocol w/video stream
  -		     (mezzano.supervisor:acquire-mutex (cl-video:pause-lock container))
  -		   ;; send the audio frame
  -		     (cl-video:sink-frame aout src)
  -		     (loop while (cl-video:pause container) do (sleep 0.2))
  -		     (mezzano.supervisor:release-mutex (cl-video:pause-lock container))
  -		   ;; advance the cursor lock
  -		     (mezzano.supervisor:acquire-mutex (cl-video:vacancy-lock (car (cl-video:rcursor audio-rec))))
  -		     (mezzano.supervisor:release-mutex (cl-video:vacancy-lock cur))
  -		     (when (eql cur (cl-video:final audio-rec))
  -		       (return))
  -		     (sleep (cl-video:frame-delay audio-rec)))
  +		(unless (not (and (eql compression 1) ; uncompressed
  +				  (eql sample-rate 44100)
  +				  (member sample-size '(8 16))))
  +		  (loop until (cl-video:finish container)
  +		     for cur = (if (cl-video:pause container) cur (cl-video:pop-chunk-rcursor audio-rec))
  +		     for src = (cl-video:frame cur) do
  +		     ;; pause synching protocol w/video stream
  +		       (mezzano.supervisor:acquire-mutex (cl-video:pause-lock container))
  +		     ;; send the audio frame
  +		       (cl-video:sink-frame aout src)
  +		       (loop while (cl-video:pause container) do (sleep 0.2))
  +		       (mezzano.supervisor:release-mutex (cl-video:pause-lock container))
  +		     ;; advance the cursor lock
  +		       (mezzano.supervisor:acquire-mutex (cl-video:vacancy-lock (car (cl-video:rcursor audio-rec))))
  +		       (mezzano.supervisor:release-mutex (cl-video:vacancy-lock cur))
  +		       (when (eql cur (cl-video:final audio-rec))
  +			 (return))
  +		       (sleep (cl-video:frame-delay audio-rec))))
   	     (cl-video:stream-playback-stop audio-rec)
   	     (cl-video:close-sink aout)))
          :name "Trentino audio worker"))))
  
positive.code: 					 ((string-equal "wav" (pathname-type pathname)) 'cl-video:wav-container)
  					 (t (error 'unrecognized-file-format)))
  				  :filename pathname :player-callback player-callback
  				  :audio-out (make-instance 'mezzano-pcm-output)))
      (cl-video:decode container)))
  
  (defun main (path)
  
negative.code: 
  ;;; we speccialize own class & method to resample stream as necessary for Intel HDA
  ;;; but we still want to run decode in another thread
  
  (defmethod play-audio-stream ((container cl-video:av-container))
    (let ((aout (cl-video:audio-out container))
  