1. 25 Jan, 2022 39 commits
  2. 11 Jan, 2022 1 commit
    • Fix decoder fallback logic for Dolby Atmos and Dolby Vision. · b208d6d2
      The media codec renderers have fallback logic in getDecoderInfos
      to assume that E-AC3 decoders can handle the 2D version of E-AC3-JOC and
      that H264/H265 decoders can handle some base layer of Dolby Vision
      content. Both fallbacks are useful if there is no decoder for the
      enhanced Dolby formats.
      
      Both fallbacks are not applied during track selection at the moment
      because the separate MediaCodecInfo.isCodecSupported method verifies
      that the mime type corresponding to format.codecs is the same as the
      decoder mime type (which isn't true for the fallback case).
      
      To fix the fallback logic, we can just completely remove this additional
      check because it's not needed in the context of this method that is only
      called after we already established that the decoder can handle the
      format.sampleMimeType.
      
      In addition, we need to map the Dolby Vision profiles to the equivalent
      H264/H265 profile to make the codec profile comparison sensible again.
      
      PiperOrigin-RevId: 420959104
      tonihei committed