 
     private function handleBufferingFinished() : void
     {
-      useLargeBuffer()
       _buffering = false
+
+      // Make sure to let playback resume first.
+      later(useLargeBuffer)
     }
 
     public function handleBufferEmptied() : void

      _buffering = true
    }

    private function useSmallBuffer() : void
    { stream.bufferTime = SMALL_BUFFER }


    { return stream ? stream.playheadPosition : Duration.ZERO }

    public function set playheadPosition(value : Duration) : void
    {
      useStartBuffer()
      stream.playheadPosition = value
    }

    public function seekBy(delta : Duration) : void
    { playheadPosition = playheadPosition.plus(delta) }
