media/extensions/media2
olly 6cce608f32 Simplify DefaultMediaSourceFactory ad configuration
- Use a setter, which is consistent with how other optional
  components are passed.
- Remove nesting where a provider provides another provider.
  Since AdSupportProvider then only provides one thing, it
  can be renamed to AdsLoaderProvider, which more clearly
  expresses what it provides.

PiperOrigin-RevId: 330396334
2020-09-07 20:46:57 +01:00
..
src Simplify DefaultMediaSourceFactory ad configuration 2020-09-07 20:46:57 +01:00
build.gradle Release media2 extension 2020-07-09 08:28:14 +00:00
README.md Release media2 extension 2020-07-09 08:28:14 +00:00

ExoPlayer Media2 extension

The Media2 extension provides builders for SessionPlayer and MediaSession.SessionCallback in the Media2 library.

Compared to MediaSessionConnector that uses MediaSessionCompat, this provides finer grained control for incoming calls, so you can selectively allow/reject commands per controller.

Getting the extension

The easiest way to use the extension is to add it as a gradle dependency:

implementation 'com.google.android.exoplayer:extension-media2:2.X.X'

where 2.X.X is the version, which must match the version of the ExoPlayer library being used.

Alternatively, you can clone the ExoPlayer repository and depend on the module locally. Instructions for doing this can be found in ExoPlayer's top level README.

Using the extension

Using SessionPlayerConnector

SessionPlayerConnector is a SessionPlayer implementation wrapping a given Player. You can use a SessionPlayer instance to build a MediaSession, or to set the player associated with a VideoView or MediaControlView

Using SessionCallbackBuilder

SessionCallbackBuilder lets you build a MediaSession.SessionCallback instance given its collaborators. You can use a MediaSession.SessionCallback to build a MediaSession.

  • Javadoc: Classes matching com.google.android.exoplayer2.ext.media2.* belong to this module.