getRealInfo_(contentType, mimeType, codecs) {
    const ContentType = shaka.util.ManifestParserUtils.ContentType;
    const MimeUtils = shaka.util.MimeUtils;
    /** @type {?shaka.extern.Transmuxer} */
    let transmuxer;
    let transmuxerMuxed = false;
    const audioCodec = shaka.util.ManifestParserUtils.guessCodecsSafe(
        ContentType.AUDIO, (codecs || '').split(','));
    const videoCodec = shaka.util.ManifestParserUtils.guessCodecsSafe(
        ContentType.VIDEO, (codecs || '').split(','));
    let codec = videoCodec;
    if (contentType == ContentType.AUDIO) {
      codec = audioCodec;
    }
    if (!codec) {
      codec = codecs;
    }
    let newMimeType = shaka.util.MimeUtils.getFullType(mimeType, codec);
    let needTransmux = this.config_.forceTransmux;
    if (!shaka.media.Capabilities.isTypeSupported(newMimeType) ||
        (!this.sequenceMode_ &&
        shaka.util.MimeUtils.RAW_FORMATS.includes(newMimeType))) {
      needTransmux = true;
    }
    const TransmuxerEngine = shaka.transmuxer.TransmuxerEngine;
    if (needTransmux) {
      const newMimeTypeWithAllCodecs =
          shaka.util.MimeUtils.getFullTypeWithAllCodecs(mimeType, codec);
      const transmuxerPlugin =
          TransmuxerEngine.findTransmuxer(newMimeTypeWithAllCodecs);
      if (transmuxerPlugin) {
        transmuxer = transmuxerPlugin();
        if (audioCodec && videoCodec) {
          transmuxerMuxed = true;
        }
        newMimeType =
            transmuxer.convertCodecs(contentType, newMimeTypeWithAllCodecs);
      }
    }

    const newCodec = MimeUtils.getNormalizedCodec(
        MimeUtils.getCodecs(newMimeType));
    const newBasicType = MimeUtils.getBasicType(newMimeType);
    return {
      transmuxer,
      transmuxerMuxed,
      basicType: newBasicType,
      codec: newCodec,
      mimeType: newMimeType,
    };
  }
@param {shaka.util.ManifestParserUtils.ContentType} contentType
@param {string} mimeType
@param {string} codecs
@return {{transmuxer: ?shaka.extern.Transmuxer,
         transmuxerMuxed: boolean, basicType: string, codec: string,
         mimeType: string}}
@private