         player.changeVolumeBy(-.1)
     }
 
-    public function start() : void
-    {
-      drawBackground()
-
-      stage.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown)
-      stage.addEventListener(Event.RESIZE, handleStageResized)
-
-      debug("Looking up Streamio movie “" + movieID + "”...")
-
-      api.fetchMovie(movieID, this)
-    }
-
-    private function drawBackground() : void
-    {
-      graphics.beginFill(0x000000)
-      graphics.drawRect(0, 0, stageDimensions.width, stageDimensions.height)
-      graphics.endFill()
-    }
-
     private function handleStageResized(event : Event) : void
     {
       if (view)

      view.dimensions = stageDimensions

      addChild(view)

      if (autoplay)
        play()
      else
        ready = true, debug("Click movie to start playback.")
    }

    private function get stageDimensions() : Dimensions

      addEventListener(MouseEvent.CLICK, handleClick)
    }

    public function start() : void
    {
      drawBackground()

      stage.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown)
      stage.addEventListener(Event.RESIZE, handleStageResized)

      debug("Looking up Streamio movie “" + movieID + "”...")

      api.fetchMovie(movieID, this)
    }

    private function drawBackground() : void
    {
      graphics.beginFill(0x000000)
      graphics.drawRect(0, 0, stageDimensions.width, stageDimensions.height)
      graphics.endFill()
    }

    private function handleClick(event : MouseEvent) : void
    {
      if (ready)
        ready = false, handlePlayRequested()
    }

    private function handlePlayRequested() : void
    {
      debug("Playing movie.")
      play()
