media/libraries/exoplayer
tonihei bd5f99cb09 Audio focus player command clean up
The 'player commands' returned to ExoPlayerImpl instruct the
player on how to treat the current audio focus state.

The current return value when playWhenReady==false is misleading
because it implies we are definitely not allowed to play as if
we've lost focus. Instead, we should return the actual player
command corresponding to the focus state we are in.

This has no practical effect in ExoPlayerImpl as we already
ignore the 'player command' completely  when playWhenReady=false.

To facilitate this change, we also introduce a new internal
state for FOCUS_NOT_REQUESTED to distinguish it from the state
in which we lost focus.

#cherrypick

PiperOrigin-RevId: 644416586
(cherry picked from commit 66c19390e2)
2024-07-02 14:10:12 +00:00
..
src Audio focus player command clean up 2024-07-02 14:10:12 +00:00
build.gradle Replace Queue<Long> with a queue for long primitives 2023-08-24 09:14:44 +01:00
proguard-rules.txt Fix proguard rule for DefaultVideoFrameProcess.Factory.Builder.build() 2024-03-15 06:50:16 -07:00
README.md Fix javadoc links in media README files 2023-03-30 17:26:40 +00:00

ExoPlayer module

This module provides ExoPlayer, the Player implementation for local media playback on Android.

Getting the module

The easiest way to get the module is to add it as a gradle dependency:

implementation 'androidx.media3:media3-exoplayer:1.X.X'

where 1.X.X is the version, which must match the version of the other media modules being used.

Alternatively, you can clone this GitHub project and depend on the module locally. Instructions for doing this can be found in the top level README.