code: @Implementation
    protected void start() {
      if (checkStateError("start()", startableStates)) {
        if (state == PLAYBACK_COMPLETED) {
          startOffset = 0;
        }
        state = STARTED;
        doStart();
      }
    }
docs: Simulates private native method {@link MediaPlayer#_start()}. Sets state to STARTED and calls
  {@link #doStart()} to start scheduling playback callback events.
  
  <p>If the current state is PLAYBACK_COMPLETED, the current position is reset to zero before
  starting playback.
  
  @see #doStart()