- Core library:
- UI:
- Fix incorrect color and text alignment of the
StyledPlayerControlView
fast forward and rewind buttons, when used together with thecom.google.android.material
library (#7898). - Add
dispatchPrepare(Player)
toControlDispatcher
and implement it inDefaultControlDispatcher
. DeprecatePlaybackPreparer
andsetPlaybackPreparer
inStyledPlayerView
,StyledPlayerControlView
,PlayerView
,PlayerControlView
,PlayerNotificationManager
andLeanbackPlayerAdapter
and useControlDispatcher
for dispatching prepare instead (#7882). - Increase seekbar's touch target height in
StyledPlayerControlView
. - Update
StyledPlayerControlView
menu items to behave correctly for right-to-left languages. - Support enabling the previous and next actions individually in
PlayerNotificationManager
.
- Fix incorrect color and text alignment of the
- Audio:
- Retry playback after some types of
AudioTrack
error. - Work around
AudioManager
crashes when callinggetStreamVolume
(#8191).
- Retry playback after some types of
- Extractors:
- IMA extension:
- Upgrade IMA SDK dependency to 3.21.0, and release the
AdsLoader
(#7344). - Improve handling of ad tags with unsupported VPAID ads (#7832).
- Fix a bug that caused multiple ads in an ad pod to be skipped when one ad in the ad pod was skipped.
- Fix a bug that caused ad progress not to be updated if the player resumed after buffering during an ad (#8239).
- Fix passing an ads response to the
ImaAdsLoader
builder. - Set the overlay language based on the device locale by default.
- Upgrade IMA SDK dependency to 3.21.0, and release the
- Cronet extension:
- Fix handling of HTTP status code 200 when making unbounded length range requests (#8090).
- Text
- Allow tx3g subtitles with
styl
boxes with start and/or end offsets that lie outside the length of the cue text.
- Allow tx3g subtitles with
- Media2 extension:
- Notify onBufferingEnded when the state of origin player becomes STATE_IDLE or STATE_ENDED.
- Allow to remove all playlist items that makes the player reset.