async getBestImageStream_(trackId) {
    if (this.loadMode_ != shaka.Player.LoadMode.MEDIA_SOURCE &&
        this.loadMode_ != shaka.Player.LoadMode.SRC_EQUALS) {
      return null;
    }
    let imageStreams = this.externalSrcEqualsThumbnailsStreams_;
    if (this.manifest_) {
      imageStreams = this.manifest_.imageStreams;
    }
    let imageStream = imageStreams[0];
    if (!imageStream) {
      return null;
    }
    if (trackId != null) {
      imageStream = imageStreams.find(
          (stream) => stream.id == trackId);
    }
    if (!imageStream) {
      return null;
    }
    if (!imageStream.segmentIndex) {
      await imageStream.createSegmentIndex();
    }
    return imageStream;
  }
Return a the best image stream from an optional trackId.

If the player has not loaded content, this will return a null.

@param {?number=} trackId
@return {!Promise<?shaka.extern.Stream>}
@private