media/library/src/main/java/com/google/android/exoplayer2
olly 9304cb3f8f Plumb key-rotation and drm-playlist support
With this change, MediaCodecRenderer acquires a session
from its DrmSessionManager whenever the DrmInitData in
the format changes. The DrmSessionManager is permitted
to return the same session if it can be re-used.

This plumbing adds support for:

1. Key-rotation, in the case that a key-rotation-aware
   DrmSessionManager is used. Such an implementation will
   return the same DrmSession for every aquisition, but
   will be making use of multiple MediaDrm instances within
   that session to enable the rotation.

2. Playlists with mixed clear and protected content. One
   final piece to this will be to have each MediaPeriod
   provide its own license URL. We could also allow each
   MediaPeriod to specify the DRM UUID, but switching from
   PlayReady to Widevine in a playlist seems like quite a
   hypothetical thing.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=127816046
2016-07-22 22:41:35 +01:00
..
audio Update Renderer documentation 2016-07-22 22:19:56 +01:00
decoder Big (and hopefully near-final) rename. 2016-07-15 18:14:55 +01:00
drm Finalize v2 directory + package name 2016-07-08 12:12:09 +01:00
extractor Avoid "unnecessary boolean expression" warning 2016-07-22 22:40:59 +01:00
mediacodec Plumb key-rotation and drm-playlist support 2016-07-22 22:41:35 +01:00
metadata Update Renderer documentation 2016-07-22 22:19:56 +01:00
source Allow injection of custom ChunkSources 2016-07-22 22:21:06 +01:00
text Update Renderer documentation 2016-07-22 22:19:56 +01:00
trackselection Only pass RendererCapabilities to TrackSelectors 2016-07-15 18:18:50 +01:00
ui Big (and hopefully near-final) rename. 2016-07-15 18:14:55 +01:00
upstream BandwidthMeter shouldn't extend TransferListener 2016-07-22 22:21:54 +01:00
util Big (and hopefully near-final) rename. 2016-07-15 18:14:55 +01:00
video Update Renderer documentation 2016-07-22 22:19:56 +01:00
BaseRenderer.java Update Renderer documentation 2016-07-22 22:19:56 +01:00
C.java TrackStream -> source.SampleStream 2016-07-15 18:06:48 +01:00
DefaultLoadControl.java Use extension rather than composition for track selection 2016-07-15 18:08:36 +01:00
ExoPlaybackException.java Introduce source package for sources 2016-07-15 18:02:31 +01:00
ExoPlayer.java Put additional Javadoc files under src 2016-07-22 22:41:34 +01:00
ExoPlayerFactory.java Use extension rather than composition for track selection 2016-07-15 18:08:36 +01:00
ExoPlayerImpl.java Fix restoring of position. 2016-07-15 18:21:40 +01:00
ExoPlayerImplInternal.java Update Renderer documentation 2016-07-22 22:19:56 +01:00
ExoPlayerLibraryInfo.java Finalize v2 directory + package name 2016-07-08 12:12:09 +01:00
Format.java Finalize v2 directory + package name 2016-07-08 12:12:09 +01:00
FormatHolder.java Finalize v2 directory + package name 2016-07-08 12:12:09 +01:00
LoadControl.java Use extension rather than composition for track selection 2016-07-15 18:08:36 +01:00
ParserException.java Big (and hopefully near-final) rename. 2016-07-15 18:14:55 +01:00
Renderer.java Put additional Javadoc files under src 2016-07-22 22:41:34 +01:00
RendererCapabilities.java Add Renderer.getCapabilities 2016-07-15 18:19:57 +01:00
SimpleExoPlayer.java Big (and hopefully near-final) rename. 2016-07-15 18:14:55 +01:00