media/library
tonihei 607ef989fb Fix decoder fallback logic for Dolby Atmos and Dolby Vision.
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
2022-01-14 14:20:08 +00:00
..
all Add database module 2021-10-26 14:19:43 +01:00
common Include role and selection flags when logging a track's Format 2021-12-21 17:18:28 +00:00
core Fix decoder fallback logic for Dolby Atmos and Dolby Vision. 2022-01-14 14:20:08 +00:00
dash Remove setTag from (Ss|Hls|Dash)MediaSource.Factory 2022-01-10 13:00:58 +00:00
database Add database module 2021-10-26 14:19:43 +01:00
datasource Change DefaultHttpDataSourceTest to an instrumentation test 2021-12-14 10:30:35 +00:00
decoder Make package in test manifest consistent 2021-10-29 11:35:26 +01:00
extractor Parse CryptoInfo from simpleTag and set it into DrmInitData. 2022-01-04 17:17:29 +00:00
hls Remove setTag from (Ss|Hls|Dash)MediaSource.Factory 2022-01-10 13:00:58 +00:00
rtsp Use RTSP server for RTSP auth realm. 2022-01-07 16:46:25 +00:00
smoothstreaming Remove setTag from (Ss|Hls|Dash)MediaSource.Factory 2022-01-10 13:00:58 +00:00
transformer Replace static method with a static field. 2022-01-10 12:42:34 +00:00
ui Remove 'styled' from styledPlayerControlView field name 2022-01-10 12:57:27 +00:00
README.md Tweak and add READMEs + remove refs to V1 2017-08-17 22:59:34 +01:00

ExoPlayer library

The ExoPlayer library is split into multiple modules. See ExoPlayer's top level README for more information about the available library modules and how to use them.