META-INF/
META-INF/MANIFEST.MF
com/
com/google/
com/google/android/
com/google/android/exoplayer/
com/google/android/exoplayer/Ac3PassthroughAudioTrackRenderer$1.class
Ac3PassthroughAudioTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.audio.AudioTrack$InitializationException val$e
final synthetic com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer this$0
void <init> (com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer, com.google.android.exoplayer.audio.AudioTrack$InitializationException)
public void run ()
}
com/google/android/exoplayer/SmoothFrameReleaseTimeHelper.class
SmoothFrameReleaseTimeHelper.java
package com.google.android.exoplayer
public com.google.android.exoplayer.SmoothFrameReleaseTimeHelper extends java.lang.Object implements com.google.android.exoplayer.MediaCodecVideoTrackRenderer$FrameReleaseTimeHelper android.view.Choreographer$FrameCallback {
private static final long CHOREOGRAPHER_SAMPLE_DELAY_MILLIS
private static final long MAX_ALLOWED_DRIFT_NS
private static final long VSYNC_OFFSET_PERCENTAGE
private static final int MIN_FRAMES_FOR_ADJUSTMENT
private final boolean usePrimaryDisplayVsync
private final long vsyncDurationNs
private final long vsyncOffsetNs
private android.view.Choreographer choreographer
private long sampledVsyncTimeNs
private long lastUnadjustedFrameTimeUs
private long adjustedLastFrameTimeNs
private long pendingAdjustedFrameTimeNs
private boolean haveSync
private long syncReleaseTimeNs
private long syncFrameTimeNs
private int frameCount
public void <init> (float, boolean)
float primaryDisplayRefreshRate
boolean usePrimaryDisplayVsync
public void enable ()
public void disable ()
public void doFrame (long)
long vsyncTimeNs
public long adjustReleaseTime (long, long)
long averageFrameTimeNs
long candidateAdjustedFrameTimeNs
long unadjustedFrameTimeUs
long unadjustedReleaseTimeNs
long unadjustedFrameTimeNs
long adjustedFrameTimeNs
long adjustedReleaseTimeNs
long snappedTimeNs
protected void onSynced ()
private boolean isDriftTooLarge (long, long)
long frameTimeNs
long releaseTimeNs
long elapsedFrameTimeNs
long elapsedReleaseTimeNs
private static long closestVsync (long, long, long)
long snappedBeforeNs
long snappedAfterNs
long releaseTime
long sampledVsyncTime
long vsyncDuration
long vsyncCount
long snappedTimeNs
long snappedBeforeNs
long snappedAfterNs
long snappedAfterDiff
long snappedBeforeDiff
}
com/google/android/exoplayer/TrackInfo.class
TrackInfo.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.TrackInfo extends java.lang.Object {
public final String mimeType
public final long durationUs
public void <init> (java.lang.String, long)
String mimeType
long durationUs
}
com/google/android/exoplayer/MediaCodecTrackRenderer$DecoderInitializationException.class
MediaCodecTrackRenderer.java
package com.google.android.exoplayer
public com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException extends java.lang.Exception {
private static final int CUSTOM_ERROR_CODE_BASE
private static final int NO_SUITABLE_DECODER_ERROR
private static final int DECODER_QUERY_ERROR
public final String decoderName
public final String diagnosticInfo
public void <init> (com.google.android.exoplayer.MediaFormat, java.lang.Throwable, int)
com.google.android.exoplayer.MediaFormat mediaFormat
Throwable cause
int errorCode
public void <init> (com.google.android.exoplayer.MediaFormat, java.lang.Throwable, java.lang.String)
com.google.android.exoplayer.MediaFormat mediaFormat
Throwable cause
String decoderName
private static java.lang.String getDiagnosticInfoV21 (java.lang.Throwable)
Throwable cause
private static java.lang.String buildCustomDiagnosticInfo (int)
int errorCode
String sign
}
com/google/android/exoplayer/ParserException.class
ParserException.java
package com.google.android.exoplayer
public com.google.android.exoplayer.ParserException extends java.io.IOException {
public void <init> (java.lang.String)
String message
public void <init> (java.lang.Throwable)
Throwable cause
public void <init> (java.lang.String, java.lang.Throwable)
String message
Throwable cause
}
com/google/android/exoplayer/MediaCodecVideoTrackRenderer$2.class
MediaCodecVideoTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecVideoTrackRenderer$2 extends java.lang.Object implements java.lang.Runnable {
final synthetic android.view.Surface val$surface
final synthetic com.google.android.exoplayer.MediaCodecVideoTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecVideoTrackRenderer, android.view.Surface)
public void run ()
}
com/google/android/exoplayer/SampleSource.class
SampleSource.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.SampleSource extends java.lang.Object {
public static final int END_OF_STREAM
public static final int NOTHING_READ
public static final int SAMPLE_READ
public static final int FORMAT_READ
public static final int DISCONTINUITY_READ
public abstract boolean prepare () throws java.io.IOException
public abstract int getTrackCount ()
public abstract com.google.android.exoplayer.TrackInfo getTrackInfo (int)
public abstract void enable (int, long)
public abstract void disable (int)
public abstract boolean continueBuffering (long) throws java.io.IOException
public abstract int readData (int, long, com.google.android.exoplayer.MediaFormatHolder, com.google.android.exoplayer.SampleHolder, boolean) throws java.io.IOException
public abstract void seekToUs (long)
public abstract long getBufferedPositionUs ()
public abstract void release ()
}
com/google/android/exoplayer/MediaCodecAudioTrackRenderer$1.class
MediaCodecAudioTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecAudioTrackRenderer$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.audio.AudioTrack$InitializationException val$e
final synthetic com.google.android.exoplayer.MediaCodecAudioTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecAudioTrackRenderer, com.google.android.exoplayer.audio.AudioTrack$InitializationException)
public void run ()
}
com/google/android/exoplayer/ExoPlayerImpl$1.class
ExoPlayerImpl.java
package com.google.android.exoplayer
com.google.android.exoplayer.ExoPlayerImpl$1 extends android.os.Handler {
final synthetic com.google.android.exoplayer.ExoPlayerImpl this$0
void <init> (com.google.android.exoplayer.ExoPlayerImpl)
public void handleMessage (android.os.Message)
android.os.Message msg
}
com/google/android/exoplayer/MediaCodecTrackRenderer.class
MediaCodecTrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.MediaCodecTrackRenderer extends com.google.android.exoplayer.TrackRenderer {
protected static final int SOURCE_STATE_NOT_READY
protected static final int SOURCE_STATE_READY
protected static final int SOURCE_STATE_READY_READ_MAY_FAIL
private static final long MAX_CODEC_HOTSWAP_TIME_MS
private static final int RECONFIGURATION_STATE_NONE
private static final int RECONFIGURATION_STATE_WRITE_PENDING
private static final int RECONFIGURATION_STATE_QUEUE_PENDING
public final com.google.android.exoplayer.CodecCounters codecCounters
private final com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
private final boolean playClearSamplesWithoutKeys
private final com.google.android.exoplayer.SampleSource source
private final com.google.android.exoplayer.SampleHolder sampleHolder
private final com.google.android.exoplayer.MediaFormatHolder formatHolder
private final java.util.List decodeOnlyPresentationTimestamps
private final android.media.MediaCodec$BufferInfo outputBufferInfo
private final com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener eventListener
protected final android.os.Handler eventHandler
private com.google.android.exoplayer.MediaFormat format
private java.util.Map drmInitData
private android.media.MediaCodec codec
private boolean codecIsAdaptive
private java.nio.ByteBuffer[] inputBuffers
private java.nio.ByteBuffer[] outputBuffers
private long codecHotswapTimeMs
private int inputIndex
private int outputIndex
private boolean openedDrmSession
private boolean codecReconfigured
private int codecReconfigurationState
private int trackIndex
private int sourceState
private boolean inputStreamEnded
private boolean outputStreamEnded
private boolean waitingForKeys
private boolean waitingForFirstSyncFrame
private long currentPositionUs
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.drm.DrmSessionManager, boolean, android.os.Handler, com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
boolean playClearSamplesWithoutKeys
android.os.Handler eventHandler
com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener eventListener
protected int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
boolean sourcePrepared
java.io.IOException e
int i
protected boolean handlesMimeType (java.lang.String)
String mimeType
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void configureCodec (android.media.MediaCodec, android.media.MediaFormat, android.media.MediaCrypto)
android.media.MediaCodec codec
android.media.MediaFormat x
android.media.MediaCrypto crypto
protected final void maybeInitCodec () throws com.google.android.exoplayer.ExoPlaybackException
int drmSessionState
com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException e
Exception e
String mimeType
android.media.MediaCrypto mediaCrypto
boolean requiresSecureDecoder
com.google.android.exoplayer.DecoderInfo decoderInfo
String decoderName
private void notifyAndThrowDecoderInitError (com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException e
protected boolean shouldInitCodec ()
protected final boolean codecInitialized ()
protected final boolean haveFormat ()
protected void onDisabled ()
protected void releaseCodec ()
protected void onReleased ()
protected long getCurrentPositionUs ()
protected long getDurationUs ()
protected long getBufferedPositionUs ()
long sourceBufferedPosition
protected void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
protected void onStarted ()
protected void onStopped ()
protected void doSomeWork (long, long) throws com.google.android.exoplayer.ExoPlaybackException
java.io.IOException e
long positionUs
long elapsedRealtimeUs
private void readFormat () throws java.io.IOException com.google.android.exoplayer.ExoPlaybackException
int result
private void discardSamples (long) throws java.io.IOException com.google.android.exoplayer.ExoPlaybackException
long positionUs
int result
private void checkForDiscontinuity () throws java.io.IOException com.google.android.exoplayer.ExoPlaybackException
int result
private void flushCodec () throws com.google.android.exoplayer.ExoPlaybackException
private boolean feedInputBuffer (boolean) throws java.io.IOException com.google.android.exoplayer.ExoPlaybackException
int result
byte[] data
int i
android.media.MediaCodec$CryptoException e
android.media.MediaCodec$CryptoInfo cryptoInfo
int bufferSize
int adaptiveReconfigurationBytes
long presentationTimeUs
android.media.MediaCodec$CryptoException e
boolean firstFeed
int result
boolean sampleEncrypted
private static android.media.MediaCodec$CryptoInfo getFrameworkCryptoInfo (com.google.android.exoplayer.SampleHolder, int)
com.google.android.exoplayer.SampleHolder sampleHolder
int adaptiveReconfigurationBytes
android.media.MediaCodec$CryptoInfo cryptoInfo
private boolean shouldWaitForKeys (boolean) throws com.google.android.exoplayer.ExoPlaybackException
boolean sampleEncrypted
int drmManagerState
protected void onInputFormatChanged (com.google.android.exoplayer.MediaFormatHolder) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.MediaFormatHolder formatHolder
com.google.android.exoplayer.MediaFormat oldFormat
protected void onOutputFormatChanged (android.media.MediaFormat)
android.media.MediaFormat format
protected boolean canReconfigureCodec (android.media.MediaCodec, boolean, com.google.android.exoplayer.MediaFormat, com.google.android.exoplayer.MediaFormat)
android.media.MediaCodec codec
boolean codecIsAdaptive
com.google.android.exoplayer.MediaFormat oldFormat
com.google.android.exoplayer.MediaFormat newFormat
protected boolean isEnded ()
protected boolean isReady ()
protected final int getSourceState ()
private boolean isWithinHotswapPeriod ()
private boolean drainOutputBuffer (long, long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
long elapsedRealtimeUs
int decodeOnlyIndex
protected abstract boolean processOutputBuffer (long, long, android.media.MediaCodec, java.nio.ByteBuffer, android.media.MediaCodec$BufferInfo, int, boolean) throws com.google.android.exoplayer.ExoPlaybackException
private void notifyDecoderInitializationError (com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException)
com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException e
private void notifyCryptoError (android.media.MediaCodec$CryptoException)
android.media.MediaCodec$CryptoException e
private int getDecodeOnlyIndex (long)
int i
long presentationTimeUs
int size
static synthetic com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener access$000 (com.google.android.exoplayer.MediaCodecTrackRenderer)
com.google.android.exoplayer.MediaCodecTrackRenderer x0
}
com/google/android/exoplayer/MediaCodecUtil$MediaCodecListCompat.class
MediaCodecUtil.java
package com.google.android.exoplayer
abstract com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat extends java.lang.Object {
public abstract int getCodecCount ()
public abstract android.media.MediaCodecInfo getCodecInfoAt (int)
public abstract boolean secureDecodersExplicit ()
public abstract boolean isSecurePlaybackSupported (java.lang.String, android.media.MediaCodecInfo$CodecCapabilities)
}
com/google/android/exoplayer/MediaCodecVideoTrackRenderer$FrameReleaseTimeHelper.class
MediaCodecVideoTrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.MediaCodecVideoTrackRenderer$FrameReleaseTimeHelper extends java.lang.Object {
public abstract void enable ()
public abstract void disable ()
public abstract long adjustReleaseTime (long, long)
}
com/google/android/exoplayer/ExoPlayer$ExoPlayerComponent.class
ExoPlayer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent extends java.lang.Object {
public abstract void handleMessage (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
}
com/google/android/exoplayer/MediaCodecAudioTrackRenderer$2.class
MediaCodecAudioTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecAudioTrackRenderer$2 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.audio.AudioTrack$WriteException val$e
final synthetic com.google.android.exoplayer.MediaCodecAudioTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecAudioTrackRenderer, com.google.android.exoplayer.audio.AudioTrack$WriteException)
public void run ()
}
com/google/android/exoplayer/Ac3PassthroughAudioTrackRenderer.class
Ac3PassthroughAudioTrackRenderer.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer extends com.google.android.exoplayer.TrackRenderer {
public static final int MSG_SET_VOLUME
private static final int SOURCE_STATE_NOT_READY
private static final int SOURCE_STATE_READY
private static final int DEFAULT_BUFFER_SIZE
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$EventListener eventListener
private final com.google.android.exoplayer.SampleSource source
private final com.google.android.exoplayer.SampleHolder sampleHolder
private final com.google.android.exoplayer.MediaFormatHolder formatHolder
private int trackIndex
private com.google.android.exoplayer.MediaFormat format
private int sourceState
private boolean inputStreamEnded
private boolean shouldReadInputBuffer
private long currentPositionUs
private com.google.android.exoplayer.audio.AudioTrack audioTrack
private int audioSessionId
public void <init> (com.google.android.exoplayer.SampleSource, android.os.Handler, com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$EventListener)
com.google.android.exoplayer.SampleSource source
android.os.Handler eventHandler
com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$EventListener eventListener
protected boolean isTimeSource ()
protected int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
boolean sourcePrepared
java.io.IOException e
int i
private static boolean handlesMimeType (java.lang.String)
String mimeType
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void doSomeWork (long, long) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.audio.AudioTrack$InitializationException e
int oldAudioSessionId
java.io.IOException e
long positionUs
long elapsedRealtimeUs
private void readFormat () throws java.io.IOException
int result
private void feedInputBuffer () throws java.io.IOException com.google.android.exoplayer.ExoPlaybackException
int result
com.google.android.exoplayer.audio.AudioTrack$WriteException e
int handleBufferResult
protected void onStarted ()
protected void onStopped ()
protected boolean isEnded ()
protected boolean isReady ()
protected long getCurrentPositionUs ()
long audioTrackCurrentPositionUs
protected long getDurationUs ()
protected long getBufferedPositionUs ()
long sourceBufferedPosition
protected void onDisabled ()
protected void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
public void handleMessage (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
int messageType
Object message
private void notifyAudioTrackInitializationError (com.google.android.exoplayer.audio.AudioTrack$InitializationException)
com.google.android.exoplayer.audio.AudioTrack$InitializationException e
private void notifyAudioTrackWriteError (com.google.android.exoplayer.audio.AudioTrack$WriteException)
com.google.android.exoplayer.audio.AudioTrack$WriteException e
static synthetic com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$EventListener access$000 (com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer)
com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer x0
}
com/google/android/exoplayer/DefaultLoadControl$EventListener.class
DefaultLoadControl.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.DefaultLoadControl$EventListener extends java.lang.Object {
public abstract void onLoadingChanged (boolean)
}
com/google/android/exoplayer/ExoPlayerImplInternal.class
ExoPlayerImplInternal.java
package com.google.android.exoplayer
final com.google.android.exoplayer.ExoPlayerImplInternal extends java.lang.Object implements android.os.Handler$Callback {
private static final String TAG
public static final int MSG_STATE_CHANGED
public static final int MSG_SET_PLAY_WHEN_READY_ACK
public static final int MSG_ERROR
private static final int MSG_PREPARE
private static final int MSG_INCREMENTAL_PREPARE
private static final int MSG_SET_PLAY_WHEN_READY
private static final int MSG_STOP
private static final int MSG_RELEASE
private static final int MSG_SEEK_TO
private static final int MSG_DO_SOME_WORK
private static final int MSG_SET_RENDERER_ENABLED
private static final int MSG_CUSTOM
private static final int PREPARE_INTERVAL_MS
private static final int RENDERING_INTERVAL_MS
private static final int IDLE_INTERVAL_MS
private final android.os.Handler handler
private final android.os.HandlerThread internalPlaybackThread
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.MediaClock mediaClock
private final boolean[] rendererEnabledFlags
private final long minBufferUs
private final long minRebufferUs
private final java.util.List enabledRenderers
private com.google.android.exoplayer.TrackRenderer[] renderers
private com.google.android.exoplayer.TrackRenderer timeSourceTrackRenderer
private boolean released
private boolean playWhenReady
private boolean rebuffering
private int state
private int customMessagesSent
private int customMessagesProcessed
private long elapsedRealtimeUs
private volatile long durationUs
private volatile long positionUs
private volatile long bufferedPositionUs
public void <init> (android.os.Handler, boolean, boolean[], int, int)
int i
android.os.Handler eventHandler
boolean playWhenReady
boolean[] rendererEnabledFlags
int minBufferMs
int minRebufferMs
public android.os.Looper getPlaybackLooper ()
public long getCurrentPosition ()
public long getBufferedPosition ()
public long getDuration ()
public transient void prepare (com.google.android.exoplayer.TrackRenderer[])
com.google.android.exoplayer.TrackRenderer[] renderers
public void setPlayWhenReady (boolean)
boolean playWhenReady
public void seekTo (long)
long positionMs
public void stop ()
public void setRendererEnabled (int, boolean)
int index
boolean enabled
public void sendMessage (com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent, int, java.lang.Object)
com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent target
int messageType
Object message
public synchronized void blockingSendMessage (com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent, int, java.lang.Object)
InterruptedException e
com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent target
int messageType
Object message
int messageNumber
public synchronized void release ()
InterruptedException e
public boolean handleMessage (android.os.Message)
com.google.android.exoplayer.ExoPlaybackException e
RuntimeException e
android.os.Message msg
private void setState (int)
int state
private void prepareInternal (com.google.android.exoplayer.TrackRenderer[])
int i
com.google.android.exoplayer.TrackRenderer[] renderers
private void incrementalPrepareInternal () throws com.google.android.exoplayer.ExoPlaybackException
int state
int i
long trackDurationUs
com.google.android.exoplayer.TrackRenderer renderer
int i
long operationStartTimeMs
boolean prepared
long durationUs
boolean isEnded
boolean allRenderersReadyOrEnded
private boolean rendererReadyOrEnded (com.google.android.exoplayer.TrackRenderer)
com.google.android.exoplayer.TrackRenderer renderer
long rendererDurationUs
long rendererBufferedPositionUs
long minBufferDurationUs
private void setPlayWhenReadyInternal (boolean) throws com.google.android.exoplayer.ExoPlaybackException
boolean playWhenReady
private void startRenderers () throws com.google.android.exoplayer.ExoPlaybackException
int i
private void stopRenderers () throws com.google.android.exoplayer.ExoPlaybackException
int i
private void updatePositionUs ()
private void doSomeWork () throws com.google.android.exoplayer.ExoPlaybackException
long rendererDurationUs
long rendererBufferedPositionUs
com.google.android.exoplayer.TrackRenderer renderer
int i
long operationStartTimeMs
long bufferedPositionUs
boolean isEnded
boolean allRenderersReadyOrEnded
private void scheduleNextOperation (int, long, long)
int operationType
long thisOperationStartTimeMs
long intervalMs
long nextOperationStartTimeMs
long nextOperationDelayMs
private void seekToInternal (long) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.TrackRenderer renderer
int i
long positionMs
private void stopInternal ()
private void releaseInternal ()
private void resetInternal ()
com.google.android.exoplayer.TrackRenderer renderer
int i
private void stopAndDisable (com.google.android.exoplayer.TrackRenderer)
com.google.android.exoplayer.ExoPlaybackException e
RuntimeException e
com.google.android.exoplayer.TrackRenderer renderer
private void release (com.google.android.exoplayer.TrackRenderer)
com.google.android.exoplayer.ExoPlaybackException e
RuntimeException e
com.google.android.exoplayer.TrackRenderer renderer
private void sendMessageInternal (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
android.util.Pair targetAndMessage
int what
Object obj
private void setRendererEnabledInternal (int, boolean) throws com.google.android.exoplayer.ExoPlaybackException
boolean playing
int index
boolean enabled
com.google.android.exoplayer.TrackRenderer renderer
int rendererState
private void ensureStopped (com.google.android.exoplayer.TrackRenderer) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.TrackRenderer renderer
}
com/google/android/exoplayer/ExoPlayerLibraryInfo.class
ExoPlayerLibraryInfo.java
package com.google.android.exoplayer
public com.google.android.exoplayer.ExoPlayerLibraryInfo extends java.lang.Object {
public static final String VERSION
public static final int VERSION_INT
public static final boolean ASSERTIONS_ENABLED
public static final boolean TRACE_ENABLED
private void <init> ()
}
com/google/android/exoplayer/BuildConfig.class
BuildConfig.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.BuildConfig extends java.lang.Object {
public static final boolean DEBUG
public static final String APPLICATION_ID
public static final String BUILD_TYPE
public static final String FLAVOR
public static final int VERSION_CODE
public static final String VERSION_NAME
public void <init> ()
}
com/google/android/exoplayer/CodecCounters.class
CodecCounters.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.CodecCounters extends java.lang.Object {
public int codecInitCount
public int codecReleaseCount
public int outputFormatChangedCount
public int outputBuffersChangedCount
public int renderedOutputBufferCount
public int skippedOutputBufferCount
public int droppedOutputBufferCount
public void <init> ()
public synchronized void ensureUpdated ()
public java.lang.String getDebugString ()
StringBuilder builder
}
com/google/android/exoplayer/Ac3PassthroughAudioTrackRenderer$EventListener.class
Ac3PassthroughAudioTrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$EventListener extends java.lang.Object {
public abstract void onAudioTrackInitializationError (com.google.android.exoplayer.audio.AudioTrack$InitializationException)
public abstract void onAudioTrackWriteError (com.google.android.exoplayer.audio.AudioTrack$WriteException)
}
com/google/android/exoplayer/VideoSurfaceView.class
VideoSurfaceView.java
package com.google.android.exoplayer
public com.google.android.exoplayer.VideoSurfaceView extends android.view.SurfaceView {
private static final float MAX_ASPECT_RATIO_DEFORMATION_PERCENT
private float videoAspectRatio
public void <init> (android.content.Context)
android.content.Context context
public void <init> (android.content.Context, android.util.AttributeSet)
android.content.Context context
android.util.AttributeSet attrs
public void setVideoWidthHeightRatio (float)
float widthHeightRatio
protected void onMeasure (int, int)
float viewAspectRatio
float aspectDeformation
int widthMeasureSpec
int heightMeasureSpec
int width
int height
}
com/google/android/exoplayer/MediaCodecUtil$DecoderQueryException.class
MediaCodecUtil.java
package com.google.android.exoplayer
public com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException extends java.lang.Exception {
private void <init> (java.lang.Throwable)
Throwable cause
synthetic void <init> (java.lang.Throwable, com.google.android.exoplayer.MediaCodecUtil$1)
Throwable x0
com.google.android.exoplayer.MediaCodecUtil$1 x1
}
com/google/android/exoplayer/DefaultLoadControl.class
DefaultLoadControl.java
package com.google.android.exoplayer
public com.google.android.exoplayer.DefaultLoadControl extends java.lang.Object implements com.google.android.exoplayer.LoadControl {
public static final int DEFAULT_LOW_WATERMARK_MS
public static final int DEFAULT_HIGH_WATERMARK_MS
public static final float DEFAULT_LOW_POOL_LOAD
public static final float DEFAULT_HIGH_POOL_LOAD
private static final int ABOVE_HIGH_WATERMARK
private static final int BETWEEN_WATERMARKS
private static final int BELOW_LOW_WATERMARK
private final com.google.android.exoplayer.upstream.Allocator allocator
private final java.util.List loaders
private final java.util.HashMap loaderStates
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.DefaultLoadControl$EventListener eventListener
private final long lowWatermarkUs
private final long highWatermarkUs
private final float lowPoolLoad
private final float highPoolLoad
private int targetBufferSize
private long maxLoadStartPositionUs
private int bufferPoolState
private boolean fillingBuffers
private boolean streamingPrioritySet
public void <init> (com.google.android.exoplayer.upstream.Allocator)
com.google.android.exoplayer.upstream.Allocator allocator
public void <init> (com.google.android.exoplayer.upstream.Allocator, android.os.Handler, com.google.android.exoplayer.DefaultLoadControl$EventListener)
com.google.android.exoplayer.upstream.Allocator allocator
android.os.Handler eventHandler
com.google.android.exoplayer.DefaultLoadControl$EventListener eventListener
public void <init> (com.google.android.exoplayer.upstream.Allocator, android.os.Handler, com.google.android.exoplayer.DefaultLoadControl$EventListener, int, int, float, float)
com.google.android.exoplayer.upstream.Allocator allocator
android.os.Handler eventHandler
com.google.android.exoplayer.DefaultLoadControl$EventListener eventListener
int lowWatermarkMs
int highWatermarkMs
float lowPoolLoad
float highPoolLoad
public void register (java.lang.Object, int)
Object loader
int bufferSizeContribution
public void unregister (java.lang.Object)
Object loader
com.google.android.exoplayer.DefaultLoadControl$LoaderState state
public void trimAllocator ()
public com.google.android.exoplayer.upstream.Allocator getAllocator ()
public boolean update (java.lang.Object, long, long, boolean, boolean)
Object loader
long playbackPositionUs
long nextLoadPositionUs
boolean loading
boolean failed
int loaderBufferState
com.google.android.exoplayer.DefaultLoadControl$LoaderState loaderState
boolean loaderStateChanged
int allocatedSize
int bufferPoolState
boolean bufferPoolStateChanged
private int getLoaderBufferState (long, long)
long timeUntilNextLoadPosition
long playbackPositionUs
long nextLoadPositionUs
private int getBufferPoolState (int)
int allocatedSize
float bufferPoolLoad
private void updateControlState ()
com.google.android.exoplayer.DefaultLoadControl$LoaderState loaderState
int i
Object loader
com.google.android.exoplayer.DefaultLoadControl$LoaderState loaderState
long loaderTime
int i
boolean loading
boolean failed
boolean haveNextLoadPosition
int highestState
private void notifyLoadingChanged (boolean)
boolean loading
static synthetic com.google.android.exoplayer.DefaultLoadControl$EventListener access$000 (com.google.android.exoplayer.DefaultLoadControl)
com.google.android.exoplayer.DefaultLoadControl x0
}
com/google/android/exoplayer/MediaCodecUtil$1.class
MediaCodecUtil.java
package com.google.android.exoplayer
synthetic com.google.android.exoplayer.MediaCodecUtil$1 extends java.lang.Object {
}
com/google/android/exoplayer/DefaultLoadControl$1.class
DefaultLoadControl.java
package com.google.android.exoplayer
com.google.android.exoplayer.DefaultLoadControl$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic boolean val$loading
final synthetic com.google.android.exoplayer.DefaultLoadControl this$0
void <init> (com.google.android.exoplayer.DefaultLoadControl, boolean)
public void run ()
}
com/google/android/exoplayer/MediaCodecVideoTrackRenderer$3.class
MediaCodecVideoTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecVideoTrackRenderer$3 extends java.lang.Object implements java.lang.Runnable {
final synthetic int val$countToNotify
final synthetic long val$elapsedToNotify
final synthetic com.google.android.exoplayer.MediaCodecVideoTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecVideoTrackRenderer, int, long)
public void run ()
}
com/google/android/exoplayer/FrameworkSampleSource.class
FrameworkSampleSource.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.FrameworkSampleSource extends java.lang.Object implements com.google.android.exoplayer.SampleSource {
private static final int TRACK_STATE_DISABLED
private static final int TRACK_STATE_ENABLED
private static final int TRACK_STATE_FORMAT_SENT
private final android.content.Context context
private final android.net.Uri uri
private final java.util.Map headers
private final java.io.FileDescriptor fileDescriptor
private final long fileDescriptorOffset
private final long fileDescriptorLength
private android.media.MediaExtractor extractor
private com.google.android.exoplayer.TrackInfo[] trackInfos
private boolean prepared
private int remainingReleaseCount
private int[] trackStates
private boolean[] pendingDiscontinuities
private long seekPositionUs
public void <init> (android.content.Context, android.net.Uri, java.util.Map, int)
android.content.Context context
android.net.Uri uri
java.util.Map headers
int downstreamRendererCount
public void <init> (java.io.FileDescriptor, long, long, int)
java.io.FileDescriptor fileDescriptor
long offset
long length
int downstreamRendererCount
public boolean prepare () throws java.io.IOException
android.media.MediaFormat format
long durationUs
String mime
int i
public int getTrackCount ()
public com.google.android.exoplayer.TrackInfo getTrackInfo (int)
int track
public void enable (int, long)
int track
long positionUs
public boolean continueBuffering (long)
long positionUs
public int readData (int, long, com.google.android.exoplayer.MediaFormatHolder, com.google.android.exoplayer.SampleHolder, boolean)
int offset
int track
long positionUs
com.google.android.exoplayer.MediaFormatHolder formatHolder
com.google.android.exoplayer.SampleHolder sampleHolder
boolean onlyReadDiscontinuity
int extractorTrackIndex
private java.util.Map getPsshInfoV18 ()
java.util.Map psshInfo
public void disable (int)
int track
public void seekToUs (long)
int i
long positionUs
public long getBufferedPositionUs ()
long sampleTime
long bufferedDurationUs
public void release ()
}
com/google/android/exoplayer/MediaFormat.class
MediaFormat.java
package com.google.android.exoplayer
public com.google.android.exoplayer.MediaFormat extends java.lang.Object {
private static final String KEY_PIXEL_WIDTH_HEIGHT_RATIO
public static final int NO_VALUE
public final String mimeType
public final int maxInputSize
public final int width
public final int height
public final float pixelWidthHeightRatio
public final int channelCount
public final int sampleRate
public final int bitrate
private int maxWidth
private int maxHeight
public final java.util.List initializationData
private int hashCode
private android.media.MediaFormat frameworkMediaFormat
public static com.google.android.exoplayer.MediaFormat createFromFrameworkMediaFormatV16 (android.media.MediaFormat)
android.media.MediaFormat format
public static com.google.android.exoplayer.MediaFormat createVideoFormat (java.lang.String, int, int, int, java.util.List)
String mimeType
int maxInputSize
int width
int height
java.util.List initializationData
public static com.google.android.exoplayer.MediaFormat createVideoFormat (java.lang.String, int, int, int, float, java.util.List)
String mimeType
int maxInputSize
int width
int height
float pixelWidthHeightRatio
java.util.List initializationData
public static com.google.android.exoplayer.MediaFormat createAudioFormat (java.lang.String, int, int, int, java.util.List)
String mimeType
int maxInputSize
int channelCount
int sampleRate
java.util.List initializationData
public static com.google.android.exoplayer.MediaFormat createAudioFormat (java.lang.String, int, int, int, int, java.util.List)
String mimeType
int maxInputSize
int channelCount
int sampleRate
int bitrate
java.util.List initializationData
public static com.google.android.exoplayer.MediaFormat createId3Format ()
public static com.google.android.exoplayer.MediaFormat createEia608Format ()
public static com.google.android.exoplayer.MediaFormat createTtmlFormat ()
public static com.google.android.exoplayer.MediaFormat createFormatForMimeType (java.lang.String)
String mimeType
private void <init> (android.media.MediaFormat)
java.nio.ByteBuffer buffer
byte[] data
int i
android.media.MediaFormat format
private void <init> (java.lang.String, int, int, int, float, int, int, int, java.util.List)
String mimeType
int maxInputSize
int width
int height
float pixelWidthHeightRatio
int channelCount
int sampleRate
int bitrate
java.util.List initializationData
public void setMaxVideoDimensions (int, int)
int maxWidth
int maxHeight
public int getMaxVideoWidth ()
public int getMaxVideoHeight ()
public int hashCode ()
int i
int result
public boolean equals (java.lang.Object)
Object obj
public boolean equals (com.google.android.exoplayer.MediaFormat, boolean)
com.google.android.exoplayer.MediaFormat other
boolean ignoreMaxDimensions
private boolean equalsInternal (com.google.android.exoplayer.MediaFormat, boolean)
int i
com.google.android.exoplayer.MediaFormat other
boolean ignoreMaxDimensions
public java.lang.String toString ()
public final android.media.MediaFormat getFrameworkMediaFormatV16 ()
int i
android.media.MediaFormat format
private final void maybeSetMaxDimensionsV16 (android.media.MediaFormat)
android.media.MediaFormat format
private static final void maybeSetIntegerV16 (android.media.MediaFormat, java.lang.String, int)
android.media.MediaFormat format
String key
int value
private static final void maybeSetFloatV16 (android.media.MediaFormat, java.lang.String, float)
android.media.MediaFormat format
String key
float value
private static final int getOptionalIntegerV16 (android.media.MediaFormat, java.lang.String)
android.media.MediaFormat format
String key
private static final float getOptionalFloatV16 (android.media.MediaFormat, java.lang.String)
android.media.MediaFormat format
String key
}
com/google/android/exoplayer/ExoPlayer$Factory.class
ExoPlayer.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.ExoPlayer$Factory extends java.lang.Object {
public static final int DEFAULT_MIN_BUFFER_MS
public static final int DEFAULT_MIN_REBUFFER_MS
private void <init> ()
public static com.google.android.exoplayer.ExoPlayer newInstance (int, int, int)
int rendererCount
int minBufferMs
int minRebufferMs
public static com.google.android.exoplayer.ExoPlayer newInstance (int)
int rendererCount
public static com.google.android.exoplayer.ExoPlayer newInstance (int, int)
int rendererCount
int minRebufferMs
}
com/google/android/exoplayer/MediaCodecAudioTrackRenderer.class
MediaCodecAudioTrackRenderer.java
package com.google.android.exoplayer
public com.google.android.exoplayer.MediaCodecAudioTrackRenderer extends com.google.android.exoplayer.MediaCodecTrackRenderer {
public static final int MSG_SET_VOLUME
private final com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener eventListener
private final com.google.android.exoplayer.audio.AudioTrack audioTrack
private int audioSessionId
private long currentPositionUs
public void <init> (com.google.android.exoplayer.SampleSource)
com.google.android.exoplayer.SampleSource source
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.drm.DrmSessionManager, boolean)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
boolean playClearSamplesWithoutKeys
public void <init> (com.google.android.exoplayer.SampleSource, android.os.Handler, com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener)
com.google.android.exoplayer.SampleSource source
android.os.Handler eventHandler
com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener eventListener
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.drm.DrmSessionManager, boolean, android.os.Handler, com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
boolean playClearSamplesWithoutKeys
android.os.Handler eventHandler
com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener eventListener
protected boolean isTimeSource ()
protected boolean handlesMimeType (java.lang.String)
String mimeType
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void onOutputFormatChanged (android.media.MediaFormat)
android.media.MediaFormat format
protected void onAudioSessionId (int)
int audioSessionId
protected void onStarted ()
protected void onStopped ()
protected boolean isEnded ()
protected boolean isReady ()
protected long getCurrentPositionUs ()
long audioTrackCurrentPositionUs
protected void onDisabled ()
protected void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
protected boolean processOutputBuffer (long, long, android.media.MediaCodec, java.nio.ByteBuffer, android.media.MediaCodec$BufferInfo, int, boolean) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.audio.AudioTrack$InitializationException e
com.google.android.exoplayer.audio.AudioTrack$WriteException e
long positionUs
long elapsedRealtimeUs
android.media.MediaCodec codec
java.nio.ByteBuffer buffer
android.media.MediaCodec$BufferInfo bufferInfo
int bufferIndex
boolean shouldSkip
int handleBufferResult
public void handleMessage (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
int messageType
Object message
private void notifyAudioTrackInitializationError (com.google.android.exoplayer.audio.AudioTrack$InitializationException)
com.google.android.exoplayer.audio.AudioTrack$InitializationException e
private void notifyAudioTrackWriteError (com.google.android.exoplayer.audio.AudioTrack$WriteException)
com.google.android.exoplayer.audio.AudioTrack$WriteException e
static synthetic com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener access$000 (com.google.android.exoplayer.MediaCodecAudioTrackRenderer)
com.google.android.exoplayer.MediaCodecAudioTrackRenderer x0
}
com/google/android/exoplayer/MediaFormatHolder.class
MediaFormatHolder.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.MediaFormatHolder extends java.lang.Object {
public com.google.android.exoplayer.MediaFormat format
public java.util.Map drmInitData
public void <init> ()
}
com/google/android/exoplayer/DummyTrackRenderer.class
DummyTrackRenderer.java
package com.google.android.exoplayer
public com.google.android.exoplayer.DummyTrackRenderer extends com.google.android.exoplayer.TrackRenderer {
public void <init> ()
protected int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
protected boolean isEnded ()
protected boolean isReady ()
protected void seekTo (long)
long positionUs
protected void doSomeWork (long, long)
long positionUs
long elapsedRealtimeUs
protected long getDurationUs ()
protected long getBufferedPositionUs ()
protected long getCurrentPositionUs ()
}
com/google/android/exoplayer/SampleHolder.class
SampleHolder.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.SampleHolder extends java.lang.Object {
public static final int BUFFER_REPLACEMENT_MODE_DISABLED
public static final int BUFFER_REPLACEMENT_MODE_NORMAL
public static final int BUFFER_REPLACEMENT_MODE_DIRECT
public final com.google.android.exoplayer.CryptoInfo cryptoInfo
public java.nio.ByteBuffer data
public int size
public int flags
public long timeUs
public boolean decodeOnly
private final int bufferReplacementMode
public void <init> (int)
int bufferReplacementMode
public boolean replaceBuffer (int)
int capacity
}
com/google/android/exoplayer/MediaCodecTrackRenderer$2.class
MediaCodecTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecTrackRenderer$2 extends java.lang.Object implements java.lang.Runnable {
final synthetic android.media.MediaCodec$CryptoException val$e
final synthetic com.google.android.exoplayer.MediaCodecTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecTrackRenderer, android.media.MediaCodec$CryptoException)
public void run ()
}
com/google/android/exoplayer/DefaultLoadControl$LoaderState.class
DefaultLoadControl.java
package com.google.android.exoplayer
com.google.android.exoplayer.DefaultLoadControl$LoaderState extends java.lang.Object {
public final int bufferSizeContribution
public int bufferState
public boolean loading
public boolean failed
public long nextLoadPositionUs
public void <init> (int)
int bufferSizeContribution
}
com/google/android/exoplayer/MediaCodecTrackRenderer$1.class
MediaCodecTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecTrackRenderer$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException val$e
final synthetic com.google.android.exoplayer.MediaCodecTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecTrackRenderer, com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException)
public void run ()
}
com/google/android/exoplayer/MediaCodecVideoTrackRenderer$1.class
MediaCodecVideoTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaCodecVideoTrackRenderer$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic int val$currentWidth
final synthetic int val$currentHeight
final synthetic float val$currentPixelWidthHeightRatio
final synthetic com.google.android.exoplayer.MediaCodecVideoTrackRenderer this$0
void <init> (com.google.android.exoplayer.MediaCodecVideoTrackRenderer, int, int, float)
public void run ()
}
com/google/android/exoplayer/ExoPlayer.class
ExoPlayer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.ExoPlayer extends java.lang.Object {
public static final int STATE_IDLE
public static final int STATE_PREPARING
public static final int STATE_BUFFERING
public static final int STATE_READY
public static final int STATE_ENDED
public static final long UNKNOWN_TIME
public abstract android.os.Looper getPlaybackLooper ()
public abstract void addListener (com.google.android.exoplayer.ExoPlayer$Listener)
public abstract void removeListener (com.google.android.exoplayer.ExoPlayer$Listener)
public abstract int getPlaybackState ()
public transient abstract void prepare (com.google.android.exoplayer.TrackRenderer[])
public abstract void setRendererEnabled (int, boolean)
public abstract boolean getRendererEnabled (int)
public abstract void setPlayWhenReady (boolean)
public abstract boolean getPlayWhenReady ()
public abstract boolean isPlayWhenReadyCommitted ()
public abstract void seekTo (long)
public abstract void stop ()
public abstract void release ()
public abstract void sendMessage (com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent, int, java.lang.Object)
public abstract void blockingSendMessage (com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent, int, java.lang.Object)
public abstract long getDuration ()
public abstract long getCurrentPosition ()
public abstract long getBufferedPosition ()
public abstract int getBufferedPercentage ()
}
com/google/android/exoplayer/DecoderInfo.class
DecoderInfo.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.DecoderInfo extends java.lang.Object {
public final String name
public final boolean adaptive
void <init> (java.lang.String, boolean)
String name
boolean adaptive
}
com/google/android/exoplayer/C.class
C.java
package com.google.android.exoplayer
public final com.google.android.exoplayer.C extends java.lang.Object {
public static final long UNKNOWN_TIME_US
public static final long MICROS_PER_SECOND
public static final int LENGTH_UNBOUNDED
public static final String UTF8_NAME
private void <init> ()
}
com/google/android/exoplayer/ExoPlayer$Listener.class
ExoPlayer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.ExoPlayer$Listener extends java.lang.Object {
public abstract void onPlayerStateChanged (boolean, int)
public abstract void onPlayWhenReadyCommitted ()
public abstract void onPlayerError (com.google.android.exoplayer.ExoPlaybackException)
}
com/google/android/exoplayer/MediaCodecVideoTrackRenderer.class
MediaCodecVideoTrackRenderer.java
package com.google.android.exoplayer
public com.google.android.exoplayer.MediaCodecVideoTrackRenderer extends com.google.android.exoplayer.MediaCodecTrackRenderer {
private static final String KEY_CROP_LEFT
private static final String KEY_CROP_RIGHT
private static final String KEY_CROP_BOTTOM
private static final String KEY_CROP_TOP
public static final int MSG_SET_SURFACE
private final com.google.android.exoplayer.MediaCodecVideoTrackRenderer$FrameReleaseTimeHelper frameReleaseTimeHelper
private final com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener eventListener
private final long allowedJoiningTimeUs
private final int videoScalingMode
private final int maxDroppedFrameCountToNotify
private android.view.Surface surface
private boolean reportedDrawnToSurface
private boolean renderedFirstFrame
private long joiningDeadlineUs
private long droppedFrameAccumulationStartTimeMs
private int droppedFrameCount
private int currentWidth
private int currentHeight
private float currentPixelWidthHeightRatio
private int lastReportedWidth
private int lastReportedHeight
private float lastReportedPixelWidthHeightRatio
public void <init> (com.google.android.exoplayer.SampleSource, int)
com.google.android.exoplayer.SampleSource source
int videoScalingMode
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.drm.DrmSessionManager, boolean, int)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
boolean playClearSamplesWithoutKeys
int videoScalingMode
public void <init> (com.google.android.exoplayer.SampleSource, int, long)
com.google.android.exoplayer.SampleSource source
int videoScalingMode
long allowedJoiningTimeMs
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.drm.DrmSessionManager, boolean, int, long)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
boolean playClearSamplesWithoutKeys
int videoScalingMode
long allowedJoiningTimeMs
public void <init> (com.google.android.exoplayer.SampleSource, int, long, android.os.Handler, com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener, int)
com.google.android.exoplayer.SampleSource source
int videoScalingMode
long allowedJoiningTimeMs
android.os.Handler eventHandler
com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener eventListener
int maxDroppedFrameCountToNotify
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.drm.DrmSessionManager, boolean, int, long, com.google.android.exoplayer.MediaCodecVideoTrackRenderer$FrameReleaseTimeHelper, android.os.Handler, com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener, int)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.drm.DrmSessionManager drmSessionManager
boolean playClearSamplesWithoutKeys
int videoScalingMode
long allowedJoiningTimeMs
com.google.android.exoplayer.MediaCodecVideoTrackRenderer$FrameReleaseTimeHelper frameReleaseTimeHelper
android.os.Handler eventHandler
com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener eventListener
int maxDroppedFrameCountToNotify
protected boolean handlesMimeType (java.lang.String)
String mimeType
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
protected boolean isReady ()
protected void onStarted ()
protected void onStopped ()
public void onDisabled ()
public void handleMessage (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
int messageType
Object message
private void setSurface (android.view.Surface) throws com.google.android.exoplayer.ExoPlaybackException
android.view.Surface surface
int state
protected boolean shouldInitCodec ()
protected void configureCodec (android.media.MediaCodec, android.media.MediaFormat, android.media.MediaCrypto)
android.media.MediaCodec codec
android.media.MediaFormat format
android.media.MediaCrypto crypto
protected void onInputFormatChanged (com.google.android.exoplayer.MediaFormatHolder) throws com.google.android.exoplayer.ExoPlaybackException
com.google.android.exoplayer.MediaFormatHolder holder
protected void onOutputFormatChanged (android.media.MediaFormat)
android.media.MediaFormat format
boolean hasCrop
protected boolean canReconfigureCodec (android.media.MediaCodec, boolean, com.google.android.exoplayer.MediaFormat, com.google.android.exoplayer.MediaFormat)
android.media.MediaCodec codec
boolean codecIsAdaptive
com.google.android.exoplayer.MediaFormat oldFormat
com.google.android.exoplayer.MediaFormat newFormat
protected boolean processOutputBuffer (long, long, android.media.MediaCodec, java.nio.ByteBuffer, android.media.MediaCodec$BufferInfo, int, boolean)
long adjustedReleaseTimeNs
InterruptedException e
long positionUs
long elapsedRealtimeUs
android.media.MediaCodec codec
java.nio.ByteBuffer buffer
android.media.MediaCodec$BufferInfo bufferInfo
int bufferIndex
boolean shouldSkip
long elapsedSinceStartOfLoopUs
long earlyUs
long systemTimeNs
long unadjustedFrameReleaseTimeNs
long adjustedReleaseTimeNs
private void skipOutputBuffer (android.media.MediaCodec, int)
android.media.MediaCodec codec
int bufferIndex
private void dropOutputBuffer (android.media.MediaCodec, int)
android.media.MediaCodec codec
int bufferIndex
private void renderOutputBufferImmediate (android.media.MediaCodec, int)
android.media.MediaCodec codec
int bufferIndex
private void renderOutputBufferTimedV21 (android.media.MediaCodec, int, long)
android.media.MediaCodec codec
int bufferIndex
long releaseTimeNs
private void maybeNotifyVideoSizeChanged ()
int currentWidth
int currentHeight
float currentPixelWidthHeightRatio
private void maybeNotifyDrawnToSurface ()
android.view.Surface surface
private void maybeNotifyDroppedFrameCount ()
long now
int countToNotify
long elapsedToNotify
static synthetic com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener access$000 (com.google.android.exoplayer.MediaCodecVideoTrackRenderer)
com.google.android.exoplayer.MediaCodecVideoTrackRenderer x0
}
com/google/android/exoplayer/MediaCodecUtil.class
MediaCodecUtil.java
package com.google.android.exoplayer
public com.google.android.exoplayer.MediaCodecUtil extends java.lang.Object {
private static final String TAG
private static final java.util.HashMap codecs
public void <init> ()
public static com.google.android.exoplayer.DecoderInfo getDecoderInfo (java.lang.String, boolean) throws com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException
String mimeType
boolean secure
android.util.Pair info
public static synchronized void warmCodec (java.lang.String, boolean)
com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException e
String mimeType
boolean secure
private static synchronized android.util.Pair getMediaCodecInfo (java.lang.String, boolean) throws com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException
String mimeType
boolean secure
com.google.android.exoplayer.MediaCodecUtil$CodecKey key
com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat mediaCodecList
android.util.Pair codecInfo
private static android.util.Pair getMediaCodecInfo (com.google.android.exoplayer.MediaCodecUtil$CodecKey, com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat) throws com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException
Exception e
com.google.android.exoplayer.MediaCodecUtil$CodecKey key
com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat mediaCodecList
private static android.util.Pair getMediaCodecInfoInternal (com.google.android.exoplayer.MediaCodecUtil$CodecKey, com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat)
android.media.MediaCodecInfo$CodecCapabilities capabilities
boolean secure
String supportedType
int j
String[] supportedTypes
android.media.MediaCodecInfo info
String codecName
int i
com.google.android.exoplayer.MediaCodecUtil$CodecKey key
com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat mediaCodecList
String mimeType
int numberOfCodecs
boolean secureDecodersExplicit
private static boolean isAdaptive (android.media.MediaCodecInfo$CodecCapabilities)
android.media.MediaCodecInfo$CodecCapabilities capabilities
private static boolean isAdaptiveV19 (android.media.MediaCodecInfo$CodecCapabilities)
android.media.MediaCodecInfo$CodecCapabilities capabilities
public static boolean isH264ProfileSupported (int, int) throws com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException
android.media.MediaCodecInfo$CodecProfileLevel profileLevel
int i
int profile
int level
android.util.Pair info
android.media.MediaCodecInfo$CodecCapabilities capabilities
public static int maxH264DecodableFrameSize () throws com.google.android.exoplayer.MediaCodecUtil$DecoderQueryException
android.media.MediaCodecInfo$CodecProfileLevel profileLevel
int i
android.util.Pair info
int maxH264DecodableFrameSize
android.media.MediaCodecInfo$CodecCapabilities capabilities
private static int avcLevelToMaxFrameSize (int)
int avcLevel
static void <clinit> ()
}
com/google/android/exoplayer/MediaCodecVideoTrackRenderer$EventListener.class
MediaCodecVideoTrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.MediaCodecVideoTrackRenderer$EventListener extends java.lang.Object implements com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener {
public abstract void onDroppedFrames (int, long)
public abstract void onVideoSizeChanged (int, int, float)
public abstract void onDrawnToSurface (android.view.Surface)
}
com/google/android/exoplayer/CryptoInfo.class
CryptoInfo.java
package com.google.android.exoplayer
public com.google.android.exoplayer.CryptoInfo extends java.lang.Object {
public byte[] iv
public byte[] key
public int mode
public int[] numBytesOfClearData
public int[] numBytesOfEncryptedData
public int numSubSamples
private final android.media.MediaCodec$CryptoInfo frameworkCryptoInfo
public void <init> ()
public void set (int, int[], int[], byte[], byte[], int)
int numSubSamples
int[] numBytesOfClearData
int[] numBytesOfEncryptedData
byte[] key
byte[] iv
int mode
public void setFromExtractorV16 (android.media.MediaExtractor)
android.media.MediaExtractor extractor
public android.media.MediaCodec$CryptoInfo getFrameworkCryptoInfoV16 ()
private android.media.MediaCodec$CryptoInfo newFrameworkCryptoInfoV16 ()
private void updateFrameworkCryptoInfoV16 ()
}
com/google/android/exoplayer/MediaClock.class
MediaClock.java
package com.google.android.exoplayer
com.google.android.exoplayer.MediaClock extends java.lang.Object {
private boolean started
private long positionUs
private long deltaUs
void <init> ()
public void start ()
public void stop ()
public void setPositionUs (long)
long timeUs
public long getPositionUs ()
private long elapsedRealtimeMinus (long)
long toSubtractUs
}
com/google/android/exoplayer/MediaCodecUtil$MediaCodecListCompatV16.class
MediaCodecUtil.java
package com.google.android.exoplayer
final com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompatV16 extends java.lang.Object implements com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat {
private void <init> ()
public int getCodecCount ()
public android.media.MediaCodecInfo getCodecInfoAt (int)
int index
public boolean secureDecodersExplicit ()
public boolean isSecurePlaybackSupported (java.lang.String, android.media.MediaCodecInfo$CodecCapabilities)
String mimeType
android.media.MediaCodecInfo$CodecCapabilities capabilities
synthetic void <init> (com.google.android.exoplayer.MediaCodecUtil$1)
com.google.android.exoplayer.MediaCodecUtil$1 x0
}
com/google/android/exoplayer/MediaCodecUtil$CodecKey.class
MediaCodecUtil.java
package com.google.android.exoplayer
final com.google.android.exoplayer.MediaCodecUtil$CodecKey extends java.lang.Object {
public final String mimeType
public final boolean secure
public void <init> (java.lang.String, boolean)
String mimeType
boolean secure
public int hashCode ()
int prime
int result
public boolean equals (java.lang.Object)
Object obj
com.google.android.exoplayer.MediaCodecUtil$CodecKey other
}
com/google/android/exoplayer/MediaCodecUtil$MediaCodecListCompatV21.class
MediaCodecUtil.java
package com.google.android.exoplayer
final com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompatV21 extends java.lang.Object implements com.google.android.exoplayer.MediaCodecUtil$MediaCodecListCompat {
private final int codecKind
private android.media.MediaCodecInfo[] mediaCodecInfos
public void <init> (boolean)
boolean includeSecure
public int getCodecCount ()
public android.media.MediaCodecInfo getCodecInfoAt (int)
int index
public boolean secureDecodersExplicit ()
public boolean isSecurePlaybackSupported (java.lang.String, android.media.MediaCodecInfo$CodecCapabilities)
String mimeType
android.media.MediaCodecInfo$CodecCapabilities capabilities
private void ensureMediaCodecInfosInitialized ()
}
com/google/android/exoplayer/MediaCodecTrackRenderer$EventListener.class
MediaCodecTrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener extends java.lang.Object {
public abstract void onDecoderInitializationError (com.google.android.exoplayer.MediaCodecTrackRenderer$DecoderInitializationException)
public abstract void onCryptoError (android.media.MediaCodec$CryptoException)
}
com/google/android/exoplayer/Ac3PassthroughAudioTrackRenderer$2.class
Ac3PassthroughAudioTrackRenderer.java
package com.google.android.exoplayer
com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer$2 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.audio.AudioTrack$WriteException val$e
final synthetic com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer this$0
void <init> (com.google.android.exoplayer.Ac3PassthroughAudioTrackRenderer, com.google.android.exoplayer.audio.AudioTrack$WriteException)
public void run ()
}
com/google/android/exoplayer/LoadControl.class
LoadControl.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.LoadControl extends java.lang.Object {
public abstract void register (java.lang.Object, int)
public abstract void unregister (java.lang.Object)
public abstract com.google.android.exoplayer.upstream.Allocator getAllocator ()
public abstract void trimAllocator ()
public abstract boolean update (java.lang.Object, long, long, boolean, boolean)
}
com/google/android/exoplayer/ExoPlaybackException.class
ExoPlaybackException.java
package com.google.android.exoplayer
public com.google.android.exoplayer.ExoPlaybackException extends java.lang.Exception {
public void <init> (java.lang.String)
String message
public void <init> (java.lang.Throwable)
Throwable cause
public void <init> (java.lang.String, java.lang.Throwable)
String message
Throwable cause
}
com/google/android/exoplayer/TrackRenderer.class
TrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.TrackRenderer extends java.lang.Object implements com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent {
protected static final int STATE_RELEASED
protected static final int STATE_IGNORE
protected static final int STATE_UNPREPARED
protected static final int STATE_PREPARED
protected static final int STATE_ENABLED
protected static final int STATE_STARTED
public static final long UNKNOWN_TIME_US
public static final long MATCH_LONGEST_US
public static final long END_OF_TRACK_US
private int state
public void <init> ()
protected boolean isTimeSource ()
protected final int getState ()
final int prepare () throws com.google.android.exoplayer.ExoPlaybackException
protected abstract int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
final void enable (long, boolean) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
boolean joining
protected void onEnabled (long, boolean) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
boolean joining
final void start () throws com.google.android.exoplayer.ExoPlaybackException
protected void onStarted () throws com.google.android.exoplayer.ExoPlaybackException
final void stop () throws com.google.android.exoplayer.ExoPlaybackException
protected void onStopped () throws com.google.android.exoplayer.ExoPlaybackException
final void disable () throws com.google.android.exoplayer.ExoPlaybackException
protected void onDisabled () throws com.google.android.exoplayer.ExoPlaybackException
final void release () throws com.google.android.exoplayer.ExoPlaybackException
protected void onReleased () throws com.google.android.exoplayer.ExoPlaybackException
protected abstract boolean isEnded ()
protected abstract boolean isReady ()
protected abstract void doSomeWork (long, long) throws com.google.android.exoplayer.ExoPlaybackException
protected abstract long getDurationUs ()
protected abstract long getCurrentPositionUs ()
protected abstract long getBufferedPositionUs ()
protected abstract void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
public void handleMessage (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
int what
Object object
}
com/google/android/exoplayer/ExoPlayerImpl.class
ExoPlayerImpl.java
package com.google.android.exoplayer
final com.google.android.exoplayer.ExoPlayerImpl extends java.lang.Object implements com.google.android.exoplayer.ExoPlayer {
private static final String TAG
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.ExoPlayerImplInternal internalPlayer
private final java.util.concurrent.CopyOnWriteArraySet listeners
private final boolean[] rendererEnabledFlags
private boolean playWhenReady
private int playbackState
private int pendingPlayWhenReadyAcks
public void <init> (int, int, int)
int i
int rendererCount
int minBufferMs
int minRebufferMs
public android.os.Looper getPlaybackLooper ()
public void addListener (com.google.android.exoplayer.ExoPlayer$Listener)
com.google.android.exoplayer.ExoPlayer$Listener listener
public void removeListener (com.google.android.exoplayer.ExoPlayer$Listener)
com.google.android.exoplayer.ExoPlayer$Listener listener
public int getPlaybackState ()
public transient void prepare (com.google.android.exoplayer.TrackRenderer[])
com.google.android.exoplayer.TrackRenderer[] renderers
public void setRendererEnabled (int, boolean)
int index
boolean enabled
public boolean getRendererEnabled (int)
int index
public void setPlayWhenReady (boolean)
com.google.android.exoplayer.ExoPlayer$Listener listener
java.util.Iterator i$
boolean playWhenReady
public boolean getPlayWhenReady ()
public boolean isPlayWhenReadyCommitted ()
public void seekTo (long)
long positionMs
public void stop ()
public void release ()
public void sendMessage (com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent, int, java.lang.Object)
com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent target
int messageType
Object message
public void blockingSendMessage (com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent, int, java.lang.Object)
com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent target
int messageType
Object message
public long getDuration ()
public long getCurrentPosition ()
public long getBufferedPosition ()
public int getBufferedPercentage ()
long bufferedPosition
long duration
void handleEvent (android.os.Message)
com.google.android.exoplayer.ExoPlayer$Listener listener
java.util.Iterator i$
com.google.android.exoplayer.ExoPlayer$Listener listener
java.util.Iterator i$
com.google.android.exoplayer.ExoPlayer$Listener listener
java.util.Iterator i$
com.google.android.exoplayer.ExoPlaybackException exception
android.os.Message msg
}
com/google/android/exoplayer/BehindLiveWindowException.class
BehindLiveWindowException.java
package com.google.android.exoplayer
public com.google.android.exoplayer.BehindLiveWindowException extends java.io.IOException {
public void <init> ()
public void <init> (java.lang.String)
String message
}
com/google/android/exoplayer/MediaCodecAudioTrackRenderer$EventListener.class
MediaCodecAudioTrackRenderer.java
package com.google.android.exoplayer
public abstract com.google.android.exoplayer.MediaCodecAudioTrackRenderer$EventListener extends java.lang.Object implements com.google.android.exoplayer.MediaCodecTrackRenderer$EventListener {
public abstract void onAudioTrackInitializationError (com.google.android.exoplayer.audio.AudioTrack$InitializationException)
public abstract void onAudioTrackWriteError (com.google.android.exoplayer.audio.AudioTrack$WriteException)
}
com/google/android/exoplayer/upstream/
com/google/android/exoplayer/upstream/HttpDataSource$InvalidResponseCodeException.class
HttpDataSource.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.HttpDataSource$InvalidResponseCodeException extends com.google.android.exoplayer.upstream.HttpDataSource$HttpDataSourceException {
public final int responseCode
public final java.util.Map headerFields
public void <init> (int, java.util.Map, com.google.android.exoplayer.upstream.DataSpec)
int responseCode
java.util.Map headerFields
com.google.android.exoplayer.upstream.DataSpec dataSpec
}
com/google/android/exoplayer/upstream/ByteArrayDataSink.class
ByteArrayDataSink.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.ByteArrayDataSink extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSink {
private java.io.ByteArrayOutputStream stream
public void <init> ()
public com.google.android.exoplayer.upstream.DataSink open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
com.google.android.exoplayer.upstream.DataSpec dataSpec
public void close () throws java.io.IOException
public void write (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int length
public byte[] getData ()
}
com/google/android/exoplayer/upstream/DataSourceInputStream.class
DataSourceInputStream.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.DataSourceInputStream extends java.io.InputStream {
private final com.google.android.exoplayer.upstream.DataSource dataSource
private final com.google.android.exoplayer.upstream.DataSpec dataSpec
private final byte[] singleByteArray
private boolean opened
private boolean closed
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
public int read () throws java.io.IOException
public int read (byte[]) throws java.io.IOException
byte[] buffer
public int read (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int length
public long skip (long) throws java.io.IOException
long byteCount
public void close () throws java.io.IOException
private void checkOpened () throws java.io.IOException
}
com/google/android/exoplayer/upstream/Loader$UnexpectedLoaderException.class
Loader.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.Loader$UnexpectedLoaderException extends java.io.IOException {
public void <init> (java.lang.Exception)
Exception cause
}
com/google/android/exoplayer/upstream/ByteArrayNonBlockingInputStream.class
ByteArrayNonBlockingInputStream.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.ByteArrayNonBlockingInputStream extends java.lang.Object implements com.google.android.exoplayer.upstream.NonBlockingInputStream {
private final byte[] data
private int position
public void <init> (byte[])
byte[] data
public int skip (int)
int length
int skipLength
public int read (byte[], int, int)
byte[] buffer
int offset
int length
int readLength
public int read (java.nio.ByteBuffer, int)
java.nio.ByteBuffer buffer
int length
int readLength
public long getAvailableByteCount ()
public boolean isEndOfStream ()
public void close ()
private int getReadLength (int)
int requestedLength
}
com/google/android/exoplayer/upstream/DataSourceStream$1.class
DataSourceStream.java
package com.google.android.exoplayer.upstream
synthetic com.google.android.exoplayer.upstream.DataSourceStream$1 extends java.lang.Object {
}
com/google/android/exoplayer/upstream/BufferPool.class
BufferPool.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.BufferPool extends java.lang.Object implements com.google.android.exoplayer.upstream.Allocator {
private static final int INITIAL_RECYCLED_BUFFERS_CAPACITY
public final int bufferLength
private int allocatedBufferCount
private int recycledBufferCount
private byte[][] recycledBuffers
public void <init> (int)
int bufferLength
public synchronized int getAllocatedSize ()
public synchronized void trim (int)
int targetSize
int targetBufferCount
int targetRecycledBufferCount
public synchronized com.google.android.exoplayer.upstream.Allocation allocate (int)
int size
synchronized byte[][] allocate (int, byte[][])
int i
int size
byte[][] existing
int requiredBufferCount
byte[][] buffers
int firstNewBufferIndex
synchronized void release (com.google.android.exoplayer.upstream.BufferPool$AllocationImpl)
byte[][] newRecycledBuffers
com.google.android.exoplayer.upstream.BufferPool$AllocationImpl allocation
byte[][] buffers
int newRecycledBufferCount
private int requiredBufferCount (long)
long size
}
com/google/android/exoplayer/upstream/DataSourceStream$DataSourceStreamLoadException.class
DataSourceStream.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.DataSourceStream$DataSourceStreamLoadException extends java.io.IOException {
public void <init> (java.io.IOException)
java.io.IOException cause
}
com/google/android/exoplayer/upstream/Aes128DataSource.class
Aes128DataSource.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.Aes128DataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private final com.google.android.exoplayer.upstream.DataSource upstream
private final byte[] secretKey
private final byte[] iv
private javax.crypto.CipherInputStream cipherInputStream
public void <init> (byte[], byte[], com.google.android.exoplayer.upstream.DataSource)
byte[] secretKey
byte[] iv
com.google.android.exoplayer.upstream.DataSource upstream
public long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
java.security.NoSuchAlgorithmException e
javax.crypto.NoSuchPaddingException e
java.security.InvalidKeyException e
java.security.InvalidAlgorithmParameterException e
com.google.android.exoplayer.upstream.DataSpec dataSpec
javax.crypto.Cipher cipher
java.security.Key cipherKey
java.security.spec.AlgorithmParameterSpec cipherIV
public void close () throws java.io.IOException
public int read (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int readLength
int bytesRead
}
com/google/android/exoplayer/upstream/DataSink.class
DataSink.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.DataSink extends java.lang.Object {
public abstract com.google.android.exoplayer.upstream.DataSink open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
public abstract void close () throws java.io.IOException
public abstract void write (byte[], int, int) throws java.io.IOException
}
com/google/android/exoplayer/upstream/DefaultBandwidthMeter.class
DefaultBandwidthMeter.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.DefaultBandwidthMeter extends java.lang.Object implements com.google.android.exoplayer.upstream.BandwidthMeter com.google.android.exoplayer.upstream.TransferListener {
private static final int DEFAULT_MAX_WEIGHT
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener eventListener
private final com.google.android.exoplayer.util.Clock clock
private final com.google.android.exoplayer.util.SlidingPercentile slidingPercentile
private long bytesAccumulator
private long startTimeMs
private long bitrateEstimate
private int streamCount
public void <init> ()
public void <init> (android.os.Handler, com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener)
android.os.Handler eventHandler
com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener eventListener
public void <init> (android.os.Handler, com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener, com.google.android.exoplayer.util.Clock)
android.os.Handler eventHandler
com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener eventListener
com.google.android.exoplayer.util.Clock clock
public void <init> (android.os.Handler, com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener, int)
android.os.Handler eventHandler
com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener eventListener
int maxWeight
public void <init> (android.os.Handler, com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener, com.google.android.exoplayer.util.Clock, int)
android.os.Handler eventHandler
com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener eventListener
com.google.android.exoplayer.util.Clock clock
int maxWeight
public synchronized long getBitrateEstimate ()
public synchronized void onTransferStart ()
public synchronized void onBytesTransferred (int)
int bytes
public synchronized void onTransferEnd ()
float bitsPerSecond
float bandwidthEstimateFloat
long nowMs
int elapsedMs
private void notifyBandwidthSample (int, long, long)
int elapsedMs
long bytes
long bitrate
static synthetic com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener access$000 (com.google.android.exoplayer.upstream.DefaultBandwidthMeter)
com.google.android.exoplayer.upstream.DefaultBandwidthMeter x0
}
com/google/android/exoplayer/upstream/UnexpectedLengthException.class
UnexpectedLengthException.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.UnexpectedLengthException extends java.io.IOException {
public final long expectedLength
public final long actualLength
public void <init> (long, long)
long expectedLength
long actualLength
}
com/google/android/exoplayer/upstream/NetworkLock.class
NetworkLock.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.NetworkLock extends java.lang.Object {
public static final com.google.android.exoplayer.upstream.NetworkLock instance
public static final int STREAMING_PRIORITY
public static final int DOWNLOAD_PRIORITY
private final Object lock
private final java.util.PriorityQueue queue
private int highestPriority
private void <init> ()
public void proceed (int) throws java.lang.InterruptedException
int priority
public boolean proceedNonBlocking (int)
int priority
public void proceedOrThrow (int) throws com.google.android.exoplayer.upstream.NetworkLock$PriorityTooLowException
int priority
public void add (int)
int priority
public void remove (int)
int priority
static void <clinit> ()
}
com/google/android/exoplayer/upstream/NetworkLock$PriorityTooLowException.class
NetworkLock.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.NetworkLock$PriorityTooLowException extends java.io.IOException {
public void <init> (int, int)
int priority
int highestPriority
}
com/google/android/exoplayer/upstream/Loader.class
Loader.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.Loader extends java.lang.Object {
private static final int MSG_END_OF_SOURCE
private static final int MSG_ERROR
private final java.util.concurrent.ExecutorService downloadExecutorService
private com.google.android.exoplayer.upstream.Loader$LoadTask currentTask
private boolean loading
public void <init> (java.lang.String)
String threadName
public void startLoading (com.google.android.exoplayer.upstream.Loader$Loadable, com.google.android.exoplayer.upstream.Loader$Callback)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
com.google.android.exoplayer.upstream.Loader$Callback callback
android.os.Looper myLooper
public void startLoading (android.os.Looper, com.google.android.exoplayer.upstream.Loader$Loadable, com.google.android.exoplayer.upstream.Loader$Callback)
android.os.Looper looper
com.google.android.exoplayer.upstream.Loader$Loadable loadable
com.google.android.exoplayer.upstream.Loader$Callback callback
public boolean isLoading ()
public void cancelLoading ()
public void release ()
static synthetic boolean access$002 (com.google.android.exoplayer.upstream.Loader, boolean)
com.google.android.exoplayer.upstream.Loader x0
boolean x1
static synthetic com.google.android.exoplayer.upstream.Loader$LoadTask access$102 (com.google.android.exoplayer.upstream.Loader, com.google.android.exoplayer.upstream.Loader$LoadTask)
com.google.android.exoplayer.upstream.Loader x0
com.google.android.exoplayer.upstream.Loader$LoadTask x1
}
com/google/android/exoplayer/upstream/BufferPool$AllocationImpl.class
BufferPool.java
package com.google.android.exoplayer.upstream
com.google.android.exoplayer.upstream.BufferPool$AllocationImpl extends java.lang.Object implements com.google.android.exoplayer.upstream.Allocation {
private byte[][] buffers
final synthetic com.google.android.exoplayer.upstream.BufferPool this$0
public void <init> (com.google.android.exoplayer.upstream.BufferPool, byte[][])
byte[][] buffers
public void ensureCapacity (int)
int size
public int capacity ()
public byte[][] getBuffers ()
public int getFragmentOffset (int)
int index
public int getFragmentLength (int)
int index
public void release ()
}
com/google/android/exoplayer/upstream/HttpDataSource$HttpDataSourceException.class
HttpDataSource.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.HttpDataSource$HttpDataSourceException extends java.io.IOException {
public final com.google.android.exoplayer.upstream.DataSpec dataSpec
public void <init> (com.google.android.exoplayer.upstream.DataSpec)
com.google.android.exoplayer.upstream.DataSpec dataSpec
public void <init> (java.lang.String, com.google.android.exoplayer.upstream.DataSpec)
String message
com.google.android.exoplayer.upstream.DataSpec dataSpec
public void <init> (java.io.IOException, com.google.android.exoplayer.upstream.DataSpec)
java.io.IOException cause
com.google.android.exoplayer.upstream.DataSpec dataSpec
public void <init> (java.lang.String, java.io.IOException, com.google.android.exoplayer.upstream.DataSpec)
String message
java.io.IOException cause
com.google.android.exoplayer.upstream.DataSpec dataSpec
}
com/google/android/exoplayer/upstream/TransferListener.class
TransferListener.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.TransferListener extends java.lang.Object {
public abstract void onTransferStart ()
public abstract void onBytesTransferred (int)
public abstract void onTransferEnd ()
}
com/google/android/exoplayer/upstream/FileDataSource$FileDataSourceException.class
FileDataSource.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.FileDataSource$FileDataSourceException extends java.io.IOException {
public void <init> (java.io.IOException)
java.io.IOException cause
}
com/google/android/exoplayer/upstream/DataSourceStream$ReadHead.class
DataSourceStream.java
package com.google.android.exoplayer.upstream
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead extends java.lang.Object {
private int position
private int fragmentIndex
private int fragmentOffset
private int fragmentRemaining
private void <init> ()
public void reset ()
synthetic void <init> (com.google.android.exoplayer.upstream.DataSourceStream$1)
com.google.android.exoplayer.upstream.DataSourceStream$1 x0
static synthetic int access$100 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
static synthetic int access$202 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
int x1
static synthetic int access$302 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
int x1
static synthetic int access$402 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
int x1
static synthetic int access$400 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
static synthetic int access$208 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
static synthetic int access$200 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
static synthetic int access$300 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
static synthetic int access$112 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
int x1
static synthetic int access$312 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
int x1
static synthetic int access$420 (com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead x0
int x1
}
com/google/android/exoplayer/upstream/DataSource.class
DataSource.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.DataSource extends java.lang.Object {
public abstract long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
public abstract void close () throws java.io.IOException
public abstract int read (byte[], int, int) throws java.io.IOException
}
com/google/android/exoplayer/upstream/HttpDataSource$1.class
HttpDataSource.java
package com.google.android.exoplayer.upstream
final com.google.android.exoplayer.upstream.HttpDataSource$1 extends java.lang.Object implements com.google.android.exoplayer.util.Predicate {
void <init> ()
public boolean evaluate (java.lang.String)
String contentType
public volatile synthetic boolean evaluate (java.lang.Object)
Object x0
}
com/google/android/exoplayer/upstream/DataSpec.class
DataSpec.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.DataSpec extends java.lang.Object {
public final android.net.Uri uri
public final boolean uriIsFullStream
public final long absoluteStreamPosition
public final long position
public final long length
public final String key
public void <init> (android.net.Uri)
android.net.Uri uri
public void <init> (android.net.Uri, long, long, java.lang.String)
android.net.Uri uri
long absoluteStreamPosition
long length
String key
public void <init> (android.net.Uri, long, long, java.lang.String, long)
android.net.Uri uri
long absoluteStreamPosition
long length
String key
long position
public void <init> (android.net.Uri, long, long, java.lang.String, long, boolean)
android.net.Uri uri
long absoluteStreamPosition
long length
String key
long position
boolean uriIsFullStream
public java.lang.String toString ()
}
com/google/android/exoplayer/upstream/DefaultBandwidthMeter$EventListener.class
DefaultBandwidthMeter.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.DefaultBandwidthMeter$EventListener extends java.lang.Object {
public abstract void onBandwidthSample (int, long, long)
}
com/google/android/exoplayer/upstream/FileDataSource.class
FileDataSource.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.FileDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private final com.google.android.exoplayer.upstream.TransferListener listener
private java.io.RandomAccessFile file
private long bytesRemaining
private boolean opened
public void <init> ()
public void <init> (com.google.android.exoplayer.upstream.TransferListener)
com.google.android.exoplayer.upstream.TransferListener listener
public long open (com.google.android.exoplayer.upstream.DataSpec) throws com.google.android.exoplayer.upstream.FileDataSource$FileDataSourceException
java.io.IOException e
com.google.android.exoplayer.upstream.DataSpec dataSpec
public int read (byte[], int, int) throws com.google.android.exoplayer.upstream.FileDataSource$FileDataSourceException
java.io.IOException e
int bytesRead
byte[] buffer
int offset
int readLength
public void close () throws com.google.android.exoplayer.upstream.FileDataSource$FileDataSourceException
java.io.IOException e
}
com/google/android/exoplayer/upstream/Loader$LoadTask.class
Loader.java
package com.google.android.exoplayer.upstream
final com.google.android.exoplayer.upstream.Loader$LoadTask extends android.os.Handler implements java.lang.Runnable {
private static final String TAG
private final com.google.android.exoplayer.upstream.Loader$Loadable loadable
private final com.google.android.exoplayer.upstream.Loader$Callback callback
private volatile Thread executorThread
final synthetic com.google.android.exoplayer.upstream.Loader this$0
public void <init> (com.google.android.exoplayer.upstream.Loader, android.os.Looper, com.google.android.exoplayer.upstream.Loader$Loadable, com.google.android.exoplayer.upstream.Loader$Callback)
android.os.Looper looper
com.google.android.exoplayer.upstream.Loader$Loadable loadable
com.google.android.exoplayer.upstream.Loader$Callback callback
public void quit ()
public void run ()
java.io.IOException e
InterruptedException e
Exception e
public void handleMessage (android.os.Message)
android.os.Message msg
private void onFinished ()
}
com/google/android/exoplayer/upstream/DefaultBandwidthMeter$1.class
DefaultBandwidthMeter.java
package com.google.android.exoplayer.upstream
com.google.android.exoplayer.upstream.DefaultBandwidthMeter$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic int val$elapsedMs
final synthetic long val$bytes
final synthetic long val$bitrate
final synthetic com.google.android.exoplayer.upstream.DefaultBandwidthMeter this$0
void <init> (com.google.android.exoplayer.upstream.DefaultBandwidthMeter, int, long, long)
public void run ()
}
com/google/android/exoplayer/upstream/HttpDataSource.class
HttpDataSource.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.HttpDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
public static final com.google.android.exoplayer.util.Predicate REJECT_PAYWALL_TYPES
public static final int DEFAULT_CONNECT_TIMEOUT_MILLIS
public static final int DEFAULT_READ_TIMEOUT_MILLIS
private static final String TAG
private static final java.util.regex.Pattern CONTENT_RANGE_HEADER
private final int connectTimeoutMillis
private final int readTimeoutMillis
private final String userAgent
private final com.google.android.exoplayer.util.Predicate contentTypePredicate
private final java.util.HashMap requestProperties
private final com.google.android.exoplayer.upstream.TransferListener listener
private com.google.android.exoplayer.upstream.DataSpec dataSpec
private java.net.HttpURLConnection connection
private java.io.InputStream inputStream
private boolean opened
private long dataLength
private long bytesRead
public void <init> (java.lang.String, com.google.android.exoplayer.util.Predicate)
String userAgent
com.google.android.exoplayer.util.Predicate contentTypePredicate
public void <init> (java.lang.String, com.google.android.exoplayer.util.Predicate, com.google.android.exoplayer.upstream.TransferListener)
String userAgent
com.google.android.exoplayer.util.Predicate contentTypePredicate
com.google.android.exoplayer.upstream.TransferListener listener
public void <init> (java.lang.String, com.google.android.exoplayer.util.Predicate, com.google.android.exoplayer.upstream.TransferListener, int, int)
String userAgent
com.google.android.exoplayer.util.Predicate contentTypePredicate
com.google.android.exoplayer.upstream.TransferListener listener
int connectTimeoutMillis
int readTimeoutMillis
public void setRequestProperty (java.lang.String, java.lang.String)
String name
String value
public void clearRequestProperty (java.lang.String)
String name
public void clearAllRequestProperties ()
public long open (com.google.android.exoplayer.upstream.DataSpec) throws com.google.android.exoplayer.upstream.HttpDataSource$HttpDataSourceException
java.io.IOException e
java.io.IOException e
java.util.Map headers
java.io.IOException e
com.google.android.exoplayer.upstream.DataSpec dataSpec
int responseCode
String contentType
long contentLength
public int read (byte[], int, int) throws com.google.android.exoplayer.upstream.HttpDataSource$HttpDataSourceException
java.io.IOException e
byte[] buffer
int offset
int readLength
int read
public void close () throws com.google.android.exoplayer.upstream.HttpDataSource$HttpDataSourceException
java.io.IOException e
private void closeConnection ()
protected final java.net.HttpURLConnection getConnection ()
protected final long bytesRead ()
protected final long bytesRemaining ()
private java.net.HttpURLConnection makeConnection (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
java.util.Map$Entry property
java.util.Iterator i$
com.google.android.exoplayer.upstream.DataSpec dataSpec
java.net.URL url
java.net.HttpURLConnection connection
private void setRangeHeader (java.net.HttpURLConnection, com.google.android.exoplayer.upstream.DataSpec)
java.net.HttpURLConnection connection
com.google.android.exoplayer.upstream.DataSpec dataSpec
String rangeRequest
private long getContentLength (java.net.HttpURLConnection)
NumberFormatException e
long contentLengthFromRange
NumberFormatException e
java.util.regex.Matcher matcher
java.net.HttpURLConnection connection
long contentLength
String contentLengthHeader
String contentRangeHeader
static void <clinit> ()
}
com/google/android/exoplayer/upstream/NonBlockingInputStream.class
NonBlockingInputStream.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.NonBlockingInputStream extends java.lang.Object {
public abstract int skip (int)
public abstract int read (byte[], int, int)
public abstract int read (java.nio.ByteBuffer, int)
public abstract long getAvailableByteCount ()
public abstract boolean isEndOfStream ()
public abstract void close ()
}
com/google/android/exoplayer/upstream/UriDataSource.class
UriDataSource.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.UriDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private static final String FILE_URI_SCHEME
private final com.google.android.exoplayer.upstream.DataSource fileDataSource
private final com.google.android.exoplayer.upstream.DataSource httpDataSource
private com.google.android.exoplayer.upstream.DataSource dataSource
public void <init> (java.lang.String, com.google.android.exoplayer.upstream.TransferListener)
String userAgent
com.google.android.exoplayer.upstream.TransferListener transferListener
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSource)
com.google.android.exoplayer.upstream.DataSource fileDataSource
com.google.android.exoplayer.upstream.DataSource httpDataSource
public long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
com.google.android.exoplayer.upstream.DataSpec dataSpec
public int read (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int readLength
public void close () throws java.io.IOException
}
com/google/android/exoplayer/upstream/HttpDataSource$InvalidContentTypeException.class
HttpDataSource.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.HttpDataSource$InvalidContentTypeException extends com.google.android.exoplayer.upstream.HttpDataSource$HttpDataSourceException {
public final String contentType
public void <init> (java.lang.String, com.google.android.exoplayer.upstream.DataSpec)
String contentType
com.google.android.exoplayer.upstream.DataSpec dataSpec
}
com/google/android/exoplayer/upstream/Loader$Callback.class
Loader.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.Loader$Callback extends java.lang.Object {
public abstract void onLoadCanceled (com.google.android.exoplayer.upstream.Loader$Loadable)
public abstract void onLoadCompleted (com.google.android.exoplayer.upstream.Loader$Loadable)
public abstract void onLoadError (com.google.android.exoplayer.upstream.Loader$Loadable, java.io.IOException)
}
com/google/android/exoplayer/upstream/PriorityDataSource.class
PriorityDataSource.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.PriorityDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private final com.google.android.exoplayer.upstream.DataSource upstream
private final int priority
public void <init> (int, com.google.android.exoplayer.upstream.DataSource)
int priority
com.google.android.exoplayer.upstream.DataSource upstream
public long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
com.google.android.exoplayer.upstream.DataSpec dataSpec
public int read (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int max
public void close () throws java.io.IOException
}
com/google/android/exoplayer/upstream/ByteArrayDataSource.class
ByteArrayDataSource.java
package com.google.android.exoplayer.upstream
public com.google.android.exoplayer.upstream.ByteArrayDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private final byte[] data
private int readPosition
public void <init> (byte[])
byte[] data
public long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
com.google.android.exoplayer.upstream.DataSpec dataSpec
public void close () throws java.io.IOException
public int read (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int length
}
com/google/android/exoplayer/upstream/DataSourceStream.class
DataSourceStream.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.DataSourceStream extends java.lang.Object implements com.google.android.exoplayer.upstream.Loader$Loadable com.google.android.exoplayer.upstream.NonBlockingInputStream {
private static final int CHUNKED_ALLOCATION_INCREMENT
private final com.google.android.exoplayer.upstream.DataSource dataSource
private final com.google.android.exoplayer.upstream.DataSpec dataSpec
private final com.google.android.exoplayer.upstream.Allocator allocator
private final com.google.android.exoplayer.upstream.DataSourceStream$ReadHead readHead
private com.google.android.exoplayer.upstream.Allocation allocation
private volatile boolean loadCanceled
private volatile long loadPosition
private volatile long resolvedLength
private int writeFragmentIndex
private int writeFragmentOffset
private int writeFragmentRemainingLength
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.upstream.Allocator)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.upstream.Allocator allocator
public void resetReadPosition ()
public long getReadPosition ()
public long getLoadPosition ()
public long getLength ()
public boolean isLoadFinished ()
public long getAvailableByteCount ()
public boolean isEndOfStream ()
public void close ()
public int skip (int)
int skipLength
public int read (java.nio.ByteBuffer, int)
java.nio.ByteBuffer target1
int readLength
public int read (byte[], int, int)
byte[] target
int offset
int readLength
private int read (java.nio.ByteBuffer, byte[], int, com.google.android.exoplayer.upstream.DataSourceStream$ReadHead, int)
int bufferReadLength
java.nio.ByteBuffer target
byte[] targetArray
int targetArrayOffset
com.google.android.exoplayer.upstream.DataSourceStream$ReadHead readHead
int readLength
int bytesToRead
int bytesRead
byte[][] buffers
public void cancelLoad ()
public boolean isLoadCanceled ()
public void load () throws java.io.IOException java.lang.InterruptedException
long resolvedLength
com.google.android.exoplayer.upstream.DataSpec loadDataSpec
long remainingLength
int initialAllocationSize
com.google.android.exoplayer.upstream.DataSpec loadDataSpec
int allocationCapacity
int read
byte[][] buffers
private boolean maybeMoreToLoad ()
}
com/google/android/exoplayer/upstream/Allocation.class
Allocation.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.Allocation extends java.lang.Object {
public abstract void ensureCapacity (int)
public abstract int capacity ()
public abstract byte[][] getBuffers ()
public abstract int getFragmentOffset (int)
public abstract int getFragmentLength (int)
public abstract void release ()
}
com/google/android/exoplayer/upstream/Allocator.class
Allocator.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.Allocator extends java.lang.Object {
public abstract com.google.android.exoplayer.upstream.Allocation allocate (int)
public abstract void trim (int)
public abstract int getAllocatedSize ()
}
com/google/android/exoplayer/upstream/BandwidthMeter.class
BandwidthMeter.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.BandwidthMeter extends java.lang.Object {
public static final long NO_ESTIMATE
public abstract long getBitrateEstimate ()
}
com/google/android/exoplayer/upstream/Loader$Loadable.class
Loader.java
package com.google.android.exoplayer.upstream
public abstract com.google.android.exoplayer.upstream.Loader$Loadable extends java.lang.Object {
public abstract void cancelLoad ()
public abstract boolean isLoadCanceled ()
public abstract void load () throws java.io.IOException java.lang.InterruptedException
}
com/google/android/exoplayer/upstream/TeeDataSource.class
TeeDataSource.java
package com.google.android.exoplayer.upstream
public final com.google.android.exoplayer.upstream.TeeDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private final com.google.android.exoplayer.upstream.DataSource upstream
private final com.google.android.exoplayer.upstream.DataSink dataSink
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSink)
com.google.android.exoplayer.upstream.DataSource upstream
com.google.android.exoplayer.upstream.DataSink dataSink
public long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
com.google.android.exoplayer.upstream.DataSpec dataSpec
long dataLength
public int read (byte[], int, int) throws java.io.IOException
byte[] buffer
int offset
int max
int num
public void close () throws java.io.IOException
}
com/google/android/exoplayer/upstream/cache/
com/google/android/exoplayer/upstream/cache/SimpleCache$1.class
SimpleCache.java
package com.google.android.exoplayer.upstream.cache
com.google.android.exoplayer.upstream.cache.SimpleCache$1 extends java.lang.Thread {
final synthetic android.os.ConditionVariable val$conditionVariable
final synthetic com.google.android.exoplayer.upstream.cache.SimpleCache this$0
void <init> (com.google.android.exoplayer.upstream.cache.SimpleCache, android.os.ConditionVariable)
public void run ()
}
com/google/android/exoplayer/upstream/cache/Cache.class
Cache.java
package com.google.android.exoplayer.upstream.cache
public abstract com.google.android.exoplayer.upstream.cache.Cache extends java.lang.Object {
public abstract java.util.NavigableSet addListener (java.lang.String, com.google.android.exoplayer.upstream.cache.Cache$Listener)
public abstract void removeListener (java.lang.String, com.google.android.exoplayer.upstream.cache.Cache$Listener)
public abstract java.util.NavigableSet getCachedSpans (java.lang.String)
public abstract java.util.Set getKeys ()
public abstract long getCacheSpace ()
public abstract com.google.android.exoplayer.upstream.cache.CacheSpan startReadWrite (java.lang.String, long) throws java.lang.InterruptedException
public abstract com.google.android.exoplayer.upstream.cache.CacheSpan startReadWriteNonBlocking (java.lang.String, long)
public abstract java.io.File startFile (java.lang.String, long, long)
public abstract void commitFile (java.io.File)
public abstract void releaseHoleSpan (com.google.android.exoplayer.upstream.cache.CacheSpan)
public abstract void removeSpan (com.google.android.exoplayer.upstream.cache.CacheSpan)
public abstract boolean isCached (java.lang.String, long, long)
}
com/google/android/exoplayer/upstream/cache/CacheEvictor.class
CacheEvictor.java
package com.google.android.exoplayer.upstream.cache
public abstract com.google.android.exoplayer.upstream.cache.CacheEvictor extends java.lang.Object implements com.google.android.exoplayer.upstream.cache.Cache$Listener {
public abstract void onStartFile (com.google.android.exoplayer.upstream.cache.Cache, java.lang.String, long, long)
}
com/google/android/exoplayer/upstream/cache/SimpleCache.class
SimpleCache.java
package com.google.android.exoplayer.upstream.cache
public com.google.android.exoplayer.upstream.cache.SimpleCache extends java.lang.Object implements com.google.android.exoplayer.upstream.cache.Cache {
private final java.io.File cacheDir
private final com.google.android.exoplayer.upstream.cache.CacheEvictor evictor
private final java.util.HashMap lockedSpans
private final java.util.HashMap cachedSpans
private final java.util.HashMap listeners
private long totalSpace
public void <init> (java.io.File, com.google.android.exoplayer.upstream.cache.CacheEvictor)
java.io.File cacheDir
com.google.android.exoplayer.upstream.cache.CacheEvictor evictor
android.os.ConditionVariable conditionVariable
public synchronized java.util.NavigableSet addListener (java.lang.String, com.google.android.exoplayer.upstream.cache.Cache$Listener)
String key
com.google.android.exoplayer.upstream.cache.Cache$Listener listener
java.util.ArrayList listenersForKey
public synchronized void removeListener (java.lang.String, com.google.android.exoplayer.upstream.cache.Cache$Listener)
String key
com.google.android.exoplayer.upstream.cache.Cache$Listener listener
java.util.ArrayList listenersForKey
public synchronized java.util.NavigableSet getCachedSpans (java.lang.String)
String key
java.util.TreeSet spansForKey
public synchronized java.util.Set getKeys ()
public synchronized long getCacheSpace ()
public synchronized com.google.android.exoplayer.upstream.cache.CacheSpan startReadWrite (java.lang.String, long) throws java.lang.InterruptedException
com.google.android.exoplayer.upstream.cache.CacheSpan span
String key
long position
com.google.android.exoplayer.upstream.cache.CacheSpan lookupSpan
public synchronized com.google.android.exoplayer.upstream.cache.CacheSpan startReadWriteNonBlocking (java.lang.String, long)
String key
long position
private synchronized com.google.android.exoplayer.upstream.cache.CacheSpan startReadWriteNonBlocking (com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan oldCacheSpan
java.util.TreeSet spansForKey
com.google.android.exoplayer.upstream.cache.CacheSpan lookupSpan
com.google.android.exoplayer.upstream.cache.CacheSpan spanningRegion
public synchronized java.io.File startFile (java.lang.String, long, long)
String key
long position
long length
public synchronized void commitFile (java.io.File)
java.io.File file
com.google.android.exoplayer.upstream.cache.CacheSpan span
long length
public synchronized void releaseHoleSpan (com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan holeSpan
private com.google.android.exoplayer.upstream.cache.CacheSpan getSpan (com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan lookupSpan
String key
long offset
java.util.TreeSet entries
com.google.android.exoplayer.upstream.cache.CacheSpan floorSpan
com.google.android.exoplayer.upstream.cache.CacheSpan ceilEntry
private void initialize ()
com.google.android.exoplayer.upstream.cache.CacheSpan span
java.io.File file
int i
java.io.File[] files
private void addSpan (com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan span
java.util.TreeSet spansForKey
public synchronized void removeSpan (com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan span
java.util.TreeSet spansForKey
private void removeStaleSpans ()
com.google.android.exoplayer.upstream.cache.CacheSpan span
java.util.Map$Entry next
java.util.Iterator spanIterator
boolean isEmpty
java.util.Iterator iterator
private void notifySpanRemoved (com.google.android.exoplayer.upstream.cache.CacheSpan)
int i
com.google.android.exoplayer.upstream.cache.CacheSpan span
java.util.ArrayList keyListeners
private void notifySpanAdded (com.google.android.exoplayer.upstream.cache.CacheSpan)
int i
com.google.android.exoplayer.upstream.cache.CacheSpan span
java.util.ArrayList keyListeners
private void notifySpanTouched (com.google.android.exoplayer.upstream.cache.CacheSpan, com.google.android.exoplayer.upstream.cache.CacheSpan)
int i
com.google.android.exoplayer.upstream.cache.CacheSpan oldSpan
com.google.android.exoplayer.upstream.cache.CacheSpan newSpan
java.util.ArrayList keyListeners
public synchronized boolean isCached (java.lang.String, long, long)
com.google.android.exoplayer.upstream.cache.CacheSpan next
String key
long position
long length
java.util.TreeSet entries
com.google.android.exoplayer.upstream.cache.CacheSpan lookupSpan
com.google.android.exoplayer.upstream.cache.CacheSpan floorSpan
long queryEndPosition
long currentEndPosition
java.util.Iterator iterator
static synthetic void access$000 (com.google.android.exoplayer.upstream.cache.SimpleCache)
com.google.android.exoplayer.upstream.cache.SimpleCache x0
}
com/google/android/exoplayer/upstream/cache/CacheDataSource$EventListener.class
CacheDataSource.java
package com.google.android.exoplayer.upstream.cache
public abstract com.google.android.exoplayer.upstream.cache.CacheDataSource$EventListener extends java.lang.Object {
public abstract void onCachedBytesRead (long, long)
}
com/google/android/exoplayer/upstream/cache/CacheDataSink.class
CacheDataSink.java
package com.google.android.exoplayer.upstream.cache
public com.google.android.exoplayer.upstream.cache.CacheDataSink extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSink {
private final com.google.android.exoplayer.upstream.cache.Cache cache
private final long maxCacheFileSize
private com.google.android.exoplayer.upstream.DataSpec dataSpec
private java.io.File file
private java.io.FileOutputStream outputStream
private long outputStreamBytesWritten
private long dataSpecBytesWritten
public void <init> (com.google.android.exoplayer.upstream.cache.Cache, long)
com.google.android.exoplayer.upstream.cache.Cache cache
long maxCacheFileSize
public com.google.android.exoplayer.upstream.DataSink open (com.google.android.exoplayer.upstream.DataSpec) throws com.google.android.exoplayer.upstream.cache.CacheDataSink$CacheDataSinkException
java.io.FileNotFoundException e
com.google.android.exoplayer.upstream.DataSpec dataSpec
public void write (byte[], int, int) throws com.google.android.exoplayer.upstream.cache.CacheDataSink$CacheDataSinkException
int bytesToWrite
int bytesWritten
java.io.IOException e
byte[] buffer
int offset
int length
public void close () throws com.google.android.exoplayer.upstream.cache.CacheDataSink$CacheDataSinkException
java.io.IOException e
private void openNextOutputStream () throws java.io.FileNotFoundException
private void closeCurrentOutputStream () throws java.io.IOException
}
com/google/android/exoplayer/upstream/cache/LeastRecentlyUsedCacheEvictor.class
LeastRecentlyUsedCacheEvictor.java
package com.google.android.exoplayer.upstream.cache
public com.google.android.exoplayer.upstream.cache.LeastRecentlyUsedCacheEvictor extends java.lang.Object implements com.google.android.exoplayer.upstream.cache.CacheEvictor java.util.Comparator {
private final long maxBytes
private final java.util.TreeSet leastRecentlyUsed
private long currentSize
public void <init> (long)
long maxBytes
public void onStartFile (com.google.android.exoplayer.upstream.cache.Cache, java.lang.String, long, long)
com.google.android.exoplayer.upstream.cache.Cache cache
String key
long position
long length
public void onSpanAdded (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.cache.CacheSpan span
public void onSpanRemoved (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.cache.CacheSpan span
public void onSpanTouched (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.cache.CacheSpan oldSpan
com.google.android.exoplayer.upstream.cache.CacheSpan newSpan
public int compare (com.google.android.exoplayer.upstream.cache.CacheSpan, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan lhs
com.google.android.exoplayer.upstream.cache.CacheSpan rhs
long lastAccessTimestampDelta
private void evictCache (com.google.android.exoplayer.upstream.cache.Cache, long)
com.google.android.exoplayer.upstream.cache.Cache cache
long requiredSpace
public volatile synthetic int compare (java.lang.Object, java.lang.Object)
Object x0
Object x1
}
com/google/android/exoplayer/upstream/cache/CacheSpan.class
CacheSpan.java
package com.google.android.exoplayer.upstream.cache
public final com.google.android.exoplayer.upstream.cache.CacheSpan extends java.lang.Object implements java.lang.Comparable {
private static final String SUFFIX
private static final String SUFFIX_ESCAPED
private static final java.util.regex.Pattern cacheFilePattern
public final String key
public final long position
public final long length
public final boolean isCached
public final java.io.File file
public final long lastAccessTimestamp
public static java.io.File getCacheFileName (java.io.File, java.lang.String, long, long)
java.io.File cacheDir
String key
long offset
long lastAccessTimestamp
public static com.google.android.exoplayer.upstream.cache.CacheSpan createLookup (java.lang.String, long)
String key
long position
public static com.google.android.exoplayer.upstream.cache.CacheSpan createOpenHole (java.lang.String, long)
String key
long position
public static com.google.android.exoplayer.upstream.cache.CacheSpan createClosedHole (java.lang.String, long, long)
String key
long position
long length
public static com.google.android.exoplayer.upstream.cache.CacheSpan createCacheEntry (java.io.File)
java.io.File file
java.util.regex.Matcher matcher
private static com.google.android.exoplayer.upstream.cache.CacheSpan createCacheEntry (java.lang.String, long, long, java.io.File)
String key
long position
long lastAccessTimestamp
java.io.File file
private void <init> (java.lang.String, long, long, boolean, long, java.io.File)
String key
long position
long length
boolean isCached
long lastAccessTimestamp
java.io.File file
public boolean isOpenEnded ()
public com.google.android.exoplayer.upstream.cache.CacheSpan touch ()
long now
java.io.File newCacheFile
public int compareTo (com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.CacheSpan another
long startOffsetDiff
public volatile synthetic int compareTo (java.lang.Object)
Object x0
static void <clinit> ()
}
com/google/android/exoplayer/upstream/cache/CacheDataSource.class
CacheDataSource.java
package com.google.android.exoplayer.upstream.cache
public final com.google.android.exoplayer.upstream.cache.CacheDataSource extends java.lang.Object implements com.google.android.exoplayer.upstream.DataSource {
private final com.google.android.exoplayer.upstream.cache.Cache cache
private final com.google.android.exoplayer.upstream.DataSource cacheReadDataSource
private final com.google.android.exoplayer.upstream.DataSource cacheWriteDataSource
private final com.google.android.exoplayer.upstream.DataSource upstreamDataSource
private final com.google.android.exoplayer.upstream.cache.CacheDataSource$EventListener eventListener
private final boolean blockOnCache
private final boolean ignoreCacheOnError
private com.google.android.exoplayer.upstream.DataSource currentDataSource
private android.net.Uri uri
private String key
private long readPosition
private long bytesRemaining
private com.google.android.exoplayer.upstream.cache.CacheSpan lockedSpan
private boolean ignoreCache
private long totalCachedBytesRead
public void <init> (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.DataSource, boolean, boolean)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.DataSource upstream
boolean blockOnCache
boolean ignoreCacheOnError
public void <init> (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.DataSource, boolean, boolean, long)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.DataSource upstream
boolean blockOnCache
boolean ignoreCacheOnError
long maxCacheFileSize
public void <init> (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSink, boolean, boolean, com.google.android.exoplayer.upstream.cache.CacheDataSource$EventListener)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.DataSource upstream
com.google.android.exoplayer.upstream.DataSource cacheReadDataSource
com.google.android.exoplayer.upstream.DataSink cacheWriteDataSink
boolean blockOnCache
boolean ignoreCacheOnError
com.google.android.exoplayer.upstream.cache.CacheDataSource$EventListener eventListener
public long open (com.google.android.exoplayer.upstream.DataSpec) throws java.io.IOException
java.io.IOException e
com.google.android.exoplayer.upstream.DataSpec dataSpec
public int read (byte[], int, int) throws java.io.IOException
int bytesRead
java.io.IOException e
byte[] buffer
int offset
int max
public void close () throws java.io.IOException
java.io.IOException e
private void openNextSource () throws java.io.IOException
com.google.android.exoplayer.upstream.cache.CacheSpan span
com.google.android.exoplayer.upstream.cache.CacheSpan span
com.google.android.exoplayer.upstream.DataSpec dataSpec
android.net.Uri fileUri
long filePosition
long length
com.google.android.exoplayer.upstream.DataSpec dataSpec
long length
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.upstream.cache.CacheSpan span
InterruptedException e
private void closeCurrentSource () throws java.io.IOException
private void handleBeforeThrow (java.io.IOException)
java.io.IOException exception
private void notifyBytesRead ()
}
com/google/android/exoplayer/upstream/cache/Cache$Listener.class
Cache.java
package com.google.android.exoplayer.upstream.cache
public abstract com.google.android.exoplayer.upstream.cache.Cache$Listener extends java.lang.Object {
public abstract void onSpanAdded (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan)
public abstract void onSpanRemoved (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan)
public abstract void onSpanTouched (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan, com.google.android.exoplayer.upstream.cache.CacheSpan)
}
com/google/android/exoplayer/upstream/cache/CacheDataSink$CacheDataSinkException.class
CacheDataSink.java
package com.google.android.exoplayer.upstream.cache
public com.google.android.exoplayer.upstream.cache.CacheDataSink$CacheDataSinkException extends java.io.IOException {
public void <init> (java.io.IOException)
java.io.IOException cause
}
com/google/android/exoplayer/upstream/cache/NoOpCacheEvictor.class
NoOpCacheEvictor.java
package com.google.android.exoplayer.upstream.cache
public com.google.android.exoplayer.upstream.cache.NoOpCacheEvictor extends java.lang.Object implements com.google.android.exoplayer.upstream.cache.CacheEvictor {
public void <init> ()
public void onStartFile (com.google.android.exoplayer.upstream.cache.Cache, java.lang.String, long, long)
com.google.android.exoplayer.upstream.cache.Cache cache
String key
long position
long length
public void onSpanAdded (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.cache.CacheSpan span
public void onSpanRemoved (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.cache.CacheSpan span
public void onSpanTouched (com.google.android.exoplayer.upstream.cache.Cache, com.google.android.exoplayer.upstream.cache.CacheSpan, com.google.android.exoplayer.upstream.cache.CacheSpan)
com.google.android.exoplayer.upstream.cache.Cache cache
com.google.android.exoplayer.upstream.cache.CacheSpan oldSpan
com.google.android.exoplayer.upstream.cache.CacheSpan newSpan
}
com/google/android/exoplayer/hls/
com/google/android/exoplayer/hls/HlsPlaylist.class
HlsPlaylist.java
package com.google.android.exoplayer.hls
public abstract com.google.android.exoplayer.hls.HlsPlaylist extends java.lang.Object {
public static final int TYPE_MASTER
public static final int TYPE_MEDIA
public final android.net.Uri baseUri
public final int type
protected void <init> (android.net.Uri, int)
android.net.Uri baseUri
int type
}
com/google/android/exoplayer/hls/TsExtractor$SeiReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$SeiReader extends com.google.android.exoplayer.hls.TsExtractor$SampleQueue {
private static final int NAL_UNIT_TYPE_SEI
private final com.google.android.exoplayer.util.BitArray seiBuffer
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
public void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$SamplePool)
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
public void read (byte[], int, long)
int seiStart
int ccDataSize
byte[] data
int size
long pesTimeUs
}
com/google/android/exoplayer/hls/TsExtractor.class
TsExtractor.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.TsExtractor extends java.lang.Object {
private static final String TAG
private static final int TS_PACKET_SIZE
private static final int TS_SYNC_BYTE
private static final int TS_PAT_PID
private static final int TS_STREAM_TYPE_AAC
private static final int TS_STREAM_TYPE_H264
private static final int TS_STREAM_TYPE_ID3
private static final int TS_STREAM_TYPE_EIA608
private final com.google.android.exoplayer.util.BitArray tsPacketBuffer
private final android.util.SparseArray sampleQueues
private final android.util.SparseArray tsPayloadReaders
private final com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
private final boolean shouldSpliceIn
final long firstSampleTimestamp
private boolean spliceConfigured
boolean pendingFirstSampleTimestampAdjustment
long sampleTimestampOffsetUs
private volatile boolean prepared
volatile long largestParsedTimestampUs
public void <init> (long, com.google.android.exoplayer.hls.TsExtractor$SamplePool, boolean)
long firstSampleTimestamp
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
boolean shouldSpliceIn
public int getTrackCount ()
public com.google.android.exoplayer.MediaFormat getFormat (int)
int track
public boolean isPrepared ()
public void release ()
int i
public void configureSpliceTo (com.google.android.exoplayer.hls.TsExtractor)
int i
com.google.android.exoplayer.hls.TsExtractor nextExtractor
boolean spliceConfigured
public long getLargestSampleTimestamp ()
public boolean getSample (int, com.google.android.exoplayer.SampleHolder)
int track
com.google.android.exoplayer.SampleHolder out
com.google.android.exoplayer.hls.TsExtractor$SampleQueue sampleQueue
com.google.android.exoplayer.hls.TsExtractor$Sample sample
public void discardUntil (int, long)
int track
long timeUs
public boolean hasSamples (int)
int track
private boolean checkPrepared ()
int i
int pesPayloadReaderCount
public int read (com.google.android.exoplayer.upstream.DataSource) throws java.io.IOException
int adaptationFieldLength
com.google.android.exoplayer.hls.TsExtractor$TsPayloadReader payloadReader
com.google.android.exoplayer.upstream.DataSource dataSource
int read
int syncByte
boolean payloadUnitStartIndicator
int pid
boolean adaptationFieldExists
boolean payloadExists
private void convert (com.google.android.exoplayer.hls.TsExtractor$Sample, com.google.android.exoplayer.SampleHolder)
com.google.android.exoplayer.hls.TsExtractor$Sample in
com.google.android.exoplayer.SampleHolder out
static synthetic android.util.SparseArray access$300 (com.google.android.exoplayer.hls.TsExtractor)
com.google.android.exoplayer.hls.TsExtractor x0
static synthetic android.util.SparseArray access$400 (com.google.android.exoplayer.hls.TsExtractor)
com.google.android.exoplayer.hls.TsExtractor x0
static synthetic com.google.android.exoplayer.hls.TsExtractor$SamplePool access$500 (com.google.android.exoplayer.hls.TsExtractor)
com.google.android.exoplayer.hls.TsExtractor x0
}
com/google/android/exoplayer/hls/TsExtractor$PmtReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$PmtReader extends com.google.android.exoplayer.hls.TsExtractor$TsPayloadReader {
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
private void <init> (com.google.android.exoplayer.hls.TsExtractor)
public void read (com.google.android.exoplayer.util.BitArray, boolean)
int pointerField
com.google.android.exoplayer.hls.TsExtractor$SeiReader seiReader
int streamType
int elementaryPid
int esInfoLength
com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader pesPayloadReader
com.google.android.exoplayer.util.BitArray tsBuffer
boolean payloadUnitStartIndicator
int sectionLength
int programInfoLength
int entriesSize
synthetic void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$1)
com.google.android.exoplayer.hls.TsExtractor x0
com.google.android.exoplayer.hls.TsExtractor$1 x1
}
com/google/android/exoplayer/hls/TsExtractor$AdtsReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$AdtsReader extends com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader {
private final com.google.android.exoplayer.util.BitArray adtsBuffer
private long timeUs
private long frameDurationUs
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
public void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$SamplePool)
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
public void read (com.google.android.exoplayer.util.BitArray, int, long)
com.google.android.exoplayer.util.BitArray pesBuffer
int pesPayloadSize
long pesTimeUs
boolean needToProcessLeftOvers
int frameIndex
private boolean readOneAacFrame (long)
int audioObjectType
int sampleRateIndex
int channelConfig
byte[] audioSpecificConfig
android.util.Pair audioParams
com.google.android.exoplayer.MediaFormat mediaFormat
long timeUs
int offsetToSyncWord
int adtsStartOffset
boolean hasCRC
int frameSize
public void release ()
}
com/google/android/exoplayer/hls/TsExtractor$PatReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$PatReader extends com.google.android.exoplayer.hls.TsExtractor$TsPayloadReader {
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
private void <init> (com.google.android.exoplayer.hls.TsExtractor)
public void read (com.google.android.exoplayer.util.BitArray, boolean)
int pointerField
int pid
int i
com.google.android.exoplayer.util.BitArray tsBuffer
boolean payloadUnitStartIndicator
int sectionLength
int programCount
synthetic void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$1)
com.google.android.exoplayer.hls.TsExtractor x0
com.google.android.exoplayer.hls.TsExtractor$1 x1
}
com/google/android/exoplayer/hls/TsExtractor$SampleQueue.class
TsExtractor.java
package com.google.android.exoplayer.hls
abstract com.google.android.exoplayer.hls.TsExtractor$SampleQueue extends java.lang.Object {
private final com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
private final java.util.concurrent.ConcurrentLinkedQueue internalQueue
private boolean needKeyframe
private long lastReadTimeUs
private long spliceOutTimeUs
private volatile com.google.android.exoplayer.MediaFormat mediaFormat
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
protected void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$SamplePool)
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
public boolean hasMediaFormat ()
public com.google.android.exoplayer.MediaFormat getMediaFormat ()
protected void setMediaFormat (com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.MediaFormat mediaFormat
public com.google.android.exoplayer.hls.TsExtractor$Sample poll ()
com.google.android.exoplayer.hls.TsExtractor$Sample head
public com.google.android.exoplayer.hls.TsExtractor$Sample peek ()
com.google.android.exoplayer.hls.TsExtractor$Sample head
public void discardUntil (long)
long timeUs
com.google.android.exoplayer.hls.TsExtractor$Sample head
public void release ()
com.google.android.exoplayer.hls.TsExtractor$Sample toRecycle
public void recycle (com.google.android.exoplayer.hls.TsExtractor$Sample)
com.google.android.exoplayer.hls.TsExtractor$Sample sample
public boolean configureSpliceTo (com.google.android.exoplayer.hls.TsExtractor$SampleQueue)
long firstPossibleSpliceTime
com.google.android.exoplayer.hls.TsExtractor$SampleQueue nextQueue
long firstPossibleSpliceTime
com.google.android.exoplayer.hls.TsExtractor$Sample nextSample
java.util.concurrent.ConcurrentLinkedQueue nextInternalQueue
com.google.android.exoplayer.hls.TsExtractor$Sample nextQueueSample
protected com.google.android.exoplayer.hls.TsExtractor$Sample getSample (int)
int type
protected void addSample (int, com.google.android.exoplayer.util.BitArray, int, long, boolean)
int type
com.google.android.exoplayer.util.BitArray buffer
int sampleSize
long sampleTimeUs
boolean isKeyframe
com.google.android.exoplayer.hls.TsExtractor$Sample sample
protected void addSample (com.google.android.exoplayer.hls.TsExtractor$Sample)
com.google.android.exoplayer.hls.TsExtractor$Sample sample
protected void addToSample (com.google.android.exoplayer.hls.TsExtractor$Sample, com.google.android.exoplayer.util.BitArray, int)
com.google.android.exoplayer.hls.TsExtractor$Sample sample
com.google.android.exoplayer.util.BitArray buffer
int size
private void adjustTimestamp (com.google.android.exoplayer.hls.TsExtractor$Sample)
com.google.android.exoplayer.hls.TsExtractor$Sample sample
}
com/google/android/exoplayer/hls/HlsPlaylistParser.class
HlsPlaylistParser.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.HlsPlaylistParser extends java.lang.Object implements com.google.android.exoplayer.util.ManifestParser {
private static final String VERSION_TAG
private static final String STREAM_INF_TAG
private static final String BANDWIDTH_ATTR
private static final String CODECS_ATTR
private static final String RESOLUTION_ATTR
private static final String DISCONTINUITY_TAG
private static final String MEDIA_DURATION_TAG
private static final String MEDIA_SEQUENCE_TAG
private static final String TARGET_DURATION_TAG
private static final String ENDLIST_TAG
private static final String KEY_TAG
private static final String BYTERANGE_TAG
private static final String METHOD_ATTR
private static final String URI_ATTR
private static final String IV_ATTR
private static final java.util.regex.Pattern BANDWIDTH_ATTR_REGEX
private static final java.util.regex.Pattern CODECS_ATTR_REGEX
private static final java.util.regex.Pattern RESOLUTION_ATTR_REGEX
private static final java.util.regex.Pattern MEDIA_DURATION_REGEX
private static final java.util.regex.Pattern MEDIA_SEQUENCE_REGEX
private static final java.util.regex.Pattern TARGET_DURATION_REGEX
private static final java.util.regex.Pattern VERSION_REGEX
private static final java.util.regex.Pattern BYTERANGE_REGEX
private static final java.util.regex.Pattern METHOD_ATTR_REGEX
private static final java.util.regex.Pattern URI_ATTR_REGEX
private static final java.util.regex.Pattern IV_ATTR_REGEX
public void <init> ()
public com.google.android.exoplayer.hls.HlsPlaylist parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException
java.io.InputStream inputStream
String inputEncoding
String contentId
android.net.Uri baseUri
java.io.BufferedReader reader
java.util.Queue extraLines
String line
private static com.google.android.exoplayer.hls.HlsMasterPlaylist parseMasterPlaylist (com.google.android.exoplayer.hls.HlsPlaylistParser$LineIterator, android.net.Uri) throws java.io.IOException
String[] widthAndHeight
String codecsString
String resolutionString
String line
com.google.android.exoplayer.hls.HlsPlaylistParser$LineIterator iterator
android.net.Uri baseUri
java.util.List variants
int bandwidth
String[] codecs
int width
int height
int variantIndex
private static com.google.android.exoplayer.hls.HlsMediaPlaylist parseMediaPlaylist (com.google.android.exoplayer.hls.HlsPlaylistParser$LineIterator, android.net.Uri) throws java.io.IOException
String byteRange
String[] splitByteRange
String line
com.google.android.exoplayer.hls.HlsPlaylistParser$LineIterator iterator
android.net.Uri baseUri
int mediaSequence
int targetDurationSecs
int version
boolean live
java.util.List segments
double segmentDurationSecs
boolean segmentDiscontinuity
long segmentStartTimeUs
String segmentEncryptionMethod
String segmentEncryptionKeyUri
String segmentEncryptionIV
int segmentByterangeOffset
int segmentByterangeLength
int segmentMediaSequence
public volatile synthetic java.lang.Object parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException com.google.android.exoplayer.ParserException
java.io.InputStream x0
String x1
String x2
android.net.Uri x3
static void <clinit> ()
}
com/google/android/exoplayer/hls/HlsSampleSource.class
HlsSampleSource.java
package com.google.android.exoplayer.hls
public com.google.android.exoplayer.hls.HlsSampleSource extends java.lang.Object implements com.google.android.exoplayer.SampleSource com.google.android.exoplayer.upstream.Loader$Callback {
public static final int DEFAULT_MIN_LOADABLE_RETRY_COUNT
private static final int NO_RESET_PENDING
private final com.google.android.exoplayer.hls.HlsChunkSource chunkSource
private final java.util.LinkedList extractors
private final boolean frameAccurateSeeking
private final int minLoadableRetryCount
private int remainingReleaseCount
private boolean prepared
private int trackCount
private int enabledTrackCount
private boolean[] trackEnabledStates
private boolean[] pendingDiscontinuities
private com.google.android.exoplayer.TrackInfo[] trackInfos
private com.google.android.exoplayer.MediaFormat[] downstreamMediaFormats
private long downstreamPositionUs
private long lastSeekPositionUs
private long pendingResetPositionUs
private com.google.android.exoplayer.hls.TsChunk previousTsLoadable
private com.google.android.exoplayer.hls.HlsChunk currentLoadable
private boolean loadingFinished
private com.google.android.exoplayer.upstream.Loader loader
private java.io.IOException currentLoadableException
private boolean currentLoadableExceptionFatal
private int currentLoadableExceptionCount
private long currentLoadableExceptionTimestamp
public void <init> (com.google.android.exoplayer.hls.HlsChunkSource, boolean, int)
com.google.android.exoplayer.hls.HlsChunkSource chunkSource
boolean frameAccurateSeeking
int downstreamRendererCount
public void <init> (com.google.android.exoplayer.hls.HlsChunkSource, boolean, int, int)
com.google.android.exoplayer.hls.HlsChunkSource chunkSource
boolean frameAccurateSeeking
int downstreamRendererCount
int minLoadableRetryCount
public boolean prepare () throws java.io.IOException
com.google.android.exoplayer.MediaFormat format
int i
com.google.android.exoplayer.hls.TsExtractor extractor
public int getTrackCount ()
public com.google.android.exoplayer.TrackInfo getTrackInfo (int)
int track
public void enable (int, long)
int track
long positionUs
public void disable (int)
int track
public boolean continueBuffering (long) throws java.io.IOException
long playbackPositionUs
private boolean continueBufferingInternal () throws java.io.IOException
boolean haveSamples
public int readData (int, long, com.google.android.exoplayer.MediaFormatHolder, com.google.android.exoplayer.SampleHolder, boolean) throws java.io.IOException
int track
long playbackPositionUs
com.google.android.exoplayer.MediaFormatHolder formatHolder
com.google.android.exoplayer.SampleHolder sampleHolder
boolean onlyReadDiscontinuity
com.google.android.exoplayer.hls.TsExtractor extractor
int extractorIndex
com.google.android.exoplayer.MediaFormat mediaFormat
public void seekToUs (long)
int i
long positionUs
public long getBufferedPositionUs ()
long largestSampleTimestamp
public void release ()
public void onLoadCompleted (com.google.android.exoplayer.upstream.Loader$Loadable)
com.google.android.exoplayer.hls.TsChunk tsChunk
java.io.IOException e
com.google.android.exoplayer.hls.TsChunk tsChunk
com.google.android.exoplayer.hls.TsChunk tsChunk
com.google.android.exoplayer.upstream.Loader$Loadable loadable
public void onLoadCanceled (com.google.android.exoplayer.upstream.Loader$Loadable)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
public void onLoadError (com.google.android.exoplayer.upstream.Loader$Loadable, java.io.IOException)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
java.io.IOException e
private com.google.android.exoplayer.hls.TsExtractor getCurrentExtractor ()
com.google.android.exoplayer.hls.TsExtractor extractor
private void discardSamplesForDisabledTracks (com.google.android.exoplayer.hls.TsExtractor, long)
int i
com.google.android.exoplayer.hls.TsExtractor extractor
long timeUs
private boolean haveSamplesForEnabledTracks (com.google.android.exoplayer.hls.TsExtractor)
int i
com.google.android.exoplayer.hls.TsExtractor extractor
private void maybeThrowLoadableException () throws java.io.IOException
private void restartFrom (long)
long positionUs
private void clearState ()
int i
private void clearCurrentLoadable ()
private void maybeStartLoading ()
long elapsedMillis
boolean isBackedOff
com.google.android.exoplayer.hls.HlsChunk nextLoadable
private boolean isTsChunk (com.google.android.exoplayer.hls.HlsChunk)
com.google.android.exoplayer.hls.HlsChunk chunk
private boolean isPendingReset ()
private long getRetryDelayMillis (long)
long errorCount
protected final int usToMs (long)
long timeUs
}
com/google/android/exoplayer/hls/TsChunk.class
TsChunk.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.TsChunk extends com.google.android.exoplayer.hls.HlsChunk {
private static final byte[] SCRATCH_SPACE
public final int variantIndex
public final long startTimeUs
public final long endTimeUs
public final int chunkIndex
public final boolean isLastChunk
public final com.google.android.exoplayer.hls.TsExtractor extractor
private int loadPosition
private volatile boolean loadFinished
private volatile boolean loadCanceled
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.hls.TsExtractor, int, long, long, int, boolean)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.hls.TsExtractor tsExtractor
int variantIndex
long startTimeUs
long endTimeUs
int chunkIndex
boolean isLastChunk
public void consume () throws java.io.IOException
public boolean isLoadFinished ()
public void cancelLoad ()
public boolean isLoadCanceled ()
public void load () throws java.io.IOException java.lang.InterruptedException
int skipLength
int bytesRead
int bytesSkipped
static void <clinit> ()
}
com/google/android/exoplayer/hls/HlsChunk.class
HlsChunk.java
package com.google.android.exoplayer.hls
public abstract com.google.android.exoplayer.hls.HlsChunk extends java.lang.Object implements com.google.android.exoplayer.upstream.Loader$Loadable {
protected final com.google.android.exoplayer.upstream.DataSource dataSource
protected final com.google.android.exoplayer.upstream.DataSpec dataSpec
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
public abstract void consume () throws java.io.IOException
public abstract boolean isLoadFinished ()
}
com/google/android/exoplayer/hls/Variant$DecreasingBandwidthComparator.class
Variant.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.Variant$DecreasingBandwidthComparator extends java.lang.Object implements java.util.Comparator {
public void <init> ()
public int compare (com.google.android.exoplayer.hls.Variant, com.google.android.exoplayer.hls.Variant)
com.google.android.exoplayer.hls.Variant a
com.google.android.exoplayer.hls.Variant b
int bandwidthDifference
public volatile synthetic int compare (java.lang.Object, java.lang.Object)
Object x0
Object x1
}
com/google/android/exoplayer/hls/TsExtractor$PesReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$PesReader extends com.google.android.exoplayer.hls.TsExtractor$TsPayloadReader {
private final com.google.android.exoplayer.util.BitArray pesBuffer
private final com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader pesPayloadReader
private int packetLength
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
public void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader)
com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader pesPayloadReader
public void read (com.google.android.exoplayer.util.BitArray, boolean)
com.google.android.exoplayer.util.BitArray tsBuffer
boolean payloadUnitStartIndicator
private void readPacketStart ()
int startCodePrefix
private void readPacketBody ()
long pts
int payloadSize
boolean ptsFlag
int headerDataLength
long timeUs
int payloadSize
}
com/google/android/exoplayer/hls/HlsMediaPlaylist.class
HlsMediaPlaylist.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.HlsMediaPlaylist extends com.google.android.exoplayer.hls.HlsPlaylist {
public static final String ENCRYPTION_METHOD_NONE
public static final String ENCRYPTION_METHOD_AES_128
public final int mediaSequence
public final int targetDurationSecs
public final int version
public final java.util.List segments
public final boolean live
public final long durationUs
public void <init> (android.net.Uri, int, int, int, boolean, java.util.List)
com.google.android.exoplayer.hls.HlsMediaPlaylist$Segment last
android.net.Uri baseUri
int mediaSequence
int targetDurationSecs
int version
boolean live
java.util.List segments
}
com/google/android/exoplayer/hls/Variant.class
Variant.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.Variant extends java.lang.Object {
public final int index
public final int bandwidth
public final String url
public final String[] codecs
public final int width
public final int height
public void <init> (int, java.lang.String, int, java.lang.String[], int, int)
int index
String url
int bandwidth
String[] codecs
int width
int height
}
com/google/android/exoplayer/hls/TsExtractor$TsPayloadReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
abstract com.google.android.exoplayer.hls.TsExtractor$TsPayloadReader extends java.lang.Object {
private void <init> ()
public abstract void read (com.google.android.exoplayer.util.BitArray, boolean)
synthetic void <init> (com.google.android.exoplayer.hls.TsExtractor$1)
com.google.android.exoplayer.hls.TsExtractor$1 x0
}
com/google/android/exoplayer/hls/TsExtractor$Sample.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$Sample extends java.lang.Object {
public static final int TYPE_VIDEO
public static final int TYPE_AUDIO
public static final int TYPE_MISC
public static final int TYPE_COUNT
public final int type
public com.google.android.exoplayer.hls.TsExtractor$Sample nextInPool
public byte[] data
public boolean isKeyframe
public int size
public long timeUs
public void <init> (int, int)
int type
int length
public void expand (int)
int length
byte[] newBuffer
public void reset ()
}
com/google/android/exoplayer/hls/HlsMasterPlaylist.class
HlsMasterPlaylist.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.HlsMasterPlaylist extends com.google.android.exoplayer.hls.HlsPlaylist {
public final java.util.List variants
public void <init> (android.net.Uri, java.util.List)
android.net.Uri baseUri
java.util.List variants
}
com/google/android/exoplayer/hls/BitArrayChunk.class
BitArrayChunk.java
package com.google.android.exoplayer.hls
public abstract com.google.android.exoplayer.hls.BitArrayChunk extends com.google.android.exoplayer.hls.HlsChunk {
private static final int READ_GRANULARITY
private final com.google.android.exoplayer.util.BitArray bitArray
private volatile boolean loadFinished
private volatile boolean loadCanceled
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.util.BitArray)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.util.BitArray bitArray
public void consume () throws java.io.IOException
protected abstract void consume (com.google.android.exoplayer.util.BitArray) throws java.io.IOException
public boolean isLoadFinished ()
public final void cancelLoad ()
public final boolean isLoadCanceled ()
public final void load () throws java.io.IOException java.lang.InterruptedException
int bytesRead
}
com/google/android/exoplayer/hls/TsExtractor$Id3Reader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$Id3Reader extends com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader {
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
public void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$SamplePool)
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
public void read (com.google.android.exoplayer.util.BitArray, int, long)
com.google.android.exoplayer.util.BitArray pesBuffer
int pesPayloadSize
long pesTimeUs
}
com/google/android/exoplayer/hls/HlsChunkSource$MediaPlaylistChunk.class
HlsChunkSource.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.HlsChunkSource$MediaPlaylistChunk extends com.google.android.exoplayer.hls.BitArrayChunk {
private final int variantIndex
private final android.net.Uri playlistBaseUri
final synthetic com.google.android.exoplayer.hls.HlsChunkSource this$0
public void <init> (com.google.android.exoplayer.hls.HlsChunkSource, int, com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, android.net.Uri)
int variantIndex
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
android.net.Uri playlistBaseUri
protected void consume (com.google.android.exoplayer.util.BitArray) throws java.io.IOException
com.google.android.exoplayer.util.BitArray data
com.google.android.exoplayer.hls.HlsPlaylist playlist
com.google.android.exoplayer.hls.HlsMediaPlaylist mediaPlaylist
}
com/google/android/exoplayer/hls/TsExtractor$PesPayloadReader.class
TsExtractor.java
package com.google.android.exoplayer.hls
abstract com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader extends com.google.android.exoplayer.hls.TsExtractor$SampleQueue {
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
protected void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$SamplePool)
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
public abstract void read (com.google.android.exoplayer.util.BitArray, int, long)
}
com/google/android/exoplayer/hls/TsExtractor$H264Reader.class
TsExtractor.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.TsExtractor$H264Reader extends com.google.android.exoplayer.hls.TsExtractor$PesPayloadReader {
private static final int NAL_UNIT_TYPE_IDR
private static final int NAL_UNIT_TYPE_SPS
private static final int NAL_UNIT_TYPE_PPS
private static final int NAL_UNIT_TYPE_AUD
public final com.google.android.exoplayer.hls.TsExtractor$SeiReader seiReader
private com.google.android.exoplayer.hls.TsExtractor$Sample currentSample
final synthetic com.google.android.exoplayer.hls.TsExtractor this$0
public void <init> (com.google.android.exoplayer.hls.TsExtractor, com.google.android.exoplayer.hls.TsExtractor$SamplePool, com.google.android.exoplayer.hls.TsExtractor$SeiReader)
com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
com.google.android.exoplayer.hls.TsExtractor$SeiReader seiReader
public void release ()
public void read (com.google.android.exoplayer.util.BitArray, int, long)
com.google.android.exoplayer.util.BitArray pesBuffer
int pesPayloadSize
long pesTimeUs
private int readOneH264Frame (com.google.android.exoplayer.util.BitArray, boolean)
int idrStart
com.google.android.exoplayer.util.BitArray pesBuffer
boolean remainderOnly
int offset
int audStart
private void parseMediaFormat (com.google.android.exoplayer.hls.TsExtractor$Sample)
boolean seqScalingListPresentFlag
int i
int limit
boolean seqScalingMatrixPresentFlag
int i
long numRefFramesInPicOrderCntCycle
int cropUnitX
int cropUnitY
int subWidthC
int subHeightC
int frameCropLeftOffset
int frameCropRightOffset
int frameCropTopOffset
int frameCropBottomOffset
int cropUnitX
int cropUnitY
com.google.android.exoplayer.hls.TsExtractor$Sample sample
com.google.android.exoplayer.util.BitArray bitArray
int spsOffset
int ppsOffset
int spsLength
int ppsLength
byte[] spsData
byte[] ppsData
java.util.List initializationData
byte[] unescapedSps
int profileIdc
int chromaFormatIdc
long picOrderCntType
int picWidthInMbs
int picHeightInMapUnits
boolean frameMbsOnlyFlag
int frameHeightInMbs
int frameWidth
int frameHeight
boolean frameCroppingFlag
private void skipScalingList (com.google.android.exoplayer.util.BitArray, int)
int deltaScale
int i
com.google.android.exoplayer.util.BitArray bitArray
int size
int lastScale
int nextScale
private byte[] unescapeStream (byte[], int, int)
int nextEscapePosition
int copyLength
int i
byte[] data
int offset
int limit
int position
java.util.List escapePositions
int escapeCount
int escapedPosition
int unescapedPosition
byte[] unescapedData
int remainingLength
private int findNextUnescapeIndex (byte[], int, int)
int i
byte[] bytes
int offset
int limit
}
com/google/android/exoplayer/hls/HlsChunkSource$EncryptionKeyChunk.class
HlsChunkSource.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.HlsChunkSource$EncryptionKeyChunk extends com.google.android.exoplayer.hls.BitArrayChunk {
private final String iv
final synthetic com.google.android.exoplayer.hls.HlsChunkSource this$0
public void <init> (com.google.android.exoplayer.hls.HlsChunkSource, com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, java.lang.String)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
String iv
protected void consume (com.google.android.exoplayer.util.BitArray) throws java.io.IOException
com.google.android.exoplayer.util.BitArray data
byte[] secretKey
}
com/google/android/exoplayer/hls/HlsParserUtil.class
HlsParserUtil.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.HlsParserUtil extends java.lang.Object {
private void <init> ()
public static java.lang.String parseStringAttr (java.lang.String, java.util.regex.Pattern, java.lang.String) throws com.google.android.exoplayer.ParserException
String line
java.util.regex.Pattern pattern
String tag
java.util.regex.Matcher matcher
public static java.lang.String parseOptionalStringAttr (java.lang.String, java.util.regex.Pattern)
String line
java.util.regex.Pattern pattern
java.util.regex.Matcher matcher
public static int parseIntAttr (java.lang.String, java.util.regex.Pattern, java.lang.String) throws com.google.android.exoplayer.ParserException
String line
java.util.regex.Pattern pattern
String tag
public static double parseDoubleAttr (java.lang.String, java.util.regex.Pattern, java.lang.String) throws com.google.android.exoplayer.ParserException
String line
java.util.regex.Pattern pattern
String tag
}
com/google/android/exoplayer/hls/HlsPlaylistParser$LineIterator.class
HlsPlaylistParser.java
package com.google.android.exoplayer.hls
com.google.android.exoplayer.hls.HlsPlaylistParser$LineIterator extends java.lang.Object {
private final java.io.BufferedReader reader
private final java.util.Queue extraLines
private String next
public void <init> (java.util.Queue, java.io.BufferedReader)
java.util.Queue extraLines
java.io.BufferedReader reader
public boolean hasNext () throws java.io.IOException
public java.lang.String next () throws java.io.IOException
String result
}
com/google/android/exoplayer/hls/TsExtractor$1.class
TsExtractor.java
package com.google.android.exoplayer.hls
synthetic com.google.android.exoplayer.hls.TsExtractor$1 extends java.lang.Object {
}
com/google/android/exoplayer/hls/HlsMediaPlaylist$Segment.class
HlsMediaPlaylist.java
package com.google.android.exoplayer.hls
public final com.google.android.exoplayer.hls.HlsMediaPlaylist$Segment extends java.lang.Object implements java.lang.Comparable {
public final boolean discontinuity
public final double durationSecs
public final String url
public final long startTimeUs
public final String encryptionMethod
public final String encryptionKeyUri
public final String encryptionIV
public final int byterangeOffset
public final int byterangeLength
public void <init> (java.lang.String, double, boolean, long, java.lang.String, java.lang.String, java.lang.String, int, int)
String uri
double durationSecs
boolean discontinuity
long startTimeUs
String encryptionMethod
String encryptionKeyUri
String encryptionIV
int byterangeOffset
int byterangeLength
public int compareTo (java.lang.Long)
Long startTimeUs
public volatile synthetic int compareTo (java.lang.Object)
Object x0
}
com/google/android/exoplayer/hls/HlsChunkSource.class
HlsChunkSource.java
package com.google.android.exoplayer.hls
public com.google.android.exoplayer.hls.HlsChunkSource extends java.lang.Object {
public static final int ADAPTIVE_MODE_NONE
public static final int ADAPTIVE_MODE_SPLICE
public static final int ADAPTIVE_MODE_ABRUPT
public static final long DEFAULT_TARGET_BUFFER_DURATION_MS
public static final long DEFAULT_MIN_BUFFER_TO_SWITCH_UP_MS
public static final long DEFAULT_MAX_BUFFER_TO_SWITCH_DOWN_MS
private static final float BANDWIDTH_FRACTION
private final com.google.android.exoplayer.hls.TsExtractor$SamplePool samplePool
private final com.google.android.exoplayer.upstream.DataSource upstreamDataSource
private final com.google.android.exoplayer.hls.HlsPlaylistParser playlistParser
private final com.google.android.exoplayer.hls.Variant[] enabledVariants
private final com.google.android.exoplayer.upstream.BandwidthMeter bandwidthMeter
private final com.google.android.exoplayer.util.BitArray bitArray
private final int adaptiveMode
private final android.net.Uri baseUri
private final int maxWidth
private final int maxHeight
private final long targetBufferDurationUs
private final long minBufferDurationToSwitchUpUs
private final long maxBufferDurationToSwitchDownUs
final com.google.android.exoplayer.hls.HlsMediaPlaylist[] mediaPlaylists
final long[] lastMediaPlaylistLoadTimesMs
boolean live
long durationUs
private int variantIndex
private com.google.android.exoplayer.upstream.DataSource encryptedDataSource
private android.net.Uri encryptionKeyUri
private String encryptedDataSourceIv
private byte[] encryptedDataSourceSecretKey
public void <init> (com.google.android.exoplayer.upstream.DataSource, java.lang.String, com.google.android.exoplayer.hls.HlsPlaylist, com.google.android.exoplayer.upstream.BandwidthMeter, int[], int)
com.google.android.exoplayer.upstream.DataSource dataSource
String playlistUrl
com.google.android.exoplayer.hls.HlsPlaylist playlist
com.google.android.exoplayer.upstream.BandwidthMeter bandwidthMeter
int[] variantIndices
int adaptiveMode
public void <init> (com.google.android.exoplayer.upstream.DataSource, java.lang.String, com.google.android.exoplayer.hls.HlsPlaylist, com.google.android.exoplayer.upstream.BandwidthMeter, int[], int, long, long, long)
int i
com.google.android.exoplayer.upstream.DataSource dataSource
String playlistUrl
com.google.android.exoplayer.hls.HlsPlaylist playlist
com.google.android.exoplayer.upstream.BandwidthMeter bandwidthMeter
int[] variantIndices
int adaptiveMode
long targetBufferDurationMs
long minBufferDurationToSwitchUpMs
long maxBufferDurationToSwitchDownMs
int maxWidth
int maxHeight
long minOriginalVariantIndex
public long getDurationUs ()
public void getMaxVideoDimensions (com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.MediaFormat out
public com.google.android.exoplayer.hls.HlsChunk getChunkOperation (com.google.android.exoplayer.hls.TsChunk, long, long)
com.google.android.exoplayer.hls.HlsChunk toReturn
android.net.Uri keyUri
long startTimeUs
long startTimeUs
long startTimeUs
com.google.android.exoplayer.hls.TsExtractor extractor
com.google.android.exoplayer.hls.TsChunk previousTsChunk
long seekPositionUs
long playbackPositionUs
int nextVariantIndex
boolean switchingVariant
boolean switchingVariantSpliced
com.google.android.exoplayer.hls.HlsMediaPlaylist mediaPlaylist
int chunkMediaSequence
boolean liveDiscontinuity
int chunkIndex
com.google.android.exoplayer.hls.HlsMediaPlaylist$Segment segment
android.net.Uri chunkUri
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
long startTimeUs
long endTimeUs
boolean isLastChunk
com.google.android.exoplayer.hls.TsExtractor extractor
private int getNextVariantIndex (com.google.android.exoplayer.hls.TsChunk, long)
com.google.android.exoplayer.hls.TsChunk previousTsChunk
long playbackPositionUs
int idealVariantIndex
long bufferedPositionUs
long bufferedUs
private int getVariantIndexForBandwdith (int)
int i
int bandwidth
private boolean shouldRerequestMediaPlaylist (int)
int variantIndex
com.google.android.exoplayer.hls.HlsMediaPlaylist mediaPlaylist
long timeSinceLastMediaPlaylistLoadMs
private int getLiveStartChunkMediaSequence (int)
int variantIndex
com.google.android.exoplayer.hls.HlsMediaPlaylist mediaPlaylist
int chunkIndex
private com.google.android.exoplayer.hls.HlsChunkSource$MediaPlaylistChunk newMediaPlaylistChunk (int)
int variantIndex
android.net.Uri mediaPlaylistUri
com.google.android.exoplayer.upstream.DataSpec dataSpec
android.net.Uri baseUri
private com.google.android.exoplayer.hls.HlsChunkSource$EncryptionKeyChunk newEncryptionKeyChunk (android.net.Uri, java.lang.String)
android.net.Uri keyUri
String iv
com.google.android.exoplayer.upstream.DataSpec dataSpec
void initEncryptedDataSource (android.net.Uri, java.lang.String, byte[])
String trimmedIv
android.net.Uri keyUri
String iv
byte[] secretKey
String trimmedIv
byte[] ivData
byte[] ivDataWithPadding
int offset
private void clearEncryptedDataSource ()
void setMediaPlaylist (int, com.google.android.exoplayer.hls.HlsMediaPlaylist)
int variantIndex
com.google.android.exoplayer.hls.HlsMediaPlaylist mediaPlaylist
private static com.google.android.exoplayer.hls.Variant[] filterVariants (com.google.android.exoplayer.hls.HlsMasterPlaylist, int[])
int i
com.google.android.exoplayer.hls.Variant variant
int i
com.google.android.exoplayer.hls.HlsMasterPlaylist masterPlaylist
int[] variantIndices
java.util.List masterVariants
java.util.ArrayList enabledVariants
java.util.ArrayList definiteVideoVariants
java.util.ArrayList definiteAudioOnlyVariants
com.google.android.exoplayer.hls.Variant[] enabledVariantsArray
private static boolean variantHasExplicitCodecWithPrefix (com.google.android.exoplayer.hls.Variant, java.lang.String)
int i
com.google.android.exoplayer.hls.Variant variant
String prefix
String[] codecs
static synthetic com.google.android.exoplayer.util.BitArray access$000 (com.google.android.exoplayer.hls.HlsChunkSource)
com.google.android.exoplayer.hls.HlsChunkSource x0
static synthetic com.google.android.exoplayer.hls.HlsPlaylistParser access$100 (com.google.android.exoplayer.hls.HlsChunkSource)
com.google.android.exoplayer.hls.HlsChunkSource x0
}
com/google/android/exoplayer/hls/TsExtractor$SamplePool.class
TsExtractor.java
package com.google.android.exoplayer.hls
public com.google.android.exoplayer.hls.TsExtractor$SamplePool extends java.lang.Object {
private static final int[] DEFAULT_SAMPLE_SIZES
private final com.google.android.exoplayer.hls.TsExtractor$Sample[] pools
public void <init> ()
synchronized com.google.android.exoplayer.hls.TsExtractor$Sample get (int)
int type
com.google.android.exoplayer.hls.TsExtractor$Sample sample
synchronized void recycle (com.google.android.exoplayer.hls.TsExtractor$Sample)
com.google.android.exoplayer.hls.TsExtractor$Sample sample
static void <clinit> ()
}
com/google/android/exoplayer/dash/
com/google/android/exoplayer/dash/DashChunkSource$InitializationLoadable.class
DashChunkSource.java
package com.google.android.exoplayer.dash
com.google.android.exoplayer.dash.DashChunkSource$InitializationLoadable extends com.google.android.exoplayer.chunk.Chunk {
private final com.google.android.exoplayer.parser.Extractor extractor
private final int expectedExtractorResult
private final long indexAnchor
private final android.net.Uri uri
final synthetic com.google.android.exoplayer.dash.DashChunkSource this$0
public void <init> (com.google.android.exoplayer.dash.DashChunkSource, com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, int, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.parser.Extractor, int, long)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
int trigger
com.google.android.exoplayer.chunk.Format format
com.google.android.exoplayer.parser.Extractor extractor
int expectedExtractorResult
long indexAnchor
protected void consumeStream (com.google.android.exoplayer.upstream.NonBlockingInputStream) throws java.io.IOException
com.google.android.exoplayer.upstream.NonBlockingInputStream stream
int result
}
com/google/android/exoplayer/dash/DashChunkSource$NoAdaptationSetException.class
DashChunkSource.java
package com.google.android.exoplayer.dash
public com.google.android.exoplayer.dash.DashChunkSource$NoAdaptationSetException extends java.io.IOException {
public void <init> (java.lang.String)
String message
}
com/google/android/exoplayer/dash/DashSegmentIndex.class
DashSegmentIndex.java
package com.google.android.exoplayer.dash
public abstract com.google.android.exoplayer.dash.DashSegmentIndex extends java.lang.Object {
public static final int INDEX_UNBOUNDED
public abstract int getSegmentNum (long)
public abstract long getTimeUs (int)
public abstract long getDurationUs (int)
public abstract com.google.android.exoplayer.dash.mpd.RangedUri getSegmentUrl (int)
public abstract int getFirstSegmentNum ()
public abstract int getLastSegmentNum ()
}
com/google/android/exoplayer/dash/DashChunkSource.class
DashChunkSource.java
package com.google.android.exoplayer.dash
public com.google.android.exoplayer.dash.DashChunkSource extends java.lang.Object implements com.google.android.exoplayer.chunk.ChunkSource {
public static final int USE_ALL_TRACKS
private final com.google.android.exoplayer.TrackInfo trackInfo
private final com.google.android.exoplayer.upstream.DataSource dataSource
private final com.google.android.exoplayer.chunk.FormatEvaluator evaluator
private final com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation evaluation
private final StringBuilder headerBuilder
private final long liveEdgeLatencyUs
private final int maxWidth
private final int maxHeight
private final com.google.android.exoplayer.chunk.Format[] formats
private final java.util.HashMap representationHolders
private final com.google.android.exoplayer.util.ManifestFetcher manifestFetcher
private final int adaptationSetIndex
private final int[] representationIndices
private final java.util.Map psshInfo
private com.google.android.exoplayer.dash.mpd.MediaPresentationDescription currentManifest
private boolean finishedCurrentManifest
private boolean lastChunkWasInitialization
private java.io.IOException fatalError
public transient void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator, com.google.android.exoplayer.dash.mpd.Representation[])
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
com.google.android.exoplayer.dash.mpd.Representation[] representations
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator, java.util.List)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
java.util.List representations
public void <init> (com.google.android.exoplayer.dash.mpd.MediaPresentationDescription, int, int[], com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator)
com.google.android.exoplayer.dash.mpd.MediaPresentationDescription manifest
int adaptationSetIndex
int[] representationIndices
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
public void <init> (com.google.android.exoplayer.util.ManifestFetcher, int, int[], com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator, long)
com.google.android.exoplayer.util.ManifestFetcher manifestFetcher
int adaptationSetIndex
int[] representationIndices
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
long liveEdgeLatencyMs
private void <init> (com.google.android.exoplayer.util.ManifestFetcher, com.google.android.exoplayer.dash.mpd.MediaPresentationDescription, int, int[], com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator, long)
com.google.android.exoplayer.parser.Extractor extractor
int i
com.google.android.exoplayer.util.ManifestFetcher manifestFetcher
com.google.android.exoplayer.dash.mpd.MediaPresentationDescription initialManifest
int adaptationSetIndex
int[] representationIndices
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
long liveEdgeLatencyUs
com.google.android.exoplayer.dash.mpd.Representation[] representations
long periodDurationUs
int maxWidth
int maxHeight
public final void getMaxVideoDimensions (com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.MediaFormat out
public final com.google.android.exoplayer.TrackInfo getTrackInfo ()
public void enable ()
public void disable (java.util.List)
java.util.List queue
public void continueBuffering (long)
com.google.android.exoplayer.dash.DashChunkSource$RepresentationHolder representationHolder
com.google.android.exoplayer.dash.DashSegmentIndex oldIndex
com.google.android.exoplayer.dash.DashSegmentIndex newIndex
int newFirstSegmentNum
int segmentNumShift
com.google.android.exoplayer.dash.mpd.Representation representation
com.google.android.exoplayer.dash.mpd.Representation[] arr$
int len$
int i$
com.google.android.exoplayer.dash.mpd.Representation[] newRepresentations
long playbackPositionUs
com.google.android.exoplayer.dash.mpd.MediaPresentationDescription newManifest
long minUpdatePeriod
public final void getChunkOperation (java.util.List, long, long, com.google.android.exoplayer.chunk.ChunkOperationHolder)
com.google.android.exoplayer.chunk.Chunk initializationChunk
long bufferDepthUs
long liveEdgeTimestampUs
int segmentNum
java.util.List queue
long seekPositionUs
long playbackPositionUs
com.google.android.exoplayer.chunk.ChunkOperationHolder out
com.google.android.exoplayer.chunk.Format selectedFormat
com.google.android.exoplayer.dash.DashChunkSource$RepresentationHolder representationHolder
com.google.android.exoplayer.dash.mpd.Representation selectedRepresentation
com.google.android.exoplayer.dash.DashSegmentIndex segmentIndex
com.google.android.exoplayer.parser.Extractor extractor
com.google.android.exoplayer.dash.mpd.RangedUri pendingInitializationUri
com.google.android.exoplayer.dash.mpd.RangedUri pendingIndexUri
long nowUs
int firstAvailableSegmentNum
int lastAvailableSegmentNum
boolean indexUnbounded
int segmentNum
com.google.android.exoplayer.chunk.Chunk nextMediaChunk
public java.io.IOException getError ()
public void onChunkLoadError (com.google.android.exoplayer.chunk.Chunk, java.lang.Exception)
com.google.android.exoplayer.chunk.Chunk chunk
Exception e
private boolean mimeTypeIsWebm (java.lang.String)
String mimeType
private com.google.android.exoplayer.chunk.Chunk newInitializationChunk (com.google.android.exoplayer.dash.mpd.RangedUri, com.google.android.exoplayer.dash.mpd.RangedUri, com.google.android.exoplayer.dash.mpd.Representation, com.google.android.exoplayer.parser.Extractor, com.google.android.exoplayer.upstream.DataSource, int)
com.google.android.exoplayer.dash.mpd.RangedUri requestUri
com.google.android.exoplayer.dash.mpd.RangedUri initializationUri
com.google.android.exoplayer.dash.mpd.RangedUri indexUri
com.google.android.exoplayer.dash.mpd.Representation representation
com.google.android.exoplayer.parser.Extractor extractor
com.google.android.exoplayer.upstream.DataSource dataSource
int trigger
int expectedExtractorResult
long indexAnchor
com.google.android.exoplayer.dash.mpd.RangedUri requestUri
com.google.android.exoplayer.upstream.DataSpec dataSpec
private com.google.android.exoplayer.chunk.Chunk newMediaChunk (com.google.android.exoplayer.dash.DashChunkSource$RepresentationHolder, com.google.android.exoplayer.upstream.DataSource, int, int)
com.google.android.exoplayer.dash.DashChunkSource$RepresentationHolder representationHolder
com.google.android.exoplayer.upstream.DataSource dataSource
int segmentNum
int trigger
com.google.android.exoplayer.dash.mpd.Representation representation
com.google.android.exoplayer.dash.DashSegmentIndex segmentIndex
long startTimeUs
long endTimeUs
boolean isLastSegment
int nextAbsoluteSegmentNum
com.google.android.exoplayer.dash.mpd.RangedUri segmentUri
com.google.android.exoplayer.upstream.DataSpec dataSpec
long presentationTimeOffsetUs
private long getLiveSeekPosition (long, boolean)
long liveEdgeTimestampUs
com.google.android.exoplayer.dash.DashSegmentIndex segmentIndex
int lastSegmentNum
long indexLiveEdgeTimestampUs
com.google.android.exoplayer.dash.DashChunkSource$RepresentationHolder representationHolder
java.util.Iterator i$
long nowUs
boolean indexUnbounded
long liveEdgeTimestampUs
private static com.google.android.exoplayer.dash.mpd.Representation[] getFilteredRepresentations (com.google.android.exoplayer.dash.mpd.MediaPresentationDescription, int, int[])
com.google.android.exoplayer.dash.mpd.Representation[] filteredRepresentations
int i
com.google.android.exoplayer.dash.mpd.Representation[] filteredRepresentations
com.google.android.exoplayer.dash.mpd.MediaPresentationDescription manifest
int adaptationSetIndex
int[] representationIndices
com.google.android.exoplayer.dash.mpd.AdaptationSet adaptationSet
java.util.List representations
private static java.util.Map getPsshInfo (com.google.android.exoplayer.dash.mpd.MediaPresentationDescription, int)
com.google.android.exoplayer.dash.mpd.ContentProtection contentProtection
java.util.Iterator i$
java.util.Map psshInfo
com.google.android.exoplayer.dash.mpd.MediaPresentationDescription manifest
int adaptationSetIndex
com.google.android.exoplayer.dash.mpd.AdaptationSet adaptationSet
private static com.google.android.exoplayer.dash.mpd.MediaPresentationDescription buildManifest (java.util.List)
java.util.List representations
com.google.android.exoplayer.dash.mpd.Representation firstRepresentation
com.google.android.exoplayer.dash.mpd.AdaptationSet adaptationSet
com.google.android.exoplayer.dash.mpd.Period period
long duration
static synthetic java.util.HashMap access$000 (com.google.android.exoplayer.dash.DashChunkSource)
com.google.android.exoplayer.dash.DashChunkSource x0
}
com/google/android/exoplayer/dash/DashChunkSource$RepresentationHolder.class
DashChunkSource.java
package com.google.android.exoplayer.dash
com.google.android.exoplayer.dash.DashChunkSource$RepresentationHolder extends java.lang.Object {
public final com.google.android.exoplayer.dash.mpd.Representation representation
public final com.google.android.exoplayer.parser.Extractor extractor
public com.google.android.exoplayer.dash.DashSegmentIndex segmentIndex
public int segmentNumShift
public long vttHeaderOffsetUs
public byte[] vttHeader
public void <init> (com.google.android.exoplayer.dash.mpd.Representation, com.google.android.exoplayer.parser.Extractor)
com.google.android.exoplayer.dash.mpd.Representation representation
com.google.android.exoplayer.parser.Extractor extractor
}
com/google/android/exoplayer/dash/DashWrappingSegmentIndex.class
DashWrappingSegmentIndex.java
package com.google.android.exoplayer.dash
public com.google.android.exoplayer.dash.DashWrappingSegmentIndex extends java.lang.Object implements com.google.android.exoplayer.dash.DashSegmentIndex {
private final com.google.android.exoplayer.parser.SegmentIndex segmentIndex
private final android.net.Uri uri
private final long indexAnchor
public void <init> (com.google.android.exoplayer.parser.SegmentIndex, android.net.Uri, long)
com.google.android.exoplayer.parser.SegmentIndex segmentIndex
android.net.Uri uri
long indexAnchor
public int getFirstSegmentNum ()
public int getLastSegmentNum ()
public long getTimeUs (int)
int segmentNum
public long getDurationUs (int)
int segmentNum
public com.google.android.exoplayer.dash.mpd.RangedUri getSegmentUrl (int)
int segmentNum
public int getSegmentNum (long)
long timeUs
}
com/google/android/exoplayer/dash/mpd/
com/google/android/exoplayer/dash/mpd/MediaPresentationDescription.class
MediaPresentationDescription.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.MediaPresentationDescription extends java.lang.Object {
public final long availabilityStartTime
public final long duration
public final long minBufferTime
public final boolean dynamic
public final long minUpdatePeriod
public final long timeShiftBufferDepth
public final java.util.List periods
public final com.google.android.exoplayer.dash.mpd.UtcTimingElement utcTiming
public void <init> (long, long, long, boolean, long, long, com.google.android.exoplayer.dash.mpd.UtcTimingElement, java.util.List)
long availabilityStartTime
long duration
long minBufferTime
boolean dynamic
long minUpdatePeriod
long timeShiftBufferDepth
com.google.android.exoplayer.dash.mpd.UtcTimingElement utcTiming
java.util.List periods
}
com/google/android/exoplayer/dash/mpd/SegmentBase$SingleSegmentBase.class
SegmentBase.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase extends com.google.android.exoplayer.dash.mpd.SegmentBase {
public final android.net.Uri uri
final long indexStart
final long indexLength
public void <init> (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, android.net.Uri, long, long)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
android.net.Uri uri
long indexStart
long indexLength
public com.google.android.exoplayer.dash.mpd.RangedUri getIndex ()
}
com/google/android/exoplayer/dash/mpd/Period.class
Period.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.Period extends java.lang.Object {
public final String id
public final long startMs
public final long durationMs
public final java.util.List adaptationSets
public void <init> (java.lang.String, long, long, java.util.List)
String id
long start
long duration
java.util.List adaptationSets
public int getAdaptationSetIndex (int)
int i
int type
int adaptationCount
}
com/google/android/exoplayer/dash/mpd/UrlTemplate.class
UrlTemplate.java
package com.google.android.exoplayer.dash.mpd
public final com.google.android.exoplayer.dash.mpd.UrlTemplate extends java.lang.Object {
private static final String REPRESENTATION
private static final String NUMBER
private static final String BANDWIDTH
private static final String TIME
private static final String ESCAPED_DOLLAR
private static final String DEFAULT_FORMAT_TAG
private static final int REPRESENTATION_ID
private static final int NUMBER_ID
private static final int BANDWIDTH_ID
private static final int TIME_ID
private final String[] urlPieces
private final int[] identifiers
private final String[] identifierFormatTags
private final int identifierCount
public static com.google.android.exoplayer.dash.mpd.UrlTemplate compile (java.lang.String)
String template
String[] urlPieces
int[] identifiers
String[] identifierFormatTags
int identifierCount
private void <init> (java.lang.String[], int[], java.lang.String[], int)
String[] urlPieces
int[] identifiers
String[] identifierFormatTags
int identifierCount
public java.lang.String buildUri (java.lang.String, int, int, long)
int i
String representationId
int segmentNumber
int bandwidth
long time
StringBuilder builder
private static int parseTemplate (java.lang.String, java.lang.String[], int[], java.lang.String[])
int formatTagIndex
String formatTag
int secondIndex
String identifier
int dollarIndex
String template
String[] urlPieces
int[] identifiers
String[] identifierFormatTags
int templateIndex
int identifierCount
}
com/google/android/exoplayer/dash/mpd/SegmentBase$SegmentTimelineElement.class
SegmentBase.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTimelineElement extends java.lang.Object {
long startTime
long duration
public void <init> (long, long)
long startTime
long duration
}
com/google/android/exoplayer/dash/mpd/SegmentBase$MultiSegmentBase.class
SegmentBase.java
package com.google.android.exoplayer.dash.mpd
public abstract com.google.android.exoplayer.dash.mpd.SegmentBase$MultiSegmentBase extends com.google.android.exoplayer.dash.mpd.SegmentBase {
final long periodDurationMs
final int startNumber
final long duration
final java.util.List segmentTimeline
public void <init> (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, long, int, long, java.util.List)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
long periodDurationMs
int startNumber
long duration
java.util.List segmentTimeline
public int getSegmentNum (long)
long durationUs
int midIndex
long midTimeUs
int lowIndex
int highIndex
long timeUs
public final long getSegmentDurationUs (int)
long duration
int sequenceNumber
public final long getSegmentTimeUs (int)
long unscaledSegmentTime
int sequenceNumber
long unscaledSegmentTime
public abstract com.google.android.exoplayer.dash.mpd.RangedUri getSegmentUrl (com.google.android.exoplayer.dash.mpd.Representation, int)
public int getFirstSegmentNum ()
public abstract int getLastSegmentNum ()
}
com/google/android/exoplayer/dash/mpd/AdaptationSet.class
AdaptationSet.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.AdaptationSet extends java.lang.Object {
public static final int TYPE_UNKNOWN
public static final int TYPE_VIDEO
public static final int TYPE_AUDIO
public static final int TYPE_TEXT
public final int id
public final int type
public final java.util.List representations
public final java.util.List contentProtections
public void <init> (int, int, java.util.List, java.util.List)
int id
int type
java.util.List representations
java.util.List contentProtections
public void <init> (int, int, java.util.List)
int id
int type
java.util.List representations
public boolean hasContentProtection ()
}
com/google/android/exoplayer/dash/mpd/Representation$SingleSegmentRepresentation.class
Representation.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.Representation$SingleSegmentRepresentation extends com.google.android.exoplayer.dash.mpd.Representation {
public final android.net.Uri uri
public final long contentLength
private final com.google.android.exoplayer.dash.mpd.RangedUri indexUri
public static com.google.android.exoplayer.dash.mpd.Representation$SingleSegmentRepresentation newInstance (long, long, java.lang.String, long, com.google.android.exoplayer.chunk.Format, android.net.Uri, long, long, long, long, long)
long periodStartMs
long periodDurationMs
String contentId
long revisionId
com.google.android.exoplayer.chunk.Format format
android.net.Uri uri
long initializationStart
long initializationEnd
long indexStart
long indexEnd
long contentLength
com.google.android.exoplayer.dash.mpd.RangedUri rangedUri
com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase segmentBase
public void <init> (long, long, java.lang.String, long, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase, long)
long periodStartMs
long periodDurationMs
String contentId
long revisionId
com.google.android.exoplayer.chunk.Format format
com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase segmentBase
long contentLength
public com.google.android.exoplayer.dash.mpd.RangedUri getIndexUri ()
public com.google.android.exoplayer.dash.DashSegmentIndex getIndex ()
}
com/google/android/exoplayer/dash/mpd/UtcTimingElement.class
UtcTimingElement.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.UtcTimingElement extends java.lang.Object {
public final String schemeIdUri
public final String value
public void <init> (java.lang.String, java.lang.String)
String schemeIdUri
String value
}
com/google/android/exoplayer/dash/mpd/Representation$1.class
Representation.java
package com.google.android.exoplayer.dash.mpd
synthetic com.google.android.exoplayer.dash.mpd.Representation$1 extends java.lang.Object {
}
com/google/android/exoplayer/dash/mpd/SegmentBase$SegmentList.class
SegmentBase.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentList extends com.google.android.exoplayer.dash.mpd.SegmentBase$MultiSegmentBase {
final java.util.List mediaSegments
public void <init> (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, long, int, long, java.util.List, java.util.List)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
long periodDurationMs
int startNumber
long duration
java.util.List segmentTimeline
java.util.List mediaSegments
public com.google.android.exoplayer.dash.mpd.RangedUri getSegmentUrl (com.google.android.exoplayer.dash.mpd.Representation, int)
com.google.android.exoplayer.dash.mpd.Representation representation
int sequenceNumber
public int getLastSegmentNum ()
}
com/google/android/exoplayer/dash/mpd/ContentProtection.class
ContentProtection.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.ContentProtection extends java.lang.Object {
public final String schemeUriId
public final java.util.UUID uuid
public final byte[] data
public void <init> (java.lang.String, java.util.UUID, byte[])
String schemeUriId
java.util.UUID uuid
byte[] data
}
com/google/android/exoplayer/dash/mpd/SegmentBase.class
SegmentBase.java
package com.google.android.exoplayer.dash.mpd
public abstract com.google.android.exoplayer.dash.mpd.SegmentBase extends java.lang.Object {
final com.google.android.exoplayer.dash.mpd.RangedUri initialization
final long timescale
final long presentationTimeOffset
public void <init> (com.google.android.exoplayer.dash.mpd.RangedUri, long, long)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
public com.google.android.exoplayer.dash.mpd.RangedUri getInitialization (com.google.android.exoplayer.dash.mpd.Representation)
com.google.android.exoplayer.dash.mpd.Representation representation
}
com/google/android/exoplayer/dash/mpd/RangedUri.class
RangedUri.java
package com.google.android.exoplayer.dash.mpd
public final com.google.android.exoplayer.dash.mpd.RangedUri extends java.lang.Object {
public final long start
public final long length
private final android.net.Uri baseUri
private final String stringUri
private int hashCode
public void <init> (android.net.Uri, java.lang.String, long, long)
android.net.Uri baseUri
String stringUri
long start
long length
public android.net.Uri getUri ()
public com.google.android.exoplayer.dash.mpd.RangedUri attemptMerge (com.google.android.exoplayer.dash.mpd.RangedUri)
com.google.android.exoplayer.dash.mpd.RangedUri other
public int hashCode ()
int result
public boolean equals (java.lang.Object)
Object obj
com.google.android.exoplayer.dash.mpd.RangedUri other
}
com/google/android/exoplayer/dash/mpd/Representation$MultiSegmentRepresentation.class
Representation.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.Representation$MultiSegmentRepresentation extends com.google.android.exoplayer.dash.mpd.Representation implements com.google.android.exoplayer.dash.DashSegmentIndex {
private final com.google.android.exoplayer.dash.mpd.SegmentBase$MultiSegmentBase segmentBase
public void <init> (long, long, java.lang.String, long, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.dash.mpd.SegmentBase$MultiSegmentBase)
long periodStartMs
long periodDurationMs
String contentId
long revisionId
com.google.android.exoplayer.chunk.Format format
com.google.android.exoplayer.dash.mpd.SegmentBase$MultiSegmentBase segmentBase
public com.google.android.exoplayer.dash.mpd.RangedUri getIndexUri ()
public com.google.android.exoplayer.dash.DashSegmentIndex getIndex ()
public com.google.android.exoplayer.dash.mpd.RangedUri getSegmentUrl (int)
int segmentIndex
public int getSegmentNum (long)
long timeUs
public long getTimeUs (int)
int segmentIndex
public long getDurationUs (int)
int segmentIndex
public int getFirstSegmentNum ()
public int getLastSegmentNum ()
}
com/google/android/exoplayer/dash/mpd/SegmentBase$SegmentTemplate.class
SegmentBase.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTemplate extends com.google.android.exoplayer.dash.mpd.SegmentBase$MultiSegmentBase {
final com.google.android.exoplayer.dash.mpd.UrlTemplate initializationTemplate
final com.google.android.exoplayer.dash.mpd.UrlTemplate mediaTemplate
private final android.net.Uri baseUrl
public void <init> (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, long, int, long, java.util.List, com.google.android.exoplayer.dash.mpd.UrlTemplate, com.google.android.exoplayer.dash.mpd.UrlTemplate, android.net.Uri)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
long periodDurationMs
int startNumber
long duration
java.util.List segmentTimeline
com.google.android.exoplayer.dash.mpd.UrlTemplate initializationTemplate
com.google.android.exoplayer.dash.mpd.UrlTemplate mediaTemplate
android.net.Uri baseUrl
public com.google.android.exoplayer.dash.mpd.RangedUri getInitialization (com.google.android.exoplayer.dash.mpd.Representation)
String urlString
com.google.android.exoplayer.dash.mpd.Representation representation
public com.google.android.exoplayer.dash.mpd.RangedUri getSegmentUrl (com.google.android.exoplayer.dash.mpd.Representation, int)
com.google.android.exoplayer.dash.mpd.Representation representation
int sequenceNumber
long time
String uriString
public int getLastSegmentNum ()
long durationMs
}
com/google/android/exoplayer/dash/mpd/Representation.class
Representation.java
package com.google.android.exoplayer.dash.mpd
public abstract com.google.android.exoplayer.dash.mpd.Representation extends java.lang.Object {
public final String contentId
public final long revisionId
public final com.google.android.exoplayer.chunk.Format format
public final long periodStartMs
public final long periodDurationMs
public final long presentationTimeOffsetMs
private final com.google.android.exoplayer.dash.mpd.RangedUri initializationUri
public static com.google.android.exoplayer.dash.mpd.Representation newInstance (long, long, java.lang.String, long, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.dash.mpd.SegmentBase)
long periodStartMs
long periodDurationMs
String contentId
long revisionId
com.google.android.exoplayer.chunk.Format format
com.google.android.exoplayer.dash.mpd.SegmentBase segmentBase
private void <init> (long, long, java.lang.String, long, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.dash.mpd.SegmentBase)
long periodStartMs
long periodDurationMs
String contentId
long revisionId
com.google.android.exoplayer.chunk.Format format
com.google.android.exoplayer.dash.mpd.SegmentBase segmentBase
public com.google.android.exoplayer.dash.mpd.RangedUri getInitializationUri ()
public abstract com.google.android.exoplayer.dash.mpd.RangedUri getIndexUri ()
public abstract com.google.android.exoplayer.dash.DashSegmentIndex getIndex ()
public java.lang.String getCacheKey ()
synthetic void <init> (long, long, java.lang.String, long, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.dash.mpd.SegmentBase, com.google.android.exoplayer.dash.mpd.Representation$1)
long x0
long x1
String x2
long x3
com.google.android.exoplayer.chunk.Format x4
com.google.android.exoplayer.dash.mpd.SegmentBase x5
com.google.android.exoplayer.dash.mpd.Representation$1 x6
}
com/google/android/exoplayer/dash/mpd/MediaPresentationDescriptionParser.class
MediaPresentationDescriptionParser.java
package com.google.android.exoplayer.dash.mpd
public com.google.android.exoplayer.dash.mpd.MediaPresentationDescriptionParser extends org.xml.sax.helpers.DefaultHandler implements com.google.android.exoplayer.util.ManifestParser {
private final org.xmlpull.v1.XmlPullParserFactory xmlParserFactory
public void <init> ()
org.xmlpull.v1.XmlPullParserException e
public com.google.android.exoplayer.dash.mpd.MediaPresentationDescription parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser xpp
int eventType
org.xmlpull.v1.XmlPullParserException e
java.text.ParseException e
java.io.InputStream inputStream
String inputEncoding
String contentId
android.net.Uri baseUrl
protected com.google.android.exoplayer.dash.mpd.MediaPresentationDescription parseMediaPresentationDescription (org.xmlpull.v1.XmlPullParser, java.lang.String, android.net.Uri) throws org.xmlpull.v1.XmlPullParserException java.io.IOException java.text.ParseException
org.xmlpull.v1.XmlPullParser xpp
String contentId
android.net.Uri baseUrl
long availabilityStartTime
long durationMs
long minBufferTimeMs
String typeString
boolean dynamic
long minUpdateTimeMs
long timeShiftBufferDepthMs
com.google.android.exoplayer.dash.mpd.UtcTimingElement utcTiming
java.util.List periods
protected com.google.android.exoplayer.dash.mpd.MediaPresentationDescription buildMediaPresentationDescription (long, long, long, boolean, long, long, com.google.android.exoplayer.dash.mpd.UtcTimingElement, java.util.List)
long availabilityStartTime
long durationMs
long minBufferTimeMs
boolean dynamic
long minUpdateTimeMs
long timeShiftBufferDepthMs
com.google.android.exoplayer.dash.mpd.UtcTimingElement utcTiming
java.util.List periods
protected com.google.android.exoplayer.dash.mpd.UtcTimingElement parseUtcTiming (org.xmlpull.v1.XmlPullParser)
org.xmlpull.v1.XmlPullParser xpp
String schemeIdUri
String value
protected com.google.android.exoplayer.dash.mpd.UtcTimingElement buildUtcTimingElement (java.lang.String, java.lang.String)
String schemeIdUri
String value
protected com.google.android.exoplayer.dash.mpd.Period parsePeriod (org.xmlpull.v1.XmlPullParser, java.lang.String, android.net.Uri, long) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
String contentId
android.net.Uri baseUrl
long mpdDurationMs
String id
long startMs
long durationMs
com.google.android.exoplayer.dash.mpd.SegmentBase segmentBase
java.util.List adaptationSets
protected com.google.android.exoplayer.dash.mpd.Period buildPeriod (java.lang.String, long, long, java.util.List)
String id
long startMs
long durationMs
java.util.List adaptationSets
protected com.google.android.exoplayer.dash.mpd.AdaptationSet parseAdaptationSet (org.xmlpull.v1.XmlPullParser, java.lang.String, android.net.Uri, long, long, com.google.android.exoplayer.dash.mpd.SegmentBase) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
com.google.android.exoplayer.dash.mpd.Representation representation
org.xmlpull.v1.XmlPullParser xpp
String contentId
android.net.Uri baseUrl
long periodStartMs
long periodDurationMs
com.google.android.exoplayer.dash.mpd.SegmentBase segmentBase
String mimeType
String language
int contentType
int id
java.util.List contentProtections
java.util.List representations
protected com.google.android.exoplayer.dash.mpd.AdaptationSet buildAdaptationSet (int, int, java.util.List, java.util.List)
int id
int contentType
java.util.List representations
java.util.List contentProtections
protected int parseAdaptationSetType (java.lang.String)
String contentType
protected int parseAdaptationSetTypeFromMimeType (java.lang.String)
String mimeType
private int checkAdaptationSetTypeConsistency (int, int)
int firstType
int secondType
protected com.google.android.exoplayer.dash.mpd.ContentProtection parseContentProtection (org.xmlpull.v1.XmlPullParser) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
String schemeIdUri
protected com.google.android.exoplayer.dash.mpd.ContentProtection buildContentProtection (java.lang.String)
String schemeIdUri
protected void parseAdaptationSetChild (org.xmlpull.v1.XmlPullParser) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
protected com.google.android.exoplayer.dash.mpd.Representation parseRepresentation (org.xmlpull.v1.XmlPullParser, java.lang.String, android.net.Uri, long, long, java.lang.String, java.lang.String, com.google.android.exoplayer.dash.mpd.SegmentBase) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
String contentId
android.net.Uri baseUrl
long periodStartMs
long periodDurationMs
String mimeType
String language
com.google.android.exoplayer.dash.mpd.SegmentBase segmentBase
String id
int bandwidth
int audioSamplingRate
int width
int height
String codecs
int numChannels
com.google.android.exoplayer.chunk.Format format
protected com.google.android.exoplayer.chunk.Format buildFormat (java.lang.String, java.lang.String, int, int, int, int, int, java.lang.String, java.lang.String)
String id
String mimeType
int width
int height
int numChannels
int audioSamplingRate
int bandwidth
String language
String codecs
protected com.google.android.exoplayer.dash.mpd.Representation buildRepresentation (long, long, java.lang.String, int, com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.dash.mpd.SegmentBase)
long periodStartMs
long periodDurationMs
String contentId
int revisionId
com.google.android.exoplayer.chunk.Format format
com.google.android.exoplayer.dash.mpd.SegmentBase segmentBase
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase parseSegmentBase (org.xmlpull.v1.XmlPullParser, android.net.Uri, com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
String[] indexRange
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri baseUrl
com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase parent
long timescale
long presentationTimeOffset
long indexStart
long indexLength
String indexRangeText
com.google.android.exoplayer.dash.mpd.RangedUri initialization
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SingleSegmentBase buildSingleSegmentBase (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, android.net.Uri, long, long)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
android.net.Uri baseUrl
long indexStart
long indexLength
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentList parseSegmentList (org.xmlpull.v1.XmlPullParser, android.net.Uri, com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentList, long) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri baseUrl
com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentList parent
long periodDurationMs
long timescale
long presentationTimeOffset
long duration
int startNumber
com.google.android.exoplayer.dash.mpd.RangedUri initialization
java.util.List timeline
java.util.List segments
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentList buildSegmentList (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, long, int, long, java.util.List, java.util.List)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
long periodDurationMs
int startNumber
long duration
java.util.List timeline
java.util.List segments
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTemplate parseSegmentTemplate (org.xmlpull.v1.XmlPullParser, android.net.Uri, com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTemplate, long) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri baseUrl
com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTemplate parent
long periodDurationMs
long timescale
long presentationTimeOffset
long duration
int startNumber
com.google.android.exoplayer.dash.mpd.UrlTemplate mediaTemplate
com.google.android.exoplayer.dash.mpd.UrlTemplate initializationTemplate
com.google.android.exoplayer.dash.mpd.RangedUri initialization
java.util.List timeline
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTemplate buildSegmentTemplate (com.google.android.exoplayer.dash.mpd.RangedUri, long, long, long, int, long, java.util.List, com.google.android.exoplayer.dash.mpd.UrlTemplate, com.google.android.exoplayer.dash.mpd.UrlTemplate, android.net.Uri)
com.google.android.exoplayer.dash.mpd.RangedUri initialization
long timescale
long presentationTimeOffset
long periodDurationMs
int startNumber
long duration
java.util.List timeline
com.google.android.exoplayer.dash.mpd.UrlTemplate initializationTemplate
com.google.android.exoplayer.dash.mpd.UrlTemplate mediaTemplate
android.net.Uri baseUrl
protected java.util.List parseSegmentTimeline (org.xmlpull.v1.XmlPullParser) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
int i
long duration
int count
org.xmlpull.v1.XmlPullParser xpp
java.util.List segmentTimeline
long elapsedTime
protected com.google.android.exoplayer.dash.mpd.SegmentBase$SegmentTimelineElement buildSegmentTimelineElement (long, long)
long elapsedTime
long duration
protected com.google.android.exoplayer.dash.mpd.UrlTemplate parseUrlTemplate (org.xmlpull.v1.XmlPullParser, java.lang.String, com.google.android.exoplayer.dash.mpd.UrlTemplate)
org.xmlpull.v1.XmlPullParser xpp
String name
com.google.android.exoplayer.dash.mpd.UrlTemplate defaultValue
String valueString
protected com.google.android.exoplayer.dash.mpd.RangedUri parseInitialization (org.xmlpull.v1.XmlPullParser, android.net.Uri)
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri baseUrl
protected com.google.android.exoplayer.dash.mpd.RangedUri parseSegmentUrl (org.xmlpull.v1.XmlPullParser, android.net.Uri)
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri baseUrl
protected com.google.android.exoplayer.dash.mpd.RangedUri parseRangedUrl (org.xmlpull.v1.XmlPullParser, android.net.Uri, java.lang.String, java.lang.String)
String[] rangeTextArray
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri baseUrl
String urlAttribute
String rangeAttribute
String urlText
long rangeStart
long rangeLength
String rangeText
protected com.google.android.exoplayer.dash.mpd.RangedUri buildRangedUri (android.net.Uri, java.lang.String, long, long)
android.net.Uri baseUrl
String urlText
long rangeStart
long rangeLength
protected static boolean isEndTag (org.xmlpull.v1.XmlPullParser, java.lang.String) throws org.xmlpull.v1.XmlPullParserException
org.xmlpull.v1.XmlPullParser xpp
String name
protected static boolean isStartTag (org.xmlpull.v1.XmlPullParser, java.lang.String) throws org.xmlpull.v1.XmlPullParserException
org.xmlpull.v1.XmlPullParser xpp
String name
protected static boolean isStartTag (org.xmlpull.v1.XmlPullParser) throws org.xmlpull.v1.XmlPullParserException
org.xmlpull.v1.XmlPullParser xpp
protected static long parseDuration (org.xmlpull.v1.XmlPullParser, java.lang.String, long)
org.xmlpull.v1.XmlPullParser xpp
String name
long defaultValue
String value
protected static long parseDateTime (org.xmlpull.v1.XmlPullParser, java.lang.String, long) throws java.text.ParseException
org.xmlpull.v1.XmlPullParser xpp
String name
long defaultValue
String value
protected static android.net.Uri parseBaseUrl (org.xmlpull.v1.XmlPullParser, android.net.Uri) throws org.xmlpull.v1.XmlPullParserException java.io.IOException
org.xmlpull.v1.XmlPullParser xpp
android.net.Uri parentBaseUrl
String newBaseUrlText
android.net.Uri newBaseUri
protected static int parseInt (org.xmlpull.v1.XmlPullParser, java.lang.String)
org.xmlpull.v1.XmlPullParser xpp
String name
protected static int parseInt (org.xmlpull.v1.XmlPullParser, java.lang.String, int)
org.xmlpull.v1.XmlPullParser xpp
String name
int defaultValue
String value
protected static long parseLong (org.xmlpull.v1.XmlPullParser, java.lang.String)
org.xmlpull.v1.XmlPullParser xpp
String name
protected static long parseLong (org.xmlpull.v1.XmlPullParser, java.lang.String, long)
org.xmlpull.v1.XmlPullParser xpp
String name
long defaultValue
String value
protected static java.lang.String parseString (org.xmlpull.v1.XmlPullParser, java.lang.String, java.lang.String)
org.xmlpull.v1.XmlPullParser xpp
String name
String defaultValue
String value
public volatile synthetic java.lang.Object parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException com.google.android.exoplayer.ParserException
java.io.InputStream x0
String x1
String x2
android.net.Uri x3
}
com/google/android/exoplayer/text/
com/google/android/exoplayer/text/TextTrackRenderer.class
TextTrackRenderer.java
package com.google.android.exoplayer.text
public com.google.android.exoplayer.text.TextTrackRenderer extends com.google.android.exoplayer.TrackRenderer implements android.os.Handler$Callback {
private static final int MSG_UPDATE_OVERLAY
private final android.os.Handler textRendererHandler
private final com.google.android.exoplayer.text.TextRenderer textRenderer
private final com.google.android.exoplayer.SampleSource source
private final com.google.android.exoplayer.MediaFormatHolder formatHolder
private final com.google.android.exoplayer.text.SubtitleParser[] subtitleParsers
private int parserIndex
private int trackIndex
private long currentPositionUs
private boolean inputStreamEnded
private com.google.android.exoplayer.text.Subtitle subtitle
private com.google.android.exoplayer.text.SubtitleParserHelper parserHelper
private android.os.HandlerThread parserThread
private int nextSubtitleEventIndex
private boolean textRendererNeedsUpdate
public transient void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.text.TextRenderer, android.os.Looper, com.google.android.exoplayer.text.SubtitleParser[])
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.text.TextRenderer textRenderer
android.os.Looper textRendererLooper
com.google.android.exoplayer.text.SubtitleParser[] subtitleParsers
protected int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
boolean sourcePrepared
java.io.IOException e
int j
int i
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void seekTo (long)
long positionUs
private void seekToInternal (long)
long positionUs
protected void doSomeWork (long, long) throws com.google.android.exoplayer.ExoPlaybackException
java.io.IOException e
java.io.IOException e
long nextEventTimeUs
com.google.android.exoplayer.SampleHolder sampleHolder
int result
java.io.IOException e
long positionUs
long elapsedRealtimeUs
com.google.android.exoplayer.text.Subtitle dequeuedSubtitle
protected void onDisabled ()
protected void onReleased ()
protected long getCurrentPositionUs ()
protected long getDurationUs ()
protected long getBufferedPositionUs ()
protected boolean isEnded ()
protected boolean isReady ()
private void syncNextEventIndex (long)
long positionUs
private long getNextEventTime ()
private void updateTextRenderer (long)
long positionUs
String text
private void clearTextRenderer ()
public boolean handleMessage (android.os.Message)
android.os.Message msg
private void invokeRendererInternal (java.lang.String)
String text
}
com/google/android/exoplayer/text/SubtitleView.class
SubtitleView.java
package com.google.android.exoplayer.text
public com.google.android.exoplayer.text.SubtitleView extends android.view.View {
private static final float INNER_PADDING_RATIO
private final android.graphics.RectF lineBounds
private final StringBuilder textBuilder
private final float cornerRadius
private final float outlineWidth
private final float shadowRadius
private final float shadowOffset
private android.text.TextPaint textPaint
private android.graphics.Paint paint
private int foregroundColor
private int backgroundColor
private int edgeColor
private int edgeType
private boolean hasMeasurements
private int lastMeasuredWidth
private android.text.StaticLayout layout
private float spacingMult
private float spacingAdd
private int innerPaddingX
public void <init> (android.content.Context, android.util.AttributeSet)
android.content.Context context
android.util.AttributeSet attrs
public void <init> (android.content.Context, android.util.AttributeSet, int)
android.content.Context context
android.util.AttributeSet attrs
int defStyleAttr
int[] viewAttr
android.content.res.TypedArray a
CharSequence text
int textSize
android.content.res.Resources resources
android.util.DisplayMetrics displayMetrics
int twoDpInPx
public void <init> (android.content.Context)
android.content.Context context
public void setBackgroundColor (int)
int color
public void setText (java.lang.CharSequence)
CharSequence text
public void setTextSize (float)
float size
public void setStyle (com.google.android.exoplayer.text.CaptionStyleCompat)
com.google.android.exoplayer.text.CaptionStyleCompat style
private void setTypeface (android.graphics.Typeface)
android.graphics.Typeface typeface
protected void onMeasure (int, int)
int i
android.text.StaticLayout layout
int paddingX
int height
int width
int lineCount
int widthMeasureSpec
int heightMeasureSpec
int widthSpec
private void setTooSmallMeasureDimensionV11 ()
public void onLayout (boolean, int, int, int, int)
boolean changed
int l
int t
int r
int b
int width
private boolean computeMeasurements (int)
int maxWidth
int paddingX
protected void onDraw (android.graphics.Canvas)
int i
float cornerRadius
float previousBottom
boolean raised
int colorUp
int colorDown
float offset
android.graphics.Canvas c
android.text.StaticLayout layout
int saveCount
int innerPaddingX
int lineCount
android.graphics.Paint textPaint
android.graphics.Paint paint
android.graphics.RectF bounds
}
com/google/android/exoplayer/text/SubtitleParserHelper.class
SubtitleParserHelper.java
package com.google.android.exoplayer.text
public com.google.android.exoplayer.text.SubtitleParserHelper extends java.lang.Object implements android.os.Handler$Callback {
private final com.google.android.exoplayer.text.SubtitleParser parser
private final android.os.Handler handler
private com.google.android.exoplayer.SampleHolder sampleHolder
private boolean parsing
private com.google.android.exoplayer.text.Subtitle result
private java.io.IOException error
public void <init> (android.os.Looper, com.google.android.exoplayer.text.SubtitleParser)
android.os.Looper looper
com.google.android.exoplayer.text.SubtitleParser parser
public synchronized void flush ()
public synchronized boolean isParsing ()
public synchronized com.google.android.exoplayer.SampleHolder getSampleHolder ()
public synchronized void startParseOperation ()
public synchronized com.google.android.exoplayer.text.Subtitle getAndClearResult () throws java.io.IOException
public boolean handleMessage (android.os.Message)
java.io.InputStream inputStream
java.io.IOException e
android.os.Message msg
com.google.android.exoplayer.text.Subtitle result
java.io.IOException error
com.google.android.exoplayer.SampleHolder holder
}
com/google/android/exoplayer/text/TextRenderer.class
TextRenderer.java
package com.google.android.exoplayer.text
public abstract com.google.android.exoplayer.text.TextRenderer extends java.lang.Object {
public abstract void onText (java.lang.String)
}
com/google/android/exoplayer/text/Subtitle.class
Subtitle.java
package com.google.android.exoplayer.text
public abstract com.google.android.exoplayer.text.Subtitle extends java.lang.Object {
public abstract long getStartTime ()
public abstract int getNextEventTimeIndex (long)
public abstract int getEventTimeCount ()
public abstract long getEventTime (int)
public abstract long getLastEventTime ()
public abstract java.lang.String getText (long)
}
com/google/android/exoplayer/text/CaptionStyleCompat.class
CaptionStyleCompat.java
package com.google.android.exoplayer.text
public final com.google.android.exoplayer.text.CaptionStyleCompat extends java.lang.Object {
public static final int EDGE_TYPE_NONE
public static final int EDGE_TYPE_OUTLINE
public static final int EDGE_TYPE_DROP_SHADOW
public static final int EDGE_TYPE_RAISED
public static final int EDGE_TYPE_DEPRESSED
public static final int USE_TRACK_COLOR_SETTINGS
public static final com.google.android.exoplayer.text.CaptionStyleCompat DEFAULT
public final int foregroundColor
public final int backgroundColor
public final int windowColor
public final int edgeType
public final int edgeColor
public final android.graphics.Typeface typeface
public static com.google.android.exoplayer.text.CaptionStyleCompat createFromCaptionStyle (android.view.accessibility.CaptioningManager$CaptionStyle)
android.view.accessibility.CaptioningManager$CaptionStyle captionStyle
public void <init> (int, int, int, int, int, android.graphics.Typeface)
int foregroundColor
int backgroundColor
int windowColor
int edgeType
int edgeColor
android.graphics.Typeface typeface
private static com.google.android.exoplayer.text.CaptionStyleCompat createFromCaptionStyleV19 (android.view.accessibility.CaptioningManager$CaptionStyle)
android.view.accessibility.CaptioningManager$CaptionStyle captionStyle
private static com.google.android.exoplayer.text.CaptionStyleCompat createFromCaptionStyleV21 (android.view.accessibility.CaptioningManager$CaptionStyle)
android.view.accessibility.CaptioningManager$CaptionStyle captionStyle
static void <clinit> ()
}
com/google/android/exoplayer/text/SubtitleParser.class
SubtitleParser.java
package com.google.android.exoplayer.text
public abstract com.google.android.exoplayer.text.SubtitleParser extends java.lang.Object {
public abstract boolean canParse (java.lang.String)
public abstract com.google.android.exoplayer.text.Subtitle parse (java.io.InputStream, java.lang.String, long) throws java.io.IOException
}
com/google/android/exoplayer/text/webvtt/
com/google/android/exoplayer/text/webvtt/WebvttSubtitle.class
WebvttSubtitle.java
package com.google.android.exoplayer.text.webvtt
public com.google.android.exoplayer.text.webvtt.WebvttSubtitle extends java.lang.Object implements com.google.android.exoplayer.text.Subtitle {
private final String[] cueText
private final long startTimeUs
private final long[] cueTimesUs
private final long[] sortedCueTimesUs
public void <init> (java.lang.String[], long, long[])
String[] cueText
long startTimeUs
long[] cueTimesUs
public long getStartTime ()
public int getNextEventTimeIndex (long)
long timeUs
int index
public int getEventTimeCount ()
public long getEventTime (int)
int index
public long getLastEventTime ()
public java.lang.String getText (long)
int i
long timeUs
StringBuilder stringBuilder
int stringLength
}
com/google/android/exoplayer/text/webvtt/WebvttParser.class
WebvttParser.java
package com.google.android.exoplayer.text.webvtt
public com.google.android.exoplayer.text.webvtt.WebvttParser extends java.lang.Object implements com.google.android.exoplayer.text.SubtitleParser {
public static final String EXO_HEADER
public static final String OFFSET
private static final long SAMPLING_RATE
private static final String WEBVTT_METADATA_HEADER_STRING
private static final java.util.regex.Pattern WEBVTT_METADATA_HEADER
private static final String WEBVTT_TIMESTAMP_STRING
private static final java.util.regex.Pattern WEBVTT_TIMESTAMP
private static final java.util.regex.Pattern MEDIA_TIMESTAMP_OFFSET
private static final java.util.regex.Pattern MEDIA_TIMESTAMP
private final boolean strictParsing
public void <init> ()
public void <init> (boolean)
boolean strictParsing
public com.google.android.exoplayer.text.webvtt.WebvttSubtitle parse (java.io.InputStream, java.lang.String, long) throws java.io.IOException
java.util.regex.Matcher matcher
java.util.regex.Matcher timestampMatcher
java.util.regex.Matcher matcher
java.util.regex.Matcher matcher
long startTime
long endTime
String text
com.google.android.exoplayer.text.webvtt.WebvttParser$WebvttCue cue
int arrayIndex
com.google.android.exoplayer.text.webvtt.WebvttParser$WebvttCue cue
int subtitleIndex
java.io.InputStream inputStream
String inputEncoding
long startTimeUs
java.util.ArrayList subtitles
long mediaTimestampUs
long mediaTimestampOffsetUs
java.io.BufferedReader webvttData
String line
String[] cueText
long[] cueTimesUs
com.google.android.exoplayer.text.webvtt.WebvttSubtitle subtitle
public boolean canParse (java.lang.String)
String mimeType
protected long getAdjustedStartTime (long)
long startTimeUs
protected void handleNoncompliantLine (java.lang.String) throws com.google.android.exoplayer.ParserException
String line
private static long parseTimestampUs (java.lang.String) throws java.lang.NumberFormatException
String group
String[] arr$
int len$
int i$
String s
String[] parts
long value
public volatile synthetic com.google.android.exoplayer.text.Subtitle parse (java.io.InputStream, java.lang.String, long) throws java.io.IOException
java.io.InputStream x0
String x1
long x2
static void <clinit> ()
}
com/google/android/exoplayer/text/webvtt/WebvttParser$WebvttCue.class
WebvttParser.java
package com.google.android.exoplayer.text.webvtt
com.google.android.exoplayer.text.webvtt.WebvttParser$WebvttCue extends java.lang.Object {
public final long startTime
public final long endTime
public final String text
public void <init> (long, long, java.lang.String)
long startTime
long endTime
String text
}
com/google/android/exoplayer/text/ttml/
com/google/android/exoplayer/text/ttml/TtmlNode.class
TtmlNode.java
package com.google.android.exoplayer.text.ttml
final com.google.android.exoplayer.text.ttml.TtmlNode extends java.lang.Object {
public static final long UNDEFINED_TIME
public static final String TAG_TT
public static final String TAG_HEAD
public static final String TAG_BODY
public static final String TAG_DIV
public static final String TAG_P
public static final String TAG_SPAN
public static final String TAG_BR
public static final String TAG_STYLE
public static final String TAG_STYLING
public static final String TAG_LAYOUT
public static final String TAG_REGION
public static final String TAG_METADATA
public static final String TAG_SMPTE_IMAGE
public static final String TAG_SMPTE_DATA
public static final String TAG_SMPTE_INFORMATION
public final String tag
public final boolean isTextNode
public final String text
public final long startTimeUs
public final long endTimeUs
private java.util.List children
public static com.google.android.exoplayer.text.ttml.TtmlNode buildTextNode (java.lang.String)
String text
public static com.google.android.exoplayer.text.ttml.TtmlNode buildNode (java.lang.String, long, long)
String tag
long startTimeUs
long endTimeUs
private void <init> (java.lang.String, java.lang.String, long, long)
String tag
String text
long startTimeUs
long endTimeUs
public boolean isActive (long)
long timeUs
public void addChild (com.google.android.exoplayer.text.ttml.TtmlNode)
com.google.android.exoplayer.text.ttml.TtmlNode child
public com.google.android.exoplayer.text.ttml.TtmlNode getChild (int)
int index
public int getChildCount ()
public long[] getEventTimesUs ()
long eventTimeUs
java.util.TreeSet eventTimeSet
long[] eventTimes
java.util.Iterator eventTimeIterator
int i
private void getEventTimes (java.util.TreeSet, boolean)
int i
java.util.TreeSet out
boolean descendsPNode
boolean isPNode
public java.lang.String getText (long)
long timeUs
StringBuilder builder
private void getText (long, java.lang.StringBuilder, boolean)
int i
boolean isPNode
int length
long timeUs
StringBuilder builder
boolean descendsPNode
private static java.lang.String applySpacePolicy (java.lang.String, boolean)
String in
boolean treatLineFeedAsSpace
String out
}
com/google/android/exoplayer/text/ttml/TtmlParser.class
TtmlParser.java
package com.google.android.exoplayer.text.ttml
public com.google.android.exoplayer.text.ttml.TtmlParser extends java.lang.Object implements com.google.android.exoplayer.text.SubtitleParser {
private static final String TAG
private static final String ATTR_BEGIN
private static final String ATTR_DURATION
private static final String ATTR_END
private static final java.util.regex.Pattern CLOCK_TIME
private static final java.util.regex.Pattern OFFSET_TIME
private static final int DEFAULT_FRAMERATE
private static final int DEFAULT_SUBFRAMERATE
private static final int DEFAULT_TICKRATE
private final org.xmlpull.v1.XmlPullParserFactory xmlParserFactory
private final boolean strictParsing
public void <init> ()
public void <init> (boolean)
org.xmlpull.v1.XmlPullParserException e
boolean strictParsing
public com.google.android.exoplayer.text.Subtitle parse (java.io.InputStream, java.lang.String, long) throws java.io.IOException
com.google.android.exoplayer.text.ttml.TtmlNode node
com.google.android.exoplayer.ParserException e
String name
com.google.android.exoplayer.text.ttml.TtmlNode parent
org.xmlpull.v1.XmlPullParser xmlParser
com.google.android.exoplayer.text.ttml.TtmlSubtitle ttmlSubtitle
java.util.LinkedList nodeStack
int unsupportedNodeDepth
int eventType
org.xmlpull.v1.XmlPullParserException xppe
java.io.InputStream inputStream
String inputEncoding
long startTimeUs
public boolean canParse (java.lang.String)
String mimeType
private com.google.android.exoplayer.text.ttml.TtmlNode parseNode (org.xmlpull.v1.XmlPullParser, com.google.android.exoplayer.text.ttml.TtmlNode) throws com.google.android.exoplayer.ParserException
String attr
String value
int i
org.xmlpull.v1.XmlPullParser parser
com.google.android.exoplayer.text.ttml.TtmlNode parent
long duration
long startTime
long endTime
int attributeCount
private static boolean isSupportedTag (java.lang.String)
String tag
private static long parseTimeExpression (java.lang.String, int, int, int) throws com.google.android.exoplayer.ParserException
String hours
double durationSeconds
String minutes
String seconds
String fraction
String frames
String subframes
String timeValue
double offsetSeconds
String unit
String time
int frameRate
int subframeRate
int tickRate
java.util.regex.Matcher matcher
static void <clinit> ()
}
com/google/android/exoplayer/text/ttml/TtmlSubtitle.class
TtmlSubtitle.java
package com.google.android.exoplayer.text.ttml
public final com.google.android.exoplayer.text.ttml.TtmlSubtitle extends java.lang.Object implements com.google.android.exoplayer.text.Subtitle {
private final com.google.android.exoplayer.text.ttml.TtmlNode root
private final long startTimeUs
private final long[] eventTimesUs
public void <init> (com.google.android.exoplayer.text.ttml.TtmlNode, long)
com.google.android.exoplayer.text.ttml.TtmlNode root
long startTimeUs
public long getStartTime ()
public int getNextEventTimeIndex (long)
long timeUs
int index
public int getEventTimeCount ()
public long getEventTime (int)
int index
public long getLastEventTime ()
public java.lang.String getText (long)
long timeUs
}
com/google/android/exoplayer/text/eia608/
com/google/android/exoplayer/text/eia608/Eia608Parser.class
Eia608Parser.java
package com.google.android.exoplayer.text.eia608
public com.google.android.exoplayer.text.eia608.Eia608Parser extends java.lang.Object {
private static final int PAYLOAD_TYPE_CC
private static final int COUNTRY_CODE
private static final int PROVIDER_CODE
private static final int USER_ID
private static final int USER_DATA_TYPE_CODE
private static final int[] BASIC_CHARACTER_SET
private static final int[] SPECIAL_CHARACTER_SET
public void <init> ()
public boolean canParse (java.lang.String)
String mimeType
public java.util.List parse (byte[], int, long) throws java.io.IOException
boolean ccValid
int ccType
byte ccData1
byte ccData2
int i
byte[] data
int size
long timeUs
com.google.android.exoplayer.util.BitArray seiBuffer
int ccCount
java.util.List captions
StringBuilder stringBuilder
private static char getChar (byte)
byte ccData
int index
private static char getSpecialChar (byte)
byte ccData
int index
public static int parseHeader (com.google.android.exoplayer.util.BitArray)
com.google.android.exoplayer.util.BitArray seiBuffer
int b
int payloadType
int payloadSize
int countryCode
int providerCode
int userIdentifier
int userDataTypeCode
static void <clinit> ()
}
com/google/android/exoplayer/text/eia608/Eia608TrackRenderer.class
Eia608TrackRenderer.java
package com.google.android.exoplayer.text.eia608
public com.google.android.exoplayer.text.eia608.Eia608TrackRenderer extends com.google.android.exoplayer.TrackRenderer implements android.os.Handler$Callback {
private static final int MSG_INVOKE_RENDERER
private static final int ALLOWED_CAPTIONS_TEXT_LINES_COUNT
private final com.google.android.exoplayer.SampleSource source
private final com.google.android.exoplayer.text.eia608.Eia608Parser eia608Parser
private final com.google.android.exoplayer.text.TextRenderer textRenderer
private final android.os.Handler metadataHandler
private final com.google.android.exoplayer.MediaFormatHolder formatHolder
private final com.google.android.exoplayer.SampleHolder sampleHolder
private final StringBuilder closedCaptionStringBuilder
private final java.util.List currentCaptions
private final java.util.Queue newLineIndexes
private int trackIndex
private long currentPositionUs
private boolean inputStreamEnded
private long pendingCaptionsTimestamp
private java.util.List pendingCaptions
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.text.TextRenderer, android.os.Looper)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.text.TextRenderer textRenderer
android.os.Looper textRendererLooper
protected int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
boolean sourcePrepared
java.io.IOException e
int i
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
private void seekToInternal (long)
long positionUs
protected void doSomeWork (long, long) throws com.google.android.exoplayer.ExoPlaybackException
java.io.IOException e
int result
java.io.IOException e
long positionUs
long elapsedRealtimeUs
protected void onDisabled ()
protected long getDurationUs ()
protected long getCurrentPositionUs ()
protected long getBufferedPositionUs ()
protected boolean isEnded ()
protected boolean isReady ()
private void invokeRenderer (java.util.List)
java.util.List metadata
public boolean handleMessage (android.os.Message)
android.os.Message msg
private void invokeRendererInternal (java.util.List)
int cc2
com.google.android.exoplayer.text.eia608.ClosedCaption caption
int i
int i
java.util.List metadata
int cutIndex
}
com/google/android/exoplayer/text/eia608/ClosedCaption.class
ClosedCaption.java
package com.google.android.exoplayer.text.eia608
public final com.google.android.exoplayer.text.eia608.ClosedCaption extends java.lang.Object implements java.lang.Comparable {
public static final int TYPE_CTRL
public static final int TYPE_TEXT
public final int type
public final String text
public final long timeUs
public void <init> (int, java.lang.String, long)
int type
String text
long timeUs
public int compareTo (com.google.android.exoplayer.text.eia608.ClosedCaption)
com.google.android.exoplayer.text.eia608.ClosedCaption another
long delta
public volatile synthetic int compareTo (java.lang.Object)
Object x0
}
com/google/android/exoplayer/audio/
com/google/android/exoplayer/audio/AudioCapabilitiesReceiver$1.class
AudioCapabilitiesReceiver.java
package com.google.android.exoplayer.audio
synthetic com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$1 extends java.lang.Object {
}
com/google/android/exoplayer/audio/AudioCapabilitiesReceiver$Listener.class
AudioCapabilitiesReceiver.java
package com.google.android.exoplayer.audio
public abstract com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$Listener extends java.lang.Object {
public abstract void onAudioCapabilitiesChanged (com.google.android.exoplayer.audio.AudioCapabilities)
}
com/google/android/exoplayer/audio/AudioTrack$1.class
AudioTrack.java
package com.google.android.exoplayer.audio
com.google.android.exoplayer.audio.AudioTrack$1 extends java.lang.Thread {
final synthetic android.media.AudioTrack val$toRelease
final synthetic com.google.android.exoplayer.audio.AudioTrack this$0
void <init> (com.google.android.exoplayer.audio.AudioTrack, android.media.AudioTrack)
public void run ()
}
com/google/android/exoplayer/audio/AudioCapabilitiesReceiver.class
AudioCapabilitiesReceiver.java
package com.google.android.exoplayer.audio
public final com.google.android.exoplayer.audio.AudioCapabilitiesReceiver extends java.lang.Object {
private static final com.google.android.exoplayer.audio.AudioCapabilities DEFAULT_AUDIO_CAPABILITIES
private final android.content.Context context
private final com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$Listener listener
private final android.content.BroadcastReceiver receiver
public void <init> (android.content.Context, com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$Listener)
android.content.Context context
com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$Listener listener
public void register ()
public void unregister ()
static synthetic com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$Listener access$100 (com.google.android.exoplayer.audio.AudioCapabilitiesReceiver)
com.google.android.exoplayer.audio.AudioCapabilitiesReceiver x0
static void <clinit> ()
}
com/google/android/exoplayer/audio/AudioTrack$AudioTrackUtil.class
AudioTrack.java
package com.google.android.exoplayer.audio
com.google.android.exoplayer.audio.AudioTrack$AudioTrackUtil extends java.lang.Object {
protected final android.media.AudioTrack audioTrack
private final int sampleRate
private long lastRawPlaybackHeadPosition
private long rawPlaybackHeadWrapCount
public void <init> (android.media.AudioTrack)
android.media.AudioTrack audioTrack
public long getPlaybackHeadPosition ()
long rawPlaybackHeadPosition
public long getPlaybackHeadPositionUs ()
public boolean updateTimestamp ()
public long getTimestampNanoTime ()
public long getTimestampFramePosition ()
}
com/google/android/exoplayer/audio/AudioTrack.class
AudioTrack.java
package com.google.android.exoplayer.audio
public final com.google.android.exoplayer.audio.AudioTrack extends java.lang.Object {
public static final int RESULT_POSITION_DISCONTINUITY
public static final int RESULT_BUFFER_CONSUMED
public static final int SESSION_ID_NOT_SET
public static final long CURRENT_POSITION_NOT_SET
private static final long MIN_BUFFER_DURATION_US
private static final long MAX_BUFFER_DURATION_US
private static final int BUFFER_MULTIPLICATION_FACTOR
private static final String TAG
private static final long MAX_AUDIO_TIMESTAMP_OFFSET_US
private static final long MAX_LATENCY_US
private static final int UNKNOWN_AC3_BITRATE
private static final int START_NOT_SET
private static final int START_IN_SYNC
private static final int START_NEED_SYNC
private static final int MAX_PLAYHEAD_OFFSET_COUNT
private static final int MIN_PLAYHEAD_OFFSET_SAMPLE_INTERVAL_US
private static final int MIN_TIMESTAMP_SAMPLE_INTERVAL_US
private final android.os.ConditionVariable releasingConditionVariable
private final long[] playheadOffsets
private android.media.AudioTrack audioTrack
private com.google.android.exoplayer.audio.AudioTrack$AudioTrackUtil audioTrackUtil
private int sampleRate
private int channelConfig
private int encoding
private int frameSize
private int minBufferSize
private int bufferSize
private int nextPlayheadOffsetIndex
private int playheadOffsetCount
private long smoothedPlayheadOffsetUs
private long lastPlayheadSampleTimeUs
private boolean audioTimestampSet
private long lastTimestampSampleTimeUs
private java.lang.reflect.Method getLatencyMethod
private long submittedBytes
private int startMediaTimeState
private long startMediaTimeUs
private long resumeSystemTimeUs
private long latencyUs
private float volume
private byte[] temporaryBuffer
private int temporaryBufferOffset
private int temporaryBufferSize
private boolean isAc3
private int ac3Bitrate
public void <init> ()
NoSuchMethodException e
public boolean isInitialized ()
public long getCurrentPositionUs (boolean)
long presentationDiff
long framesDiff
long currentFramePosition
long currentPositionUs
long currentPositionUs
boolean sourceEnded
long systemClockUs
long currentPositionUs
public int initialize () throws com.google.android.exoplayer.audio.AudioTrack$InitializationException
public int initialize (int) throws com.google.android.exoplayer.audio.AudioTrack$InitializationException
int sessionId
public void reconfigure (android.media.MediaFormat)
android.media.MediaFormat format
public void reconfigure (android.media.MediaFormat, int, int)
int multipliedBufferSize
int minAppBufferSize
int maxAppBufferSize
android.media.MediaFormat format
int encoding
int specifiedBufferSize
int channelCount
int channelConfig
int sampleRate
boolean isAc3
public void play ()
public void handleDiscontinuity ()
public int handleBuffer (java.nio.ByteBuffer, int, int, long) throws com.google.android.exoplayer.audio.AudioTrack$WriteException
int unscaledAc3Bitrate
int divisor
long expectedBufferStartTime
long bufferStartTime
int bytesPending
int bytesToWrite
java.nio.ByteBuffer buffer
int offset
int size
long presentationTimeUs
int result
int bytesWritten
private static int writeNonBlockingV21 (android.media.AudioTrack, java.nio.ByteBuffer, int)
android.media.AudioTrack audioTrack
java.nio.ByteBuffer buffer
int size
public boolean hasPendingData ()
public boolean hasEnoughDataToBeginPlayback ()
public void setVolume (float)
float volume
private static void setVolumeV21 (android.media.AudioTrack, float)
android.media.AudioTrack audioTrack
float volume
private static void setVolumeV3 (android.media.AudioTrack, float)
android.media.AudioTrack audioTrack
float volume
public void pause ()
public void reset ()
int playState
android.media.AudioTrack toRelease
private boolean hasCurrentPositionUs ()
private void maybeSampleSyncParams ()
int i
long audioTimestampUs
long audioTimestampFramePosition
Exception e
long playbackPositionUs
long systemClockUs
private void checkAudioTrackInitialized () throws com.google.android.exoplayer.audio.AudioTrack$InitializationException
Exception e
int state
private long bytesToFrames (long)
long byteCount
private long framesToDurationUs (long)
long frameCount
private long durationUsToFrames (long)
long durationUs
private void resetSyncParams ()
static synthetic android.os.ConditionVariable access$000 (com.google.android.exoplayer.audio.AudioTrack)
com.google.android.exoplayer.audio.AudioTrack x0
}
com/google/android/exoplayer/audio/AudioCapabilities.class
AudioCapabilities.java
package com.google.android.exoplayer.audio
public final com.google.android.exoplayer.audio.AudioCapabilities extends java.lang.Object {
private final java.util.Set supportedEncodings
private final int maxChannelCount
public void <init> (int[], int)
int i
int[] arr$
int len$
int i$
int[] supportedEncodings
int maxChannelCount
public boolean supportsAc3 ()
public boolean supportsEAc3 ()
public boolean supportsPcm ()
public int getMaxChannelCount ()
public boolean equals (java.lang.Object)
Object other
com.google.android.exoplayer.audio.AudioCapabilities audioCapabilities
public int hashCode ()
public java.lang.String toString ()
}
com/google/android/exoplayer/audio/AudioTrack$AudioTrackUtilV19.class
AudioTrack.java
package com.google.android.exoplayer.audio
com.google.android.exoplayer.audio.AudioTrack$AudioTrackUtilV19 extends com.google.android.exoplayer.audio.AudioTrack$AudioTrackUtil {
private final android.media.AudioTimestamp audioTimestamp
private long rawTimestampFramePositionWrapCount
private long lastRawTimestampFramePosition
private long lastTimestampFramePosition
public void <init> (android.media.AudioTrack)
android.media.AudioTrack audioTrack
public boolean updateTimestamp ()
long rawFramePosition
boolean updated
public long getTimestampNanoTime ()
public long getTimestampFramePosition ()
}
com/google/android/exoplayer/audio/AudioTrack$WriteException.class
AudioTrack.java
package com.google.android.exoplayer.audio
public com.google.android.exoplayer.audio.AudioTrack$WriteException extends java.lang.Exception {
public final int errorCode
public void <init> (int)
int errorCode
}
com/google/android/exoplayer/audio/AudioCapabilitiesReceiver$HdmiAudioPlugBroadcastReceiver.class
AudioCapabilitiesReceiver.java
package com.google.android.exoplayer.audio
final com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$HdmiAudioPlugBroadcastReceiver extends android.content.BroadcastReceiver {
final synthetic com.google.android.exoplayer.audio.AudioCapabilitiesReceiver this$0
private void <init> (com.google.android.exoplayer.audio.AudioCapabilitiesReceiver)
public void onReceive (android.content.Context, android.content.Intent)
android.content.Context context
android.content.Intent intent
String action
synthetic void <init> (com.google.android.exoplayer.audio.AudioCapabilitiesReceiver, com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$1)
com.google.android.exoplayer.audio.AudioCapabilitiesReceiver x0
com.google.android.exoplayer.audio.AudioCapabilitiesReceiver$1 x1
}
com/google/android/exoplayer/audio/AudioTrack$InitializationException.class
AudioTrack.java
package com.google.android.exoplayer.audio
public com.google.android.exoplayer.audio.AudioTrack$InitializationException extends java.lang.Exception {
public final int audioTrackState
public void <init> (int, int, int, int)
int audioTrackState
int sampleRate
int channelConfig
int bufferSize
}
com/google/android/exoplayer/metadata/
com/google/android/exoplayer/metadata/Id3Parser.class
Id3Parser.java
package com.google.android.exoplayer.metadata
public com.google.android.exoplayer.metadata.Id3Parser extends java.lang.Object implements com.google.android.exoplayer.metadata.MetadataParser {
public void <init> ()
public boolean canParse (java.lang.String)
String mimeType
public java.util.Map parse (byte[], int) throws java.io.UnsupportedEncodingException com.google.android.exoplayer.ParserException
int encoding
String charset
byte[] frame
int firstZeroIndex
String description
int valueStartIndex
int valueEndIndex
String value
String type
byte[] frame
int frameId0
int frameId1
int frameId2
int frameId3
int frameSize
byte[] data
int size
com.google.android.exoplayer.util.BitArray id3Buffer
int id3Size
java.util.Map metadata
private static int indexOf (byte[], int, byte)
int i
byte[] data
int fromIndex
byte key
private static int indexOfNot (byte[], int, byte)
int i
byte[] data
int fromIndex
byte key
private static int parseId3Header (com.google.android.exoplayer.util.BitArray) throws com.google.android.exoplayer.ParserException
int extendedHeaderSize
com.google.android.exoplayer.util.BitArray id3Buffer
int id1
int id2
int id3
int flags
int id3Size
private static java.lang.String getCharsetName (int)
int encodingByte
public volatile synthetic java.lang.Object parse (byte[], int) throws java.io.IOException
byte[] x0
int x1
}
com/google/android/exoplayer/metadata/MetadataTrackRenderer.class
MetadataTrackRenderer.java
package com.google.android.exoplayer.metadata
public com.google.android.exoplayer.metadata.MetadataTrackRenderer extends com.google.android.exoplayer.TrackRenderer implements android.os.Handler$Callback {
private static final int MSG_INVOKE_RENDERER
private final com.google.android.exoplayer.SampleSource source
private final com.google.android.exoplayer.metadata.MetadataParser metadataParser
private final com.google.android.exoplayer.metadata.MetadataTrackRenderer$MetadataRenderer metadataRenderer
private final android.os.Handler metadataHandler
private final com.google.android.exoplayer.MediaFormatHolder formatHolder
private final com.google.android.exoplayer.SampleHolder sampleHolder
private int trackIndex
private long currentPositionUs
private boolean inputStreamEnded
private long pendingMetadataTimestamp
private Object pendingMetadata
public void <init> (com.google.android.exoplayer.SampleSource, com.google.android.exoplayer.metadata.MetadataParser, com.google.android.exoplayer.metadata.MetadataTrackRenderer$MetadataRenderer, android.os.Looper)
com.google.android.exoplayer.SampleSource source
com.google.android.exoplayer.metadata.MetadataParser metadataParser
com.google.android.exoplayer.metadata.MetadataTrackRenderer$MetadataRenderer metadataRenderer
android.os.Looper metadataRendererLooper
protected int doPrepare () throws com.google.android.exoplayer.ExoPlaybackException
boolean sourcePrepared
java.io.IOException e
int i
protected void onEnabled (long, boolean)
long positionUs
boolean joining
protected void seekTo (long) throws com.google.android.exoplayer.ExoPlaybackException
long positionUs
private void seekToInternal (long)
long positionUs
protected void doSomeWork (long, long) throws com.google.android.exoplayer.ExoPlaybackException
java.io.IOException e
int result
java.io.IOException e
long positionUs
long elapsedRealtimeUs
protected void onDisabled ()
protected long getDurationUs ()
protected long getCurrentPositionUs ()
protected long getBufferedPositionUs ()
protected boolean isEnded ()
protected boolean isReady ()
private void invokeRenderer (java.lang.Object)
Object metadata
public boolean handleMessage (android.os.Message)
android.os.Message msg
private void invokeRendererInternal (java.lang.Object)
Object metadata
}
com/google/android/exoplayer/metadata/MetadataParser.class
MetadataParser.java
package com.google.android.exoplayer.metadata
public abstract com.google.android.exoplayer.metadata.MetadataParser extends java.lang.Object {
public abstract boolean canParse (java.lang.String)
public abstract java.lang.Object parse (byte[], int) throws java.io.IOException
}
com/google/android/exoplayer/metadata/TxxxMetadata.class
TxxxMetadata.java
package com.google.android.exoplayer.metadata
public com.google.android.exoplayer.metadata.TxxxMetadata extends java.lang.Object {
public static final String TYPE
public final String description
public final String value
public void <init> (java.lang.String, java.lang.String)
String description
String value
}
com/google/android/exoplayer/metadata/MetadataTrackRenderer$MetadataRenderer.class
MetadataTrackRenderer.java
package com.google.android.exoplayer.metadata
public abstract com.google.android.exoplayer.metadata.MetadataTrackRenderer$MetadataRenderer extends java.lang.Object {
public abstract void onMetadata (java.lang.Object)
}
com/google/android/exoplayer/util/
com/google/android/exoplayer/util/Util$2.class
Util.java
package com.google.android.exoplayer.util
final com.google.android.exoplayer.util.Util$2 extends java.lang.Object implements java.util.concurrent.ThreadFactory {
final synthetic String val$threadName
void <init> (java.lang.String)
public java.lang.Thread newThread (java.lang.Runnable)
Runnable r
}
com/google/android/exoplayer/util/CodecSpecificDataUtil.class
CodecSpecificDataUtil.java
package com.google.android.exoplayer.util
public final com.google.android.exoplayer.util.CodecSpecificDataUtil extends java.lang.Object {
private static final byte[] NAL_START_CODE
private static final int[] AUDIO_SPECIFIC_CONFIG_SAMPLING_RATE_TABLE
private static final int[] AUDIO_SPECIFIC_CONFIG_CHANNEL_COUNT_TABLE
private static final int SPS_NAL_UNIT_TYPE
private void <init> ()
public static android.util.Pair parseAudioSpecificConfig (byte[])
byte[] audioSpecificConfig
int audioObjectType
int byteOffset
int frequencyIndex
int sampleRate
int channelCount
public static byte[] buildAudioSpecificConfig (int, int, int)
int audioObjectType
int sampleRateIndex
int channelConfig
byte[] audioSpecificConfig
public static byte[] buildAudioSpecificConfig (int, int)
int i
int i
int sampleRate
int numChannels
int sampleRateIndex
int channelConfig
byte[] csd
public static byte[] buildNalUnit (byte[], int, int)
byte[] data
int offset
int length
byte[] nalUnit
public static byte[][] splitNalUnits (byte[])
int startIndex
int endIndex
byte[] nal
int i
byte[] data
java.util.List starts
int nalUnitIndex
byte[][] split
private static int findNalStartCode (byte[], int)
int i
byte[] data
int index
int endIndex
private static boolean isNalStartCode (byte[], int)
int j
byte[] data
int index
public static android.util.Pair parseSpsNalUnit (byte[])
byte[] spsNalUnit
private static int parseAvcProfile (byte[])
byte[] data
int profileIdc
private static int parseAvcLevel (byte[])
byte[] data
int levelIdc
static void <clinit> ()
}
com/google/android/exoplayer/util/Util.class
Util.java
package com.google.android.exoplayer.util
public final com.google.android.exoplayer.util.Util extends java.lang.Object {
public static final int SDK_INT
private static final java.util.regex.Pattern XS_DATE_TIME_PATTERN
private static final java.util.regex.Pattern XS_DURATION_PATTERN
private void <init> ()
public static boolean isUrlLocalFile (java.net.URL)
java.net.URL url
public static boolean areEqual (java.lang.Object, java.lang.Object)
Object o1
Object o2
public static java.util.concurrent.ExecutorService newSingleThreadExecutor (java.lang.String)
String threadName
public static java.util.concurrent.ScheduledExecutorService newSingleThreadScheduledExecutor (java.lang.String)
String threadName
public static void closeQuietly (com.google.android.exoplayer.upstream.DataSource)
java.io.IOException e
com.google.android.exoplayer.upstream.DataSource dataSource
public static java.lang.String toLowerInvariant (java.lang.String)
String text
public static android.net.Uri parseBaseUri (java.lang.String)
String uriString
public static android.net.Uri getMergedUri (android.net.Uri, java.lang.String)
android.net.Uri baseUri
String stringUri
android.net.Uri uri
public static int binarySearchFloor (long[], long, boolean, boolean)
long[] a
long key
boolean inclusive
boolean stayInBounds
int index
public static int binarySearchCeil (long[], long, boolean, boolean)
long[] a
long key
boolean inclusive
boolean stayInBounds
int index
public static int binarySearchFloor (java.util.List, java.lang.Object, boolean, boolean)
java.util.List list
Object key
boolean inclusive
boolean stayInBounds
int index
public static int binarySearchCeil (java.util.List, java.lang.Object, boolean, boolean)
java.util.List list
Object key
boolean inclusive
boolean stayInBounds
int index
public static long parseXsDuration (java.lang.String)
boolean negated
String years
double durationSeconds
String months
String days
String hours
String minutes
String seconds
long durationMillis
String value
java.util.regex.Matcher matcher
public static long parseXsDateTime (java.lang.String) throws java.text.ParseException
int timezoneShift
int timezoneShift
java.math.BigDecimal bd
String value
java.util.regex.Matcher matcher
int timezoneShift
java.util.Calendar dateTime
long time
public static long scaleLargeTimestamp (long, long, long)
long divisionFactor
long multiplicationFactor
double multiplicationFactor
long timestamp
long multiplier
long divisor
public static long[] scaleLargeTimestamps (java.util.List, long, long)
int i
long divisionFactor
int i
long multiplicationFactor
int i
double multiplicationFactor
java.util.List timestamps
long multiplier
long divisor
long[] scaledTimestamps
public static int[] toArray (java.util.List)
int i
java.util.List list
int length
int[] intArray
static void <clinit> ()
}
com/google/android/exoplayer/util/ManifestFetcher$ManifestCallback.class
ManifestFetcher.java
package com.google.android.exoplayer.util
public abstract com.google.android.exoplayer.util.ManifestFetcher$ManifestCallback extends java.lang.Object {
public abstract void onManifest (java.lang.String, java.lang.Object)
public abstract void onManifestError (java.lang.String, java.io.IOException)
}
com/google/android/exoplayer/util/Predicate.class
Predicate.java
package com.google.android.exoplayer.util
public abstract com.google.android.exoplayer.util.Predicate extends java.lang.Object {
public abstract boolean evaluate (java.lang.Object)
}
com/google/android/exoplayer/util/ManifestFetcher$SingleFetchHelper.class
ManifestFetcher.java
package com.google.android.exoplayer.util
com.google.android.exoplayer.util.ManifestFetcher$SingleFetchHelper extends java.lang.Object implements com.google.android.exoplayer.upstream.Loader$Callback {
private final android.os.Looper callbackLooper
private final com.google.android.exoplayer.util.ManifestFetcher$ManifestCallback wrappedCallback
private final com.google.android.exoplayer.upstream.Loader singleUseLoader
private final com.google.android.exoplayer.util.ManifestFetcher$ManifestLoadable singleUseLoadable
final synthetic com.google.android.exoplayer.util.ManifestFetcher this$0
public void <init> (com.google.android.exoplayer.util.ManifestFetcher, android.os.Looper, com.google.android.exoplayer.util.ManifestFetcher$ManifestCallback)
android.os.Looper callbackLooper
com.google.android.exoplayer.util.ManifestFetcher$ManifestCallback wrappedCallback
public void startLoading ()
public void onLoadCompleted (com.google.android.exoplayer.upstream.Loader$Loadable)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
public void onLoadCanceled (com.google.android.exoplayer.upstream.Loader$Loadable)
java.io.IOException exception
com.google.android.exoplayer.upstream.Loader$Loadable loadable
public void onLoadError (com.google.android.exoplayer.upstream.Loader$Loadable, java.io.IOException)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
java.io.IOException exception
private void releaseLoader ()
}
com/google/android/exoplayer/util/SlidingPercentile$1.class
SlidingPercentile.java
package com.google.android.exoplayer.util
final com.google.android.exoplayer.util.SlidingPercentile$1 extends java.lang.Object implements java.util.Comparator {
void <init> ()
public int compare (com.google.android.exoplayer.util.SlidingPercentile$Sample, com.google.android.exoplayer.util.SlidingPercentile$Sample)
com.google.android.exoplayer.util.SlidingPercentile$Sample a
com.google.android.exoplayer.util.SlidingPercentile$Sample b
public volatile synthetic int compare (java.lang.Object, java.lang.Object)
Object x0
Object x1
}
com/google/android/exoplayer/util/MimeTypes.class
MimeTypes.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.MimeTypes extends java.lang.Object {
public static final String BASE_TYPE_VIDEO
public static final String BASE_TYPE_AUDIO
public static final String BASE_TYPE_TEXT
public static final String BASE_TYPE_APPLICATION
public static final String VIDEO_MP4
public static final String VIDEO_WEBM
public static final String VIDEO_H264
public static final String VIDEO_VP9
public static final String AUDIO_MP4
public static final String AUDIO_AAC
public static final String AUDIO_AC3
public static final String AUDIO_EC3
public static final String AUDIO_WEBM
public static final String AUDIO_VORBIS
public static final String AUDIO_OPUS
public static final String TEXT_VTT
public static final String APPLICATION_ID3
public static final String APPLICATION_EIA608
public static final String APPLICATION_TTML
private void <init> ()
public static java.lang.String getTopLevelType (java.lang.String)
String mimeType
int indexOfSlash
public static boolean isAudio (java.lang.String)
String mimeType
public static boolean isVideo (java.lang.String)
String mimeType
public static boolean isText (java.lang.String)
String mimeType
public static boolean isApplication (java.lang.String)
String mimeType
public static boolean isTtml (java.lang.String)
String mimeType
}
com/google/android/exoplayer/util/VerboseLogUtil.class
VerboseLogUtil.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.VerboseLogUtil extends java.lang.Object {
private static volatile String[] enabledTags
private static volatile boolean enableAllTags
private void <init> ()
public static transient void setEnabledTags (java.lang.String[])
String[] tags
public static void setEnableAllTags (boolean)
boolean enable
public static boolean isTagEnabled (java.lang.String)
int i
String tag
String[] tags
public static boolean areAllTagsEnabled ()
}
com/google/android/exoplayer/util/ManifestFetcher$3.class
ManifestFetcher.java
package com.google.android.exoplayer.util
com.google.android.exoplayer.util.ManifestFetcher$3 extends java.lang.Object implements java.lang.Runnable {
final synthetic java.io.IOException val$e
final synthetic com.google.android.exoplayer.util.ManifestFetcher this$0
void <init> (com.google.android.exoplayer.util.ManifestFetcher, java.io.IOException)
public void run ()
}
com/google/android/exoplayer/util/ManifestFetcher.class
ManifestFetcher.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.ManifestFetcher extends java.lang.Object implements com.google.android.exoplayer.upstream.Loader$Callback {
final com.google.android.exoplayer.util.ManifestParser parser
final String contentId
final String userAgent
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.util.ManifestFetcher$EventListener eventListener
volatile String manifestUrl
private int enabledCount
private com.google.android.exoplayer.upstream.Loader loader
private com.google.android.exoplayer.util.ManifestFetcher$ManifestLoadable currentLoadable
private int loadExceptionCount
private long loadExceptionTimestamp
private java.io.IOException loadException
private volatile Object manifest
private volatile long manifestLoadTimestamp
public void <init> (com.google.android.exoplayer.util.ManifestParser, java.lang.String, java.lang.String, java.lang.String)
com.google.android.exoplayer.util.ManifestParser parser
String contentId
String manifestUrl
String userAgent
public void <init> (com.google.android.exoplayer.util.ManifestParser, java.lang.String, java.lang.String, java.lang.String, android.os.Handler, com.google.android.exoplayer.util.ManifestFetcher$EventListener)
com.google.android.exoplayer.util.ManifestParser parser
String contentId
String manifestUrl
String userAgent
android.os.Handler eventHandler
com.google.android.exoplayer.util.ManifestFetcher$EventListener eventListener
public void updateManifestUrl (java.lang.String)
String manifestUrl
public void singleLoad (android.os.Looper, com.google.android.exoplayer.util.ManifestFetcher$ManifestCallback)
android.os.Looper callbackLooper
com.google.android.exoplayer.util.ManifestFetcher$ManifestCallback callback
com.google.android.exoplayer.util.ManifestFetcher$SingleFetchHelper fetchHelper
public java.lang.Object getManifest ()
public long getManifestLoadTimestamp ()
public java.io.IOException getError ()
public void enable ()
public void disable ()
public void requestRefresh ()
public void onLoadCompleted (com.google.android.exoplayer.upstream.Loader$Loadable)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
public void onLoadCanceled (com.google.android.exoplayer.upstream.Loader$Loadable)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
public void onLoadError (com.google.android.exoplayer.upstream.Loader$Loadable, java.io.IOException)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
java.io.IOException exception
private long getRetryDelayMillis (long)
long errorCount
private void notifyManifestRefreshStarted ()
private void notifyManifestRefreshed ()
private void notifyManifestError (java.io.IOException)
java.io.IOException e
static synthetic com.google.android.exoplayer.util.ManifestFetcher$EventListener access$100 (com.google.android.exoplayer.util.ManifestFetcher)
com.google.android.exoplayer.util.ManifestFetcher x0
static synthetic java.lang.Object access$202 (com.google.android.exoplayer.util.ManifestFetcher, java.lang.Object)
com.google.android.exoplayer.util.ManifestFetcher x0
Object x1
static synthetic long access$302 (com.google.android.exoplayer.util.ManifestFetcher, long)
com.google.android.exoplayer.util.ManifestFetcher x0
long x1
}
com/google/android/exoplayer/util/ManifestFetcher$ManifestLoadable.class
ManifestFetcher.java
package com.google.android.exoplayer.util
com.google.android.exoplayer.util.ManifestFetcher$ManifestLoadable extends java.lang.Object implements com.google.android.exoplayer.upstream.Loader$Loadable {
private static final int TIMEOUT_MILLIS
volatile Object result
private volatile boolean isCanceled
final synthetic com.google.android.exoplayer.util.ManifestFetcher this$0
private void <init> (com.google.android.exoplayer.util.ManifestFetcher)
public void cancelLoad ()
public boolean isLoadCanceled ()
public void load () throws java.io.IOException java.lang.InterruptedException
java.net.URLConnection connection
String inputEncoding
java.io.InputStream inputStream
private java.net.URLConnection configureConnection (java.net.URL) throws java.io.IOException
java.net.URL url
java.net.URLConnection connection
synthetic void <init> (com.google.android.exoplayer.util.ManifestFetcher, com.google.android.exoplayer.util.ManifestFetcher$1)
com.google.android.exoplayer.util.ManifestFetcher x0
com.google.android.exoplayer.util.ManifestFetcher$1 x1
}
com/google/android/exoplayer/util/Clock.class
Clock.java
package com.google.android.exoplayer.util
public abstract com.google.android.exoplayer.util.Clock extends java.lang.Object {
public abstract long elapsedRealtime ()
}
com/google/android/exoplayer/util/BitArray.class
BitArray.java
package com.google.android.exoplayer.util
public final com.google.android.exoplayer.util.BitArray extends java.lang.Object {
private byte[] data
private int limit
private int byteOffset
private int bitOffset
public void <init> ()
public void <init> (byte[], int)
byte[] data
int limit
public void reset ()
public void reset (byte[], int)
byte[] data
int limit
public byte[] getData ()
public int getByteOffset ()
public void setByteOffset (int)
int byteOffset
public int append (com.google.android.exoplayer.upstream.DataSource, int) throws java.io.IOException
com.google.android.exoplayer.upstream.DataSource dataSource
int length
int bytesRead
public void append (com.google.android.exoplayer.util.BitArray, int)
com.google.android.exoplayer.util.BitArray bitsArray
int length
private void expand (int)
byte[] newBuffer
int length
public void clearReadData ()
public int readUnsignedByte ()
byte b
byte b
public boolean readBit ()
public int readBits (int)
int n
public long readBitsLong (int)
int nextBit
byte writeMask
int n
long retval
private int getUnsignedByte (int)
int offset
public void skipBits (int)
int n
public void skipBytes (int)
int n
public void readBytes (byte[], int, int)
byte[] out
int offset
int length
public int bytesLeft ()
public boolean isEmpty ()
public int readUnsignedExpGolombCodedInt ()
public int readSignedExpGolombCodedInt ()
int codeNum
private int readExpGolombCodeNum ()
int leadingZeros
public int readSynchSafeInt ()
int b1
int b2
int b3
int b4
public int findNextAdtsSyncWord ()
int syncBits
int i
public int findNextNalUnit (int, int)
int i
int nalUnitType
int offset
}
com/google/android/exoplayer/util/ManifestFetcher$EventListener.class
ManifestFetcher.java
package com.google.android.exoplayer.util
public abstract com.google.android.exoplayer.util.ManifestFetcher$EventListener extends java.lang.Object {
public abstract void onManifestRefreshStarted ()
public abstract void onManifestRefreshed ()
public abstract void onManifestError (java.io.IOException)
}
com/google/android/exoplayer/util/SystemClock.class
SystemClock.java
package com.google.android.exoplayer.util
public final com.google.android.exoplayer.util.SystemClock extends java.lang.Object implements com.google.android.exoplayer.util.Clock {
public void <init> ()
public long elapsedRealtime ()
}
com/google/android/exoplayer/util/LongArray.class
LongArray.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.LongArray extends java.lang.Object {
private static final int DEFAULT_INITIAL_CAPACITY
private int size
private long[] values
public void <init> ()
public void <init> (int)
int initialCapacity
public void add (long)
long value
public long get (int)
int index
public int size ()
}
com/google/android/exoplayer/util/SlidingPercentile$2.class
SlidingPercentile.java
package com.google.android.exoplayer.util
final com.google.android.exoplayer.util.SlidingPercentile$2 extends java.lang.Object implements java.util.Comparator {
void <init> ()
public int compare (com.google.android.exoplayer.util.SlidingPercentile$Sample, com.google.android.exoplayer.util.SlidingPercentile$Sample)
com.google.android.exoplayer.util.SlidingPercentile$Sample a
com.google.android.exoplayer.util.SlidingPercentile$Sample b
public volatile synthetic int compare (java.lang.Object, java.lang.Object)
Object x0
Object x1
}
com/google/android/exoplayer/util/ManifestFetcher$1.class
ManifestFetcher.java
package com.google.android.exoplayer.util
com.google.android.exoplayer.util.ManifestFetcher$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.util.ManifestFetcher this$0
void <init> (com.google.android.exoplayer.util.ManifestFetcher)
public void run ()
}
com/google/android/exoplayer/util/ManifestFetcher$2.class
ManifestFetcher.java
package com.google.android.exoplayer.util
com.google.android.exoplayer.util.ManifestFetcher$2 extends java.lang.Object implements java.lang.Runnable {
final synthetic com.google.android.exoplayer.util.ManifestFetcher this$0
void <init> (com.google.android.exoplayer.util.ManifestFetcher)
public void run ()
}
com/google/android/exoplayer/util/ManifestParser.class
ManifestParser.java
package com.google.android.exoplayer.util
public abstract com.google.android.exoplayer.util.ManifestParser extends java.lang.Object {
public abstract java.lang.Object parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException com.google.android.exoplayer.ParserException
}
com/google/android/exoplayer/util/PriorityHandlerThread.class
PriorityHandlerThread.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.PriorityHandlerThread extends android.os.HandlerThread {
private final int priority
public void <init> (java.lang.String, int)
String name
int priority
public void run ()
}
com/google/android/exoplayer/util/Util$1.class
Util.java
package com.google.android.exoplayer.util
final com.google.android.exoplayer.util.Util$1 extends java.lang.Object implements java.util.concurrent.ThreadFactory {
final synthetic String val$threadName
void <init> (java.lang.String)
public java.lang.Thread newThread (java.lang.Runnable)
Runnable r
}
com/google/android/exoplayer/util/PlayerControl.class
PlayerControl.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.PlayerControl extends java.lang.Object implements android.widget.MediaController$MediaPlayerControl {
private final com.google.android.exoplayer.ExoPlayer exoPlayer
public void <init> (com.google.android.exoplayer.ExoPlayer)
com.google.android.exoplayer.ExoPlayer exoPlayer
public boolean canPause ()
public boolean canSeekBackward ()
public boolean canSeekForward ()
public int getAudioSessionId ()
public int getBufferPercentage ()
public int getCurrentPosition ()
public int getDuration ()
public boolean isPlaying ()
public void start ()
public void pause ()
public void seekTo (int)
int timeMillis
long seekPosition
}
com/google/android/exoplayer/util/SlidingPercentile.class
SlidingPercentile.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.SlidingPercentile extends java.lang.Object {
private static final java.util.Comparator INDEX_COMPARATOR
private static final java.util.Comparator VALUE_COMPARATOR
private static final int SORT_ORDER_NONE
private static final int SORT_ORDER_BY_VALUE
private static final int SORT_ORDER_BY_INDEX
private static final int MAX_RECYCLED_SAMPLES
private final int maxWeight
private final java.util.ArrayList samples
private final com.google.android.exoplayer.util.SlidingPercentile$Sample[] recycledSamples
private int currentSortOrder
private int nextSampleIndex
private int totalWeight
private int recycledSampleCount
public void <init> (int)
int maxWeight
public void addSample (int, float)
int excessWeight
com.google.android.exoplayer.util.SlidingPercentile$Sample oldestSample
int weight
float value
com.google.android.exoplayer.util.SlidingPercentile$Sample newSample
public float getPercentile (float)
com.google.android.exoplayer.util.SlidingPercentile$Sample currentSample
int i
float percentile
float desiredWeight
int accumulatedWeight
private void ensureSortedByIndex ()
private void ensureSortedByValue ()
static void <clinit> ()
}
com/google/android/exoplayer/util/Assertions.class
Assertions.java
package com.google.android.exoplayer.util
public final com.google.android.exoplayer.util.Assertions extends java.lang.Object {
private void <init> ()
public static void checkArgument (boolean)
boolean expression
public static void checkArgument (boolean, java.lang.Object)
boolean expression
Object errorMessage
public static void checkState (boolean)
boolean expression
public static void checkState (boolean, java.lang.Object)
boolean expression
Object errorMessage
public static java.lang.Object checkNotNull (java.lang.Object)
Object reference
public static java.lang.Object checkNotNull (java.lang.Object, java.lang.Object)
Object reference
Object errorMessage
public static java.lang.String checkNotEmpty (java.lang.String)
String string
public static java.lang.String checkNotEmpty (java.lang.String, java.lang.Object)
String string
Object errorMessage
public static void checkMainThread ()
}
com/google/android/exoplayer/util/SlidingPercentile$Sample.class
SlidingPercentile.java
package com.google.android.exoplayer.util
com.google.android.exoplayer.util.SlidingPercentile$Sample extends java.lang.Object {
public int index
public int weight
public float value
private void <init> ()
synthetic void <init> (com.google.android.exoplayer.util.SlidingPercentile$1)
com.google.android.exoplayer.util.SlidingPercentile$1 x0
}
com/google/android/exoplayer/util/TraceUtil.class
TraceUtil.java
package com.google.android.exoplayer.util
public com.google.android.exoplayer.util.TraceUtil extends java.lang.Object {
public void <init> ()
public static void beginSection (java.lang.String)
String sectionName
public static void endSection ()
private static void beginSectionV18 (java.lang.String)
String sectionName
private static void endSectionV18 ()
}
com/google/android/exoplayer/parser/
com/google/android/exoplayer/parser/Extractor.class
Extractor.java
package com.google.android.exoplayer.parser
public abstract com.google.android.exoplayer.parser.Extractor extends java.lang.Object {
public static final int RESULT_NEED_MORE_DATA
public static final int RESULT_END_OF_STREAM
public static final int RESULT_READ_SAMPLE
public static final int RESULT_READ_INIT
public static final int RESULT_READ_INDEX
public static final int RESULT_NEED_SAMPLE_HOLDER
public abstract com.google.android.exoplayer.parser.SegmentIndex getIndex ()
public abstract boolean hasRelativeIndexOffsets ()
public abstract com.google.android.exoplayer.MediaFormat getFormat ()
public abstract java.util.Map getPsshInfo ()
public abstract int read (com.google.android.exoplayer.upstream.NonBlockingInputStream, com.google.android.exoplayer.SampleHolder) throws com.google.android.exoplayer.ParserException
public abstract boolean seekTo (long, boolean)
}
com/google/android/exoplayer/parser/SegmentIndex.class
SegmentIndex.java
package com.google.android.exoplayer.parser
public final com.google.android.exoplayer.parser.SegmentIndex extends java.lang.Object {
public final int sizeBytes
public final int length
public final int[] sizes
public final long[] offsets
public final long[] durationsUs
public final long[] timesUs
public void <init> (int, int[], long[], long[], long[])
int sizeBytes
int[] sizes
long[] offsets
long[] durationsUs
long[] timesUs
}
com/google/android/exoplayer/parser/webm/
com/google/android/exoplayer/parser/webm/WebmExtractor$InnerEbmlEventHandler.class
WebmExtractor.java
package com.google.android.exoplayer.parser.webm
final com.google.android.exoplayer.parser.webm.WebmExtractor$InnerEbmlEventHandler extends java.lang.Object implements com.google.android.exoplayer.parser.webm.EbmlEventHandler {
final synthetic com.google.android.exoplayer.parser.webm.WebmExtractor this$0
private void <init> (com.google.android.exoplayer.parser.webm.WebmExtractor)
public int getElementType (int)
int id
public void onMasterElementStart (int, long, int, long) throws com.google.android.exoplayer.ParserException
int id
long elementOffsetBytes
int headerSizeBytes
long contentsSizeBytes
public void onMasterElementEnd (int) throws com.google.android.exoplayer.ParserException
int id
public void onIntegerElement (int, long) throws com.google.android.exoplayer.ParserException
int id
long value
public void onFloatElement (int, double)
int id
double value
public void onStringElement (int, java.lang.String) throws com.google.android.exoplayer.ParserException
int id
String value
public boolean onBinaryElement (int, long, int, int, com.google.android.exoplayer.upstream.NonBlockingInputStream) throws com.google.android.exoplayer.ParserException
int id
long elementOffsetBytes
int headerSizeBytes
int contentsSizeBytes
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
synthetic void <init> (com.google.android.exoplayer.parser.webm.WebmExtractor, com.google.android.exoplayer.parser.webm.WebmExtractor$1)
com.google.android.exoplayer.parser.webm.WebmExtractor x0
com.google.android.exoplayer.parser.webm.WebmExtractor$1 x1
}
com/google/android/exoplayer/parser/webm/EbmlReader.class
EbmlReader.java
package com.google.android.exoplayer.parser.webm
abstract com.google.android.exoplayer.parser.webm.EbmlReader extends java.lang.Object {
public static final int TYPE_UNKNOWN
public static final int TYPE_MASTER
public static final int TYPE_UNSIGNED_INT
public static final int TYPE_STRING
public static final int TYPE_BINARY
public static final int TYPE_FLOAT
public static final int READ_RESULT_CONTINUE
public static final int READ_RESULT_NEED_MORE_DATA
public static final int READ_RESULT_END_OF_STREAM
public abstract void setEventHandler (com.google.android.exoplayer.parser.webm.EbmlEventHandler)
public abstract int read (com.google.android.exoplayer.upstream.NonBlockingInputStream) throws com.google.android.exoplayer.ParserException
public abstract long getBytesRead ()
public abstract void reset ()
public abstract long readVarint (com.google.android.exoplayer.upstream.NonBlockingInputStream)
public abstract void readBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream, java.nio.ByteBuffer, int)
public abstract void readBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream, byte[], int)
public abstract void skipBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream, int)
}
com/google/android/exoplayer/parser/webm/DefaultEbmlReader.class
DefaultEbmlReader.java
package com.google.android.exoplayer.parser.webm
final com.google.android.exoplayer.parser.webm.DefaultEbmlReader extends java.lang.Object implements com.google.android.exoplayer.parser.webm.EbmlReader {
private static final int STATE_BEGIN_READING
private static final int STATE_READ_CONTENTS
private static final int STATE_FINISHED_READING
private static final int[] VARINT_LENGTH_MASKS
private static final int MAX_INTEGER_ELEMENT_SIZE_BYTES
private static final int VALID_FLOAT32_ELEMENT_SIZE_BYTES
private static final int VALID_FLOAT64_ELEMENT_SIZE_BYTES
private final byte[] tempByteArray
private final java.util.Stack masterElementsStack
private com.google.android.exoplayer.parser.webm.EbmlEventHandler eventHandler
private int state
private long bytesRead
private long elementOffset
private int elementId
private int elementIdState
private long elementContentSize
private int elementContentSizeState
private int varintBytesState
private int varintBytesLength
private int bytesState
private byte[] stringBytes
void <init> ()
public void setEventHandler (com.google.android.exoplayer.parser.webm.EbmlEventHandler)
com.google.android.exoplayer.parser.webm.EbmlEventHandler eventHandler
public int read (com.google.android.exoplayer.upstream.NonBlockingInputStream) throws com.google.android.exoplayer.ParserException
int idResult
int sizeResult
double floatValue
long expectedBytesRead
int masterHeaderSize
int intResult
long intValue
int floatResult
long valueBits
double floatValue
int stringResult
String stringValue
int binaryHeaderSize
boolean consumed
int skipResult
int type
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
public long getBytesRead ()
public void reset ()
public long readVarint (com.google.android.exoplayer.upstream.NonBlockingInputStream)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
public void readBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream, java.nio.ByteBuffer, int)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
java.nio.ByteBuffer byteBuffer
int totalBytes
int result
public void readBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream, byte[], int)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
byte[] byteArray
int totalBytes
int result
public void skipBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream, int)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int totalBytes
int result
private void prepareForNextElement ()
private int readElementId (com.google.android.exoplayer.upstream.NonBlockingInputStream)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
private int readElementContentSize (com.google.android.exoplayer.upstream.NonBlockingInputStream)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
private int readVarintBytes (com.google.android.exoplayer.upstream.NonBlockingInputStream)
int i
int result
int firstByte
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
private int readBytesInternal (com.google.android.exoplayer.upstream.NonBlockingInputStream, java.nio.ByteBuffer, int)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
java.nio.ByteBuffer byteBuffer
int totalBytes
int remainingBytes
int additionalBytesRead
private int readBytesInternal (com.google.android.exoplayer.upstream.NonBlockingInputStream, byte[], int)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
byte[] byteArray
int totalBytes
int remainingBytes
int additionalBytesRead
private int skipBytesInternal (com.google.android.exoplayer.upstream.NonBlockingInputStream, int)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int totalBytes
int remainingBytes
int additionalBytesRead
private int updateBytesState (int, int)
int additionalBytesRead
int totalBytes
private long getTempByteArrayValue (int, boolean)
int i
int byteLength
boolean removeLengthMask
long varint
static void <clinit> ()
}
com/google/android/exoplayer/parser/webm/WebmExtractor$1.class
WebmExtractor.java
package com.google.android.exoplayer.parser.webm
synthetic com.google.android.exoplayer.parser.webm.WebmExtractor$1 extends java.lang.Object {
}
com/google/android/exoplayer/parser/webm/DefaultEbmlReader$MasterElement.class
DefaultEbmlReader.java
package com.google.android.exoplayer.parser.webm
final com.google.android.exoplayer.parser.webm.DefaultEbmlReader$MasterElement extends java.lang.Object {
private final int elementId
private final long elementEndOffsetBytes
private void <init> (int, long)
int elementId
long elementEndOffsetBytes
static synthetic long access$000 (com.google.android.exoplayer.parser.webm.DefaultEbmlReader$MasterElement)
com.google.android.exoplayer.parser.webm.DefaultEbmlReader$MasterElement x0
static synthetic int access$100 (com.google.android.exoplayer.parser.webm.DefaultEbmlReader$MasterElement)
com.google.android.exoplayer.parser.webm.DefaultEbmlReader$MasterElement x0
synthetic void <init> (int, long, com.google.android.exoplayer.parser.webm.DefaultEbmlReader$1)
int x0
long x1
com.google.android.exoplayer.parser.webm.DefaultEbmlReader$1 x2
}
com/google/android/exoplayer/parser/webm/WebmExtractor.class
WebmExtractor.java
package com.google.android.exoplayer.parser.webm
public final com.google.android.exoplayer.parser.webm.WebmExtractor extends java.lang.Object implements com.google.android.exoplayer.parser.Extractor {
private static final String DOC_TYPE_WEBM
private static final String CODEC_ID_VP9
private static final String CODEC_ID_VORBIS
private static final String CODEC_ID_OPUS
private static final int VORBIS_MAX_INPUT_SIZE
private static final int OPUS_MAX_INPUT_SIZE
private static final int UNKNOWN
private static final int ID_EBML
private static final int ID_EBML_READ_VERSION
private static final int ID_DOC_TYPE
private static final int ID_DOC_TYPE_READ_VERSION
private static final int ID_SEGMENT
private static final int ID_INFO
private static final int ID_TIMECODE_SCALE
private static final int ID_DURATION
private static final int ID_CLUSTER
private static final int ID_TIME_CODE
private static final int ID_SIMPLE_BLOCK
private static final int ID_BLOCK_GROUP
private static final int ID_BLOCK
private static final int ID_TRACKS
private static final int ID_TRACK_ENTRY
private static final int ID_CODEC_ID
private static final int ID_CODEC_PRIVATE
private static final int ID_CODEC_DELAY
private static final int ID_SEEK_PRE_ROLL
private static final int ID_VIDEO
private static final int ID_PIXEL_WIDTH
private static final int ID_PIXEL_HEIGHT
private static final int ID_AUDIO
private static final int ID_CHANNELS
private static final int ID_SAMPLING_FREQUENCY
private static final int ID_CUES
private static final int ID_CUE_POINT
private static final int ID_CUE_TIME
private static final int ID_CUE_TRACK_POSITIONS
private static final int ID_CUE_CLUSTER_POSITION
private static final int LACING_NONE
private static final int LACING_XIPH
private static final int LACING_FIXED
private static final int LACING_EBML
private static final int READ_TERMINATING_RESULTS
private final com.google.android.exoplayer.parser.webm.EbmlReader reader
private final byte[] simpleBlockTimecodeAndFlags
private com.google.android.exoplayer.SampleHolder sampleHolder
private int readResults
private long segmentStartOffsetBytes
private long segmentEndOffsetBytes
private long timecodeScale
private long durationUs
private int pixelWidth
private int pixelHeight
private int channelCount
private int sampleRate
private byte[] codecPrivate
private String codecId
private long codecDelayNs
private long seekPreRollNs
private boolean seenAudioTrack
private long cuesSizeBytes
private long clusterTimecodeUs
private long simpleBlockTimecodeUs
private com.google.android.exoplayer.MediaFormat format
private com.google.android.exoplayer.parser.SegmentIndex cues
private com.google.android.exoplayer.util.LongArray cueTimesUs
private com.google.android.exoplayer.util.LongArray cueClusterPositions
public void <init> ()
void <init> (com.google.android.exoplayer.parser.webm.EbmlReader)
com.google.android.exoplayer.parser.webm.EbmlReader reader
public int read (com.google.android.exoplayer.upstream.NonBlockingInputStream, com.google.android.exoplayer.SampleHolder) throws com.google.android.exoplayer.ParserException
int ebmlReadResult
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
com.google.android.exoplayer.SampleHolder sampleHolder
public boolean seekTo (long, boolean)
int clusterIndex
long seekTimeUs
boolean allowNoop
public com.google.android.exoplayer.parser.SegmentIndex getIndex ()
public boolean hasRelativeIndexOffsets ()
public com.google.android.exoplayer.MediaFormat getFormat ()
public java.util.Map getPsshInfo ()
int getElementType (int)
int id
boolean onMasterElementStart (int, long, int, long) throws com.google.android.exoplayer.ParserException
int id
long elementOffsetBytes
int headerSizeBytes
long contentsSizeBytes
boolean onMasterElementEnd (int) throws com.google.android.exoplayer.ParserException
int id
boolean onIntegerElement (int, long) throws com.google.android.exoplayer.ParserException
int id
long value
boolean onFloatElement (int, double)
int id
double value
boolean onStringElement (int, java.lang.String) throws com.google.android.exoplayer.ParserException
int id
String value
boolean onBinaryElement (int, long, int, int, com.google.android.exoplayer.upstream.NonBlockingInputStream) throws com.google.android.exoplayer.ParserException
boolean keyframe
long elementEndOffsetBytes
int timecode
long timecodeUs
boolean keyframe
boolean invisible
int lacing
java.nio.ByteBuffer outputData
int id
long elementOffsetBytes
int headerSizeBytes
int contentsSizeBytes
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
private long scaleTimecodeToUs (long)
long unscaledTimecode
private boolean isCodecSupported (java.lang.String)
String codecId
private void buildVideoFormat () throws com.google.android.exoplayer.ParserException
private void buildAudioFormat () throws com.google.android.exoplayer.ParserException
java.util.ArrayList opusInitializationData
private void buildCues () throws com.google.android.exoplayer.ParserException
int i
int i
int cuePointsSize
int[] sizes
long[] offsets
long[] durationsUs
long[] timesUs
private java.util.ArrayList parseVorbisCodecPrivate () throws com.google.android.exoplayer.ParserException
int offset
int vorbisInfoLength
int vorbisSkipLength
byte[] vorbisInfo
byte[] vorbisBooks
java.util.ArrayList initializationData
ArrayIndexOutOfBoundsException e
}
com/google/android/exoplayer/parser/webm/EbmlEventHandler.class
EbmlEventHandler.java
package com.google.android.exoplayer.parser.webm
abstract com.google.android.exoplayer.parser.webm.EbmlEventHandler extends java.lang.Object {
public abstract int getElementType (int)
public abstract void onMasterElementStart (int, long, int, long) throws com.google.android.exoplayer.ParserException
public abstract void onMasterElementEnd (int) throws com.google.android.exoplayer.ParserException
public abstract void onIntegerElement (int, long) throws com.google.android.exoplayer.ParserException
public abstract void onFloatElement (int, double) throws com.google.android.exoplayer.ParserException
public abstract void onStringElement (int, java.lang.String) throws com.google.android.exoplayer.ParserException
public abstract boolean onBinaryElement (int, long, int, int, com.google.android.exoplayer.upstream.NonBlockingInputStream) throws com.google.android.exoplayer.ParserException
}
com/google/android/exoplayer/parser/webm/DefaultEbmlReader$1.class
DefaultEbmlReader.java
package com.google.android.exoplayer.parser.webm
synthetic com.google.android.exoplayer.parser.webm.DefaultEbmlReader$1 extends java.lang.Object {
}
com/google/android/exoplayer/parser/mp4/
com/google/android/exoplayer/parser/mp4/DefaultSampleValues.class
DefaultSampleValues.java
package com.google.android.exoplayer.parser.mp4
final com.google.android.exoplayer.parser.mp4.DefaultSampleValues extends java.lang.Object {
public final int sampleDescriptionIndex
public final int duration
public final int size
public final int flags
public void <init> (int, int, int, int)
int sampleDescriptionIndex
int duration
int size
int flags
}
com/google/android/exoplayer/parser/mp4/Atom$ContainerAtom.class
Atom.java
package com.google.android.exoplayer.parser.mp4
public final com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom extends com.google.android.exoplayer.parser.mp4.Atom {
public final java.util.ArrayList children
public final int endByteOffset
public void <init> (int, int)
int type
int endByteOffset
public void add (com.google.android.exoplayer.parser.mp4.Atom)
com.google.android.exoplayer.parser.mp4.Atom atom
public com.google.android.exoplayer.parser.mp4.Atom$LeafAtom getLeafAtomOfType (int)
com.google.android.exoplayer.parser.mp4.Atom atom
int i
int type
int childrenSize
public com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom getContainerAtomOfType (int)
com.google.android.exoplayer.parser.mp4.Atom atom
int i
int type
int childrenSize
}
com/google/android/exoplayer/parser/mp4/FragmentedMp4Extractor.class
FragmentedMp4Extractor.java
package com.google.android.exoplayer.parser.mp4
public final com.google.android.exoplayer.parser.mp4.FragmentedMp4Extractor extends java.lang.Object implements com.google.android.exoplayer.parser.Extractor {
public static final int WORKAROUND_EVERY_VIDEO_FRAME_IS_SYNC_FRAME
private static final int READ_TERMINATING_RESULTS
private static final byte[] NAL_START_CODE
private static final byte[] PIFF_SAMPLE_ENCRYPTION_BOX_EXTENDED_TYPE
private static final int[] AC3_CHANNEL_COUNTS
private static final int[] AC3_BIT_RATES
private static final int STATE_READING_ATOM_HEADER
private static final int STATE_READING_ATOM_PAYLOAD
private static final int STATE_READING_ENCRYPTION_DATA
private static final int STATE_READING_SAMPLE
private static final int ATOM_HEADER_SIZE
private static final int FULL_ATOM_HEADER_SIZE
private static final java.util.Set PARSED_ATOMS
private static final java.util.Set CONTAINER_TYPES
private final int workaroundFlags
private final com.google.android.exoplayer.parser.mp4.ParsableByteArray atomHeader
private final byte[] extendedTypeScratch
private final java.util.Stack containerAtoms
private final com.google.android.exoplayer.parser.mp4.TrackFragment fragmentRun
private int parserState
private int atomBytesRead
private int rootAtomBytesRead
private int atomType
private int atomSize
private com.google.android.exoplayer.parser.mp4.ParsableByteArray atomData
private int pendingSeekTimeMs
private int sampleIndex
private int pendingSeekSyncSampleIndex
private int lastSyncSampleIndex
private final java.util.HashMap psshData
private com.google.android.exoplayer.parser.SegmentIndex segmentIndex
private com.google.android.exoplayer.parser.mp4.Track track
private com.google.android.exoplayer.parser.mp4.DefaultSampleValues extendsDefaults
public void <init> ()
public void <init> (int)
int workaroundFlags
public void setTrack (com.google.android.exoplayer.parser.mp4.Track)
com.google.android.exoplayer.parser.mp4.Track track
public java.util.Map getPsshInfo ()
public com.google.android.exoplayer.parser.SegmentIndex getIndex ()
public boolean hasRelativeIndexOffsets ()
public com.google.android.exoplayer.MediaFormat getFormat ()
public int read (com.google.android.exoplayer.upstream.NonBlockingInputStream, com.google.android.exoplayer.SampleHolder) throws com.google.android.exoplayer.ParserException
int results
Exception e
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
com.google.android.exoplayer.SampleHolder out
public boolean seekTo (long, boolean)
int i
int sampleIndexFound
int syncSampleIndexFound
long seekTimeUs
boolean allowNoop
private void enterState (int)
int state
private int readAtomHeader (com.google.android.exoplayer.upstream.NonBlockingInputStream)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int remainingBytes
int bytesRead
Integer atomTypeInteger
private int readAtomPayload (com.google.android.exoplayer.upstream.NonBlockingInputStream)
int bytesRead
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int bytesRead
int results
private int onLeafAtomRead (com.google.android.exoplayer.parser.mp4.Atom$LeafAtom)
com.google.android.exoplayer.parser.mp4.Atom$LeafAtom leaf
private int onContainerAtomRead (com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom)
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom container
private void onMoovContainerAtomRead (com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom)
com.google.android.exoplayer.parser.mp4.ParsableByteArray psshAtom
java.util.UUID uuid
int dataSize
byte[] data
com.google.android.exoplayer.parser.mp4.Atom child
int i
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom moov
java.util.List moovChildren
int moovChildrenSize
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom mvex
private void onMoofContainerAtomRead (com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom)
int i
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom moof
private static com.google.android.exoplayer.parser.mp4.DefaultSampleValues parseTrex (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.ParsableByteArray trex
int defaultSampleDescriptionIndex
int defaultSampleDuration
int defaultSampleSize
int defaultSampleFlags
private static com.google.android.exoplayer.parser.mp4.Track parseTrak (com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom)
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom trak
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom mdia
int trackType
android.util.Pair header
int id
long timescale
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom stbl
android.util.Pair sampleDescriptions
private static android.util.Pair parseTkhd (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
int i
long duration
com.google.android.exoplayer.parser.mp4.ParsableByteArray tkhd
int fullAtom
int version
int trackId
boolean durationUnknown
int durationPosition
int durationByteCount
long duration
private static int parseHdlr (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.ParsableByteArray hdlr
private static long parseMdhd (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.ParsableByteArray mdhd
int fullAtom
int version
private static android.util.Pair parseStsd (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
android.util.Pair avc
android.util.Pair audioSampleEntry
int childStartPosition
int childAtomSize
int childAtomType
int i
com.google.android.exoplayer.parser.mp4.ParsableByteArray stsd
int numberOfEntries
com.google.android.exoplayer.MediaFormat mediaFormat
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox[] trackEncryptionBoxes
private static android.util.Pair parseAvcFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int, int)
int childStartPosition
int childAtomSize
int childAtomType
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int size
int width
int height
float pixelWidthHeightRatio
java.util.List initializationData
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox trackEncryptionBox
int childPosition
com.google.android.exoplayer.MediaFormat format
private static android.util.Pair parseAudioSampleEntry (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int, int, int)
android.util.Pair audioSpecificConfig
com.google.android.exoplayer.parser.mp4.FragmentedMp4Extractor$Ac3Format ac3Format
int childStartPosition
int childAtomSize
int childAtomType
String mimeType
String mimeType
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int atomType
int position
int size
int channelCount
int sampleSize
int sampleRate
int bitrate
byte[] initializationData
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox trackEncryptionBox
int childPosition
String mimeType
com.google.android.exoplayer.MediaFormat format
private static com.google.android.exoplayer.parser.mp4.FragmentedMp4Extractor$Ac3Format parseAc3SpecificBoxFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int)
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int fscod
int sampleRate
int nextByte
int channelCount
int bitrate
private static int parseEc3SpecificBoxFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int)
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
private static java.util.List parseAvcCFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int)
int j
int j
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int nalUnitLength
java.util.List initializationData
int numSequenceParameterSets
int numPictureParamterSets
private static byte[] parseChildNalUnit (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.ParsableByteArray atom
int length
int offset
private static com.google.android.exoplayer.parser.mp4.TrackEncryptionBox parseSinfFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int, int)
int childAtomSize
int childAtomType
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int size
int childPosition
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox trackEncryptionBox
private static float parsePaspFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int)
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int hSpacing
int vSpacing
private static com.google.android.exoplayer.parser.mp4.TrackEncryptionBox parseSchiFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int, int)
int firstInt
boolean defaultIsEncrypted
int defaultInitVectorSize
byte[] defaultKeyId
int childAtomSize
int childAtomType
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int size
int childPosition
private static byte[] parseEsdsFromParent (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int)
com.google.android.exoplayer.parser.mp4.ParsableByteArray parent
int position
int varIntByte
int flags
int varInt
byte[] initializationData
private static void parseMoof (com.google.android.exoplayer.parser.mp4.Track, com.google.android.exoplayer.parser.mp4.DefaultSampleValues, com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom, com.google.android.exoplayer.parser.mp4.TrackFragment, int, byte[])
com.google.android.exoplayer.parser.mp4.Track track
com.google.android.exoplayer.parser.mp4.DefaultSampleValues extendsDefaults
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom moof
com.google.android.exoplayer.parser.mp4.TrackFragment out
int workaroundFlags
byte[] extendedTypeScratch
private static void parseTraf (com.google.android.exoplayer.parser.mp4.Track, com.google.android.exoplayer.parser.mp4.DefaultSampleValues, com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom, com.google.android.exoplayer.parser.mp4.TrackFragment, int, byte[])
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox trackEncryptionBox
com.google.android.exoplayer.parser.mp4.Atom atom
int i
com.google.android.exoplayer.parser.mp4.Track track
com.google.android.exoplayer.parser.mp4.DefaultSampleValues extendsDefaults
com.google.android.exoplayer.parser.mp4.Atom$ContainerAtom traf
com.google.android.exoplayer.parser.mp4.TrackFragment out
int workaroundFlags
byte[] extendedTypeScratch
com.google.android.exoplayer.parser.mp4.Atom$LeafAtom tfdtAtom
long decodeTime
com.google.android.exoplayer.parser.mp4.Atom$LeafAtom tfhd
com.google.android.exoplayer.parser.mp4.DefaultSampleValues fragmentHeader
com.google.android.exoplayer.parser.mp4.Atom$LeafAtom trun
com.google.android.exoplayer.parser.mp4.Atom$LeafAtom saiz
com.google.android.exoplayer.parser.mp4.Atom$LeafAtom senc
int childrenSize
private static void parseSaiz (com.google.android.exoplayer.parser.mp4.TrackEncryptionBox, com.google.android.exoplayer.parser.mp4.ParsableByteArray, com.google.android.exoplayer.parser.mp4.TrackFragment)
int sampleInfoSize
int i
boolean[] sampleHasSubsampleEncryptionTable
boolean subsampleEncryption
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox encryptionBox
com.google.android.exoplayer.parser.mp4.ParsableByteArray saiz
com.google.android.exoplayer.parser.mp4.TrackFragment out
int vectorSize
int fullAtom
int flags
int defaultSampleInfoSize
int sampleCount
int totalSize
private static com.google.android.exoplayer.parser.mp4.DefaultSampleValues parseTfhd (com.google.android.exoplayer.parser.mp4.DefaultSampleValues, com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.DefaultSampleValues extendsDefaults
com.google.android.exoplayer.parser.mp4.ParsableByteArray tfhd
int fullAtom
int flags
int defaultSampleDescriptionIndex
int defaultSampleDuration
int defaultSampleSize
int defaultSampleFlags
private static long parseTfdt (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.ParsableByteArray tfdt
int fullAtom
int version
private static void parseTrun (com.google.android.exoplayer.parser.mp4.Track, com.google.android.exoplayer.parser.mp4.DefaultSampleValues, long, int, com.google.android.exoplayer.parser.mp4.ParsableByteArray, com.google.android.exoplayer.parser.mp4.TrackFragment)
int sampleOffset
int sampleDuration
int sampleSize
int sampleFlags
int i
com.google.android.exoplayer.parser.mp4.Track track
com.google.android.exoplayer.parser.mp4.DefaultSampleValues defaultSampleValues
long decodeTime
int workaroundFlags
com.google.android.exoplayer.parser.mp4.ParsableByteArray trun
com.google.android.exoplayer.parser.mp4.TrackFragment out
int fullAtom
int flags
int sampleCount
boolean firstSampleFlagsPresent
int firstSampleFlags
boolean sampleDurationsPresent
boolean sampleSizesPresent
boolean sampleFlagsPresent
boolean sampleCompositionTimeOffsetsPresent
int[] sampleSizeTable
int[] sampleCompositionTimeOffsetTable
long[] sampleDecodingTimeTable
boolean[] sampleIsSyncFrameTable
long timescale
long cumulativeTime
boolean workaroundEveryVideoFrameIsSyncFrame
private static void parseUuid (com.google.android.exoplayer.parser.mp4.ParsableByteArray, com.google.android.exoplayer.parser.mp4.TrackFragment, byte[])
com.google.android.exoplayer.parser.mp4.ParsableByteArray uuid
com.google.android.exoplayer.parser.mp4.TrackFragment out
byte[] extendedTypeScratch
private static void parseSenc (com.google.android.exoplayer.parser.mp4.ParsableByteArray, com.google.android.exoplayer.parser.mp4.TrackFragment)
com.google.android.exoplayer.parser.mp4.ParsableByteArray senc
com.google.android.exoplayer.parser.mp4.TrackFragment out
private static void parseSenc (com.google.android.exoplayer.parser.mp4.ParsableByteArray, int, com.google.android.exoplayer.parser.mp4.TrackFragment)
com.google.android.exoplayer.parser.mp4.ParsableByteArray senc
int offset
com.google.android.exoplayer.parser.mp4.TrackFragment out
int fullAtom
int flags
boolean subsampleEncryption
int sampleCount
private static com.google.android.exoplayer.parser.SegmentIndex parseSidx (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
long earliestPresentationTime
long firstOffset
int firstInt
int type
long referenceDuration
int i
com.google.android.exoplayer.parser.mp4.ParsableByteArray atom
int fullAtom
int version
long timescale
long earliestPresentationTime
long firstOffset
int referenceCount
int[] sizes
long[] offsets
long[] durationsUs
long[] timesUs
long offset
long time
long timeUs
private int readEncryptionData (com.google.android.exoplayer.upstream.NonBlockingInputStream)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
boolean success
private int readOrSkipSample (com.google.android.exoplayer.upstream.NonBlockingInputStream, com.google.android.exoplayer.SampleHolder)
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
com.google.android.exoplayer.SampleHolder out
int sampleSize
private int skipSample (com.google.android.exoplayer.upstream.NonBlockingInputStream, int)
com.google.android.exoplayer.parser.mp4.ParsableByteArray sampleEncryptionData
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox encryptionBox
int vectorSize
boolean subsampleEncryption
int subsampleCount
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int sampleSize
private int readSample (com.google.android.exoplayer.upstream.NonBlockingInputStream, int, com.google.android.exoplayer.SampleHolder)
int length
int sampleOffset
int position
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int sampleSize
com.google.android.exoplayer.SampleHolder out
java.nio.ByteBuffer outputData
private void readSampleEncryptionData (com.google.android.exoplayer.parser.mp4.ParsableByteArray, com.google.android.exoplayer.SampleHolder)
int i
com.google.android.exoplayer.parser.mp4.ParsableByteArray sampleEncryptionData
com.google.android.exoplayer.SampleHolder out
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox encryptionBox
byte[] keyId
boolean isEncrypted
int vectorSize
boolean subsampleEncryption
byte[] vector
int subsampleCount
int[] clearDataSizes
int[] encryptedDataSizes
private static int parseFullAtomVersion (int)
int fullAtomInt
private static int parseFullAtomFlags (int)
int fullAtomInt
private static int readUnsignedIntToInt (java.nio.ByteBuffer)
int i
java.nio.ByteBuffer data
int result
static void <clinit> ()
java.util.HashSet parsedAtoms
java.util.HashSet atomContainerTypes
}
com/google/android/exoplayer/parser/mp4/Atom$LeafAtom.class
Atom.java
package com.google.android.exoplayer.parser.mp4
public final com.google.android.exoplayer.parser.mp4.Atom$LeafAtom extends com.google.android.exoplayer.parser.mp4.Atom {
public final com.google.android.exoplayer.parser.mp4.ParsableByteArray data
public void <init> (int, com.google.android.exoplayer.parser.mp4.ParsableByteArray)
int type
com.google.android.exoplayer.parser.mp4.ParsableByteArray data
}
com/google/android/exoplayer/parser/mp4/Track.class
Track.java
package com.google.android.exoplayer.parser.mp4
public final com.google.android.exoplayer.parser.mp4.Track extends java.lang.Object {
public static final int TYPE_VIDEO
public static final int TYPE_AUDIO
public static final int TYPE_TEXT
public static final int TYPE_HINT
public static final int TYPE_META
public final int id
public final int type
public final long timescale
public final com.google.android.exoplayer.MediaFormat mediaFormat
public final com.google.android.exoplayer.parser.mp4.TrackEncryptionBox[] sampleDescriptionEncryptionBoxes
public void <init> (int, int, long, com.google.android.exoplayer.MediaFormat, com.google.android.exoplayer.parser.mp4.TrackEncryptionBox[])
int id
int type
long timescale
com.google.android.exoplayer.MediaFormat mediaFormat
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox[] sampleDescriptionEncryptionBoxes
}
com/google/android/exoplayer/parser/mp4/TrackEncryptionBox.class
TrackEncryptionBox.java
package com.google.android.exoplayer.parser.mp4
public final com.google.android.exoplayer.parser.mp4.TrackEncryptionBox extends java.lang.Object {
public final boolean isEncrypted
public final int initializationVectorSize
public final byte[] keyId
public void <init> (boolean, int, byte[])
boolean isEncrypted
int initializationVectorSize
byte[] keyId
}
com/google/android/exoplayer/parser/mp4/TrackFragment.class
TrackFragment.java
package com.google.android.exoplayer.parser.mp4
final com.google.android.exoplayer.parser.mp4.TrackFragment extends java.lang.Object {
public int sampleDescriptionIndex
public int length
public int[] sampleSizeTable
public int[] sampleCompositionTimeOffsetTable
public long[] sampleDecodingTimeTable
public boolean[] sampleIsSyncFrameTable
public boolean definesEncryptionData
public boolean[] sampleHasSubsampleEncryptionTable
public int sampleEncryptionDataLength
public com.google.android.exoplayer.parser.mp4.ParsableByteArray sampleEncryptionData
public boolean sampleEncryptionDataNeedsFill
void <init> ()
public void reset ()
public void initTables (int)
int tableSize
int sampleCount
public void initEncryptionData (int)
int length
public void fillEncryptionData (com.google.android.exoplayer.parser.mp4.ParsableByteArray)
com.google.android.exoplayer.parser.mp4.ParsableByteArray source
public boolean fillEncryptionData (com.google.android.exoplayer.upstream.NonBlockingInputStream)
com.google.android.exoplayer.upstream.NonBlockingInputStream source
public long getSamplePresentationTime (int)
int index
}
com/google/android/exoplayer/parser/mp4/FragmentedMp4Extractor$Ac3Format.class
FragmentedMp4Extractor.java
package com.google.android.exoplayer.parser.mp4
final com.google.android.exoplayer.parser.mp4.FragmentedMp4Extractor$Ac3Format extends java.lang.Object {
public final int channelCount
public final int sampleRate
public final int bitrate
public void <init> (int, int, int)
int channelCount
int sampleRate
int bitrate
}
com/google/android/exoplayer/parser/mp4/Atom.class
Atom.java
package com.google.android.exoplayer.parser.mp4
abstract com.google.android.exoplayer.parser.mp4.Atom extends java.lang.Object {
public static final int TYPE_avc1
public static final int TYPE_avc3
public static final int TYPE_esds
public static final int TYPE_mdat
public static final int TYPE_mp4a
public static final int TYPE_ac_3
public static final int TYPE_dac3
public static final int TYPE_ec_3
public static final int TYPE_dec3
public static final int TYPE_tfdt
public static final int TYPE_tfhd
public static final int TYPE_trex
public static final int TYPE_trun
public static final int TYPE_sidx
public static final int TYPE_moov
public static final int TYPE_trak
public static final int TYPE_mdia
public static final int TYPE_minf
public static final int TYPE_stbl
public static final int TYPE_avcC
public static final int TYPE_moof
public static final int TYPE_traf
public static final int TYPE_mvex
public static final int TYPE_tkhd
public static final int TYPE_mdhd
public static final int TYPE_hdlr
public static final int TYPE_stsd
public static final int TYPE_pssh
public static final int TYPE_sinf
public static final int TYPE_schm
public static final int TYPE_schi
public static final int TYPE_tenc
public static final int TYPE_encv
public static final int TYPE_enca
public static final int TYPE_frma
public static final int TYPE_saiz
public static final int TYPE_uuid
public static final int TYPE_senc
public static final int TYPE_pasp
public static final int TYPE_TTML
public final int type
void <init> (int)
int type
}
com/google/android/exoplayer/parser/mp4/ParsableByteArray.class
ParsableByteArray.java
package com.google.android.exoplayer.parser.mp4
final com.google.android.exoplayer.parser.mp4.ParsableByteArray extends java.lang.Object {
public byte[] data
private int position
public void <init> (int)
int length
public int length ()
public int getPosition ()
public void setPosition (int)
int position
public void skip (int)
int bytes
public void rewind (int)
int bytes
public void readBytes (byte[], int, int)
byte[] buffer
int offset
int length
public void readBytes (java.nio.ByteBuffer, int)
java.nio.ByteBuffer buffer
int length
public int readUnsignedByte ()
int result
public int readUnsignedShort ()
int result
public long readUnsignedInt ()
long result
public int readInt ()
int result
public long readLong ()
long result
public int readUnsignedFixedPoint1616 ()
int result
public int readUnsignedIntToInt ()
int result
public long readUnsignedLongToLong ()
long result
private static int shiftIntoInt (byte[], int, int)
int i
byte[] bytes
int offset
int length
int result
private static long shiftIntoLong (byte[], int, int)
int i
byte[] bytes
int offset
int length
long result
}
com/google/android/exoplayer/drm/
com/google/android/exoplayer/drm/StreamingDrmSessionManager.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
public com.google.android.exoplayer.drm.StreamingDrmSessionManager extends java.lang.Object implements com.google.android.exoplayer.drm.DrmSessionManager {
private static final int MSG_PROVISION
private static final int MSG_KEYS
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener eventListener
private final android.media.MediaDrm mediaDrm
private final java.util.HashMap optionalKeyRequestParameters
final com.google.android.exoplayer.drm.StreamingDrmSessionManager$MediaDrmHandler mediaDrmHandler
final com.google.android.exoplayer.drm.MediaDrmCallback callback
final com.google.android.exoplayer.drm.StreamingDrmSessionManager$PostResponseHandler postResponseHandler
final java.util.UUID uuid
private android.os.HandlerThread requestHandlerThread
private android.os.Handler postRequestHandler
private int openCount
private boolean provisioningInProgress
private int state
private android.media.MediaCrypto mediaCrypto
private Exception lastException
private String mimeType
private byte[] schemePsshData
private byte[] sessionId
public void <init> (java.util.UUID, android.os.Looper, com.google.android.exoplayer.drm.MediaDrmCallback, android.os.Handler, com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener) throws android.media.UnsupportedSchemeException
java.util.UUID uuid
android.os.Looper playbackLooper
com.google.android.exoplayer.drm.MediaDrmCallback callback
android.os.Handler eventHandler
com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener eventListener
public void <init> (java.util.UUID, android.os.Looper, com.google.android.exoplayer.drm.MediaDrmCallback, java.util.HashMap, android.os.Handler, com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener) throws android.media.UnsupportedSchemeException
java.util.UUID uuid
android.os.Looper playbackLooper
com.google.android.exoplayer.drm.MediaDrmCallback callback
java.util.HashMap optionalKeyRequestParameters
android.os.Handler eventHandler
com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener eventListener
public int getState ()
public android.media.MediaCrypto getMediaCrypto ()
public boolean requiresSecureDecoderComponent (java.lang.String)
String mimeType
public java.lang.Exception getError ()
public final java.lang.String getPropertyString (java.lang.String)
String key
public final byte[] getPropertyByteArray (java.lang.String)
String key
public void open (java.util.Map, java.lang.String)
java.util.Map psshData
String mimeType
public void close ()
private void openInternal (boolean)
android.media.NotProvisionedException e
Exception e
boolean allowProvisioning
private void postProvisionRequest ()
android.media.MediaDrm$ProvisionRequest request
private void onProvisionResponse (java.lang.Object)
android.media.DeniedByServerException e
Object response
private void postKeyRequest ()
android.media.NotProvisionedException e
android.media.MediaDrm$KeyRequest keyRequest
private void onKeyResponse (java.lang.Object)
Exception e
Object response
private void onKeysError (java.lang.Exception)
Exception e
private void onError (java.lang.Exception)
Exception e
static synthetic com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener access$100 (com.google.android.exoplayer.drm.StreamingDrmSessionManager)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
static synthetic int access$200 (com.google.android.exoplayer.drm.StreamingDrmSessionManager)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
static synthetic int access$300 (com.google.android.exoplayer.drm.StreamingDrmSessionManager)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
static synthetic void access$400 (com.google.android.exoplayer.drm.StreamingDrmSessionManager)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
static synthetic int access$302 (com.google.android.exoplayer.drm.StreamingDrmSessionManager, int)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
int x1
static synthetic void access$500 (com.google.android.exoplayer.drm.StreamingDrmSessionManager)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
static synthetic void access$600 (com.google.android.exoplayer.drm.StreamingDrmSessionManager, java.lang.Object)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
Object x1
static synthetic void access$700 (com.google.android.exoplayer.drm.StreamingDrmSessionManager, java.lang.Object)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
Object x1
}
com/google/android/exoplayer/drm/MediaDrmCallback.class
MediaDrmCallback.java
package com.google.android.exoplayer.drm
public abstract com.google.android.exoplayer.drm.MediaDrmCallback extends java.lang.Object {
public abstract byte[] executeProvisionRequest (java.util.UUID, android.media.MediaDrm$ProvisionRequest) throws java.lang.Exception
public abstract byte[] executeKeyRequest (java.util.UUID, android.media.MediaDrm$KeyRequest) throws java.lang.Exception
}
com/google/android/exoplayer/drm/StreamingDrmSessionManager$EventListener.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
public abstract com.google.android.exoplayer.drm.StreamingDrmSessionManager$EventListener extends java.lang.Object {
public abstract void onDrmSessionManagerError (java.lang.Exception)
}
com/google/android/exoplayer/drm/StreamingDrmSessionManager$PostRequestHandler.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
com.google.android.exoplayer.drm.StreamingDrmSessionManager$PostRequestHandler extends android.os.Handler {
final synthetic com.google.android.exoplayer.drm.StreamingDrmSessionManager this$0
public void <init> (com.google.android.exoplayer.drm.StreamingDrmSessionManager, android.os.Looper)
android.os.Looper backgroundLooper
public void handleMessage (android.os.Message)
Exception e
android.os.Message msg
Object response
}
com/google/android/exoplayer/drm/StreamingDrmSessionManager$1.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
com.google.android.exoplayer.drm.StreamingDrmSessionManager$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic Exception val$e
final synthetic com.google.android.exoplayer.drm.StreamingDrmSessionManager this$0
void <init> (com.google.android.exoplayer.drm.StreamingDrmSessionManager, java.lang.Exception)
public void run ()
}
com/google/android/exoplayer/drm/StreamingDrmSessionManager$PostResponseHandler.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
com.google.android.exoplayer.drm.StreamingDrmSessionManager$PostResponseHandler extends android.os.Handler {
final synthetic com.google.android.exoplayer.drm.StreamingDrmSessionManager this$0
public void <init> (com.google.android.exoplayer.drm.StreamingDrmSessionManager, android.os.Looper)
android.os.Looper looper
public void handleMessage (android.os.Message)
android.os.Message msg
}
com/google/android/exoplayer/drm/StreamingDrmSessionManager$MediaDrmHandler.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
com.google.android.exoplayer.drm.StreamingDrmSessionManager$MediaDrmHandler extends android.os.Handler {
final synthetic com.google.android.exoplayer.drm.StreamingDrmSessionManager this$0
public void <init> (com.google.android.exoplayer.drm.StreamingDrmSessionManager, android.os.Looper)
android.os.Looper looper
public void handleMessage (android.os.Message)
android.os.Message msg
}
com/google/android/exoplayer/drm/DrmSessionManager.class
DrmSessionManager.java
package com.google.android.exoplayer.drm
public abstract com.google.android.exoplayer.drm.DrmSessionManager extends java.lang.Object {
public static final int STATE_ERROR
public static final int STATE_CLOSED
public static final int STATE_OPENING
public static final int STATE_OPENED
public static final int STATE_OPENED_WITH_KEYS
public abstract void open (java.util.Map, java.lang.String)
public abstract void close ()
public abstract int getState ()
public abstract android.media.MediaCrypto getMediaCrypto ()
public abstract boolean requiresSecureDecoderComponent (java.lang.String)
public abstract java.lang.Exception getError ()
}
com/google/android/exoplayer/drm/StreamingDrmSessionManager$MediaDrmEventListener.class
StreamingDrmSessionManager.java
package com.google.android.exoplayer.drm
com.google.android.exoplayer.drm.StreamingDrmSessionManager$MediaDrmEventListener extends java.lang.Object implements android.media.MediaDrm$OnEventListener {
final synthetic com.google.android.exoplayer.drm.StreamingDrmSessionManager this$0
private void <init> (com.google.android.exoplayer.drm.StreamingDrmSessionManager)
public void onEvent (android.media.MediaDrm, byte[], int, int, byte[])
android.media.MediaDrm md
byte[] sessionId
int event
int extra
byte[] data
synthetic void <init> (com.google.android.exoplayer.drm.StreamingDrmSessionManager, com.google.android.exoplayer.drm.StreamingDrmSessionManager$1)
com.google.android.exoplayer.drm.StreamingDrmSessionManager x0
com.google.android.exoplayer.drm.StreamingDrmSessionManager$1 x1
}
com/google/android/exoplayer/chunk/
com/google/android/exoplayer/chunk/ChunkOperationHolder.class
ChunkOperationHolder.java
package com.google.android.exoplayer.chunk
public final com.google.android.exoplayer.chunk.ChunkOperationHolder extends java.lang.Object {
public int queueSize
public com.google.android.exoplayer.chunk.Chunk chunk
public void <init> ()
}
com/google/android/exoplayer/chunk/ChunkSource.class
ChunkSource.java
package com.google.android.exoplayer.chunk
public abstract com.google.android.exoplayer.chunk.ChunkSource extends java.lang.Object {
public abstract com.google.android.exoplayer.TrackInfo getTrackInfo ()
public abstract void getMaxVideoDimensions (com.google.android.exoplayer.MediaFormat)
public abstract void enable ()
public abstract void disable (java.util.List)
public abstract void continueBuffering (long)
public abstract void getChunkOperation (java.util.List, long, long, com.google.android.exoplayer.chunk.ChunkOperationHolder)
public abstract java.io.IOException getError ()
public abstract void onChunkLoadError (com.google.android.exoplayer.chunk.Chunk, java.lang.Exception)
}
com/google/android/exoplayer/chunk/FormatEvaluator$FixedEvaluator.class
FormatEvaluator.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.FormatEvaluator$FixedEvaluator extends java.lang.Object implements com.google.android.exoplayer.chunk.FormatEvaluator {
public void <init> ()
public void enable ()
public void disable ()
public void evaluate (java.util.List, long, com.google.android.exoplayer.chunk.Format[], com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation)
java.util.List queue
long playbackPositionUs
com.google.android.exoplayer.chunk.Format[] formats
com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation evaluation
}
com/google/android/exoplayer/chunk/MultiTrackChunkSource.class
MultiTrackChunkSource.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.MultiTrackChunkSource extends java.lang.Object implements com.google.android.exoplayer.chunk.ChunkSource com.google.android.exoplayer.ExoPlayer$ExoPlayerComponent {
public static final int MSG_SELECT_TRACK
private final com.google.android.exoplayer.chunk.ChunkSource[] allSources
private com.google.android.exoplayer.chunk.ChunkSource selectedSource
private boolean enabled
public transient void <init> (com.google.android.exoplayer.chunk.ChunkSource[])
com.google.android.exoplayer.chunk.ChunkSource[] sources
public void <init> (java.util.List)
java.util.List sources
public int getTrackCount ()
public com.google.android.exoplayer.TrackInfo getTrackInfo ()
public void enable ()
public void disable (java.util.List)
java.util.List queue
public void continueBuffering (long)
long playbackPositionUs
public void getChunkOperation (java.util.List, long, long, com.google.android.exoplayer.chunk.ChunkOperationHolder)
java.util.List queue
long seekPositionUs
long playbackPositionUs
com.google.android.exoplayer.chunk.ChunkOperationHolder out
public java.io.IOException getError ()
public void getMaxVideoDimensions (com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.MediaFormat out
public void handleMessage (int, java.lang.Object) throws com.google.android.exoplayer.ExoPlaybackException
int what
Object msg
public void onChunkLoadError (com.google.android.exoplayer.chunk.Chunk, java.lang.Exception)
com.google.android.exoplayer.chunk.Chunk chunk
Exception e
private static com.google.android.exoplayer.chunk.ChunkSource[] toChunkSourceArray (java.util.List)
java.util.List sources
com.google.android.exoplayer.chunk.ChunkSource[] chunkSourceArray
}
com/google/android/exoplayer/chunk/MediaChunk.class
MediaChunk.java
package com.google.android.exoplayer.chunk
public abstract com.google.android.exoplayer.chunk.MediaChunk extends com.google.android.exoplayer.chunk.Chunk {
public final long startTimeUs
public final long endTimeUs
public final int nextChunkIndex
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, int, long, long, int)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
int trigger
long startTimeUs
long endTimeUs
int nextChunkIndex
public final boolean isLastChunk ()
public abstract void seekToStart ()
public abstract boolean seekTo (long, boolean)
public abstract boolean prepare () throws com.google.android.exoplayer.ParserException
public abstract boolean sampleAvailable () throws com.google.android.exoplayer.ParserException
public abstract boolean read (com.google.android.exoplayer.SampleHolder) throws com.google.android.exoplayer.ParserException
public abstract com.google.android.exoplayer.MediaFormat getMediaFormat ()
public abstract java.util.Map getPsshInfo ()
}
com/google/android/exoplayer/chunk/ChunkSampleSource$3.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$3 extends java.lang.Object implements java.lang.Runnable {
final synthetic long val$bytesLoaded
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, long)
public void run ()
}
com/google/android/exoplayer/chunk/FormatEvaluator$AdaptiveEvaluator.class
FormatEvaluator.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.FormatEvaluator$AdaptiveEvaluator extends java.lang.Object implements com.google.android.exoplayer.chunk.FormatEvaluator {
public static final int DEFAULT_MAX_INITIAL_BITRATE
public static final int DEFAULT_MIN_DURATION_FOR_QUALITY_INCREASE_MS
public static final int DEFAULT_MAX_DURATION_FOR_QUALITY_DECREASE_MS
public static final int DEFAULT_MIN_DURATION_TO_RETAIN_AFTER_DISCARD_MS
public static final float DEFAULT_BANDWIDTH_FRACTION
private final com.google.android.exoplayer.upstream.BandwidthMeter bandwidthMeter
private final int maxInitialBitrate
private final long minDurationForQualityIncreaseUs
private final long maxDurationForQualityDecreaseUs
private final long minDurationToRetainAfterDiscardUs
private final float bandwidthFraction
public void <init> (com.google.android.exoplayer.upstream.BandwidthMeter)
com.google.android.exoplayer.upstream.BandwidthMeter bandwidthMeter
public void <init> (com.google.android.exoplayer.upstream.BandwidthMeter, int, int, int, int, float)
com.google.android.exoplayer.upstream.BandwidthMeter bandwidthMeter
int maxInitialBitrate
int minDurationForQualityIncreaseMs
int maxDurationForQualityDecreaseMs
int minDurationToRetainAfterDiscardMs
float bandwidthFraction
public void enable ()
public void disable ()
public void evaluate (java.util.List, long, com.google.android.exoplayer.chunk.Format[], com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation)
com.google.android.exoplayer.chunk.MediaChunk thisChunk
long durationBeforeThisSegmentUs
int i
java.util.List queue
long playbackPositionUs
com.google.android.exoplayer.chunk.Format[] formats
com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation evaluation
long bufferedDurationUs
com.google.android.exoplayer.chunk.Format current
com.google.android.exoplayer.chunk.Format ideal
boolean isHigher
boolean isLower
protected com.google.android.exoplayer.chunk.Format determineIdealFormat (com.google.android.exoplayer.chunk.Format[], long)
com.google.android.exoplayer.chunk.Format format
int i
com.google.android.exoplayer.chunk.Format[] formats
long bitrateEstimate
long effectiveBitrate
protected long computeEffectiveBitrateEstimate (long)
long bitrateEstimate
}
com/google/android/exoplayer/chunk/ChunkSampleSource$EventListener.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
public abstract com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener extends java.lang.Object {
public abstract void onLoadStarted (int, java.lang.String, int, boolean, int, int, long)
public abstract void onLoadCompleted (int, long)
public abstract void onLoadCanceled (int, long)
public abstract void onUpstreamDiscarded (int, int, int, long)
public abstract void onUpstreamError (int, java.io.IOException)
public abstract void onConsumptionError (int, java.io.IOException)
public abstract void onDownstreamDiscarded (int, int, int, long)
public abstract void onDownstreamFormatChanged (int, java.lang.String, int, int)
}
com/google/android/exoplayer/chunk/Mp4MediaChunk.class
Mp4MediaChunk.java
package com.google.android.exoplayer.chunk
public final com.google.android.exoplayer.chunk.Mp4MediaChunk extends com.google.android.exoplayer.chunk.MediaChunk {
private final com.google.android.exoplayer.parser.Extractor extractor
private final boolean maybeSelfContained
private final long sampleOffsetUs
private boolean prepared
private com.google.android.exoplayer.MediaFormat mediaFormat
private java.util.Map psshInfo
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, int, long, long, int, com.google.android.exoplayer.parser.Extractor, boolean, long)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
int trigger
long startTimeUs
long endTimeUs
int nextChunkIndex
com.google.android.exoplayer.parser.Extractor extractor
boolean maybeSelfContained
long sampleOffsetUs
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, int, long, long, int, com.google.android.exoplayer.parser.Extractor, java.util.Map, boolean, long)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
int trigger
long startTimeUs
long endTimeUs
int nextChunkIndex
com.google.android.exoplayer.parser.Extractor extractor
java.util.Map psshInfo
boolean maybeSelfContained
long sampleOffsetUs
public void seekToStart ()
public boolean seekTo (long, boolean)
long positionUs
boolean allowNoop
long seekTimeUs
boolean isDiscontinuous
public boolean prepare () throws com.google.android.exoplayer.ParserException
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
java.util.Map extractorPsshInfo
public boolean sampleAvailable () throws com.google.android.exoplayer.ParserException
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
public boolean read (com.google.android.exoplayer.SampleHolder) throws com.google.android.exoplayer.ParserException
com.google.android.exoplayer.SampleHolder holder
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int result
boolean sampleRead
public com.google.android.exoplayer.MediaFormat getMediaFormat ()
public java.util.Map getPsshInfo ()
}
com/google/android/exoplayer/chunk/FormatEvaluator$RandomEvaluator.class
FormatEvaluator.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.FormatEvaluator$RandomEvaluator extends java.lang.Object implements com.google.android.exoplayer.chunk.FormatEvaluator {
private final java.util.Random random
public void <init> ()
public void enable ()
public void disable ()
public void evaluate (java.util.List, long, com.google.android.exoplayer.chunk.Format[], com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation)
java.util.List queue
long playbackPositionUs
com.google.android.exoplayer.chunk.Format[] formats
com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation evaluation
com.google.android.exoplayer.chunk.Format newFormat
}
com/google/android/exoplayer/chunk/FormatEvaluator.class
FormatEvaluator.java
package com.google.android.exoplayer.chunk
public abstract com.google.android.exoplayer.chunk.FormatEvaluator extends java.lang.Object {
public static final int TRIGGER_INITIAL
public static final int TRIGGER_MANUAL
public static final int TRIGGER_ADAPTIVE
public static final int TRIGGER_CUSTOM_BASE
public abstract void enable ()
public abstract void disable ()
public abstract void evaluate (java.util.List, long, com.google.android.exoplayer.chunk.Format[], com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation)
}
com/google/android/exoplayer/chunk/SingleSampleChunkSource.class
SingleSampleChunkSource.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.SingleSampleChunkSource extends java.lang.Object implements com.google.android.exoplayer.chunk.ChunkSource {
private final com.google.android.exoplayer.upstream.DataSource dataSource
private final com.google.android.exoplayer.upstream.DataSpec dataSpec
private final com.google.android.exoplayer.chunk.Format format
private final long durationUs
private final com.google.android.exoplayer.MediaFormat mediaFormat
private final com.google.android.exoplayer.TrackInfo trackInfo
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, long, com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
long durationUs
com.google.android.exoplayer.MediaFormat mediaFormat
public com.google.android.exoplayer.TrackInfo getTrackInfo ()
public void getMaxVideoDimensions (com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.MediaFormat out
public void enable ()
public void continueBuffering (long)
long playbackPositionUs
public void getChunkOperation (java.util.List, long, long, com.google.android.exoplayer.chunk.ChunkOperationHolder)
java.util.List queue
long seekPositionUs
long playbackPositionUs
com.google.android.exoplayer.chunk.ChunkOperationHolder out
public void disable (java.util.List)
java.util.List queue
public java.io.IOException getError ()
public void onChunkLoadError (com.google.android.exoplayer.chunk.Chunk, java.lang.Exception)
com.google.android.exoplayer.chunk.Chunk chunk
Exception e
private com.google.android.exoplayer.chunk.SingleSampleMediaChunk initChunk ()
}
com/google/android/exoplayer/chunk/Format$DecreasingBandwidthComparator.class
Format.java
package com.google.android.exoplayer.chunk
public final com.google.android.exoplayer.chunk.Format$DecreasingBandwidthComparator extends java.lang.Object implements java.util.Comparator {
public void <init> ()
public int compare (com.google.android.exoplayer.chunk.Format, com.google.android.exoplayer.chunk.Format)
com.google.android.exoplayer.chunk.Format a
com.google.android.exoplayer.chunk.Format b
public volatile synthetic int compare (java.lang.Object, java.lang.Object)
Object x0
Object x1
}
com/google/android/exoplayer/chunk/ChunkSampleSource$5.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$5 extends java.lang.Object implements java.lang.Runnable {
final synthetic java.io.IOException val$e
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, java.io.IOException)
public void run ()
}
com/google/android/exoplayer/chunk/Chunk.class
Chunk.java
package com.google.android.exoplayer.chunk
public abstract com.google.android.exoplayer.chunk.Chunk extends java.lang.Object implements com.google.android.exoplayer.upstream.Loader$Loadable {
public final com.google.android.exoplayer.chunk.Format format
public final int trigger
private final com.google.android.exoplayer.upstream.DataSource dataSource
private final com.google.android.exoplayer.upstream.DataSpec dataSpec
private com.google.android.exoplayer.upstream.DataSourceStream dataSourceStream
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, int)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
int trigger
public final void init (com.google.android.exoplayer.upstream.Allocator)
com.google.android.exoplayer.upstream.Allocator allocator
public final void release ()
public final long getLength ()
public final boolean isReadFinished ()
public final boolean isLoadFinished ()
public final long bytesLoaded ()
public final void consume () throws java.io.IOException
protected void consumeStream (com.google.android.exoplayer.upstream.NonBlockingInputStream) throws java.io.IOException
com.google.android.exoplayer.upstream.NonBlockingInputStream stream
protected final com.google.android.exoplayer.upstream.NonBlockingInputStream getNonBlockingInputStream ()
protected final void resetReadPosition ()
public final void cancelLoad ()
public final boolean isLoadCanceled ()
public final void load () throws java.io.IOException java.lang.InterruptedException
}
com/google/android/exoplayer/chunk/ChunkSampleSource$7.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$7 extends java.lang.Object implements java.lang.Runnable {
final synthetic String val$formatId
final synthetic int val$trigger
final synthetic long val$positionUs
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, java.lang.String, int, long)
public void run ()
}
com/google/android/exoplayer/chunk/FormatEvaluator$Evaluation.class
FormatEvaluator.java
package com.google.android.exoplayer.chunk
public final com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation extends java.lang.Object {
public int queueSize
public int trigger
public com.google.android.exoplayer.chunk.Format format
public void <init> ()
}
com/google/android/exoplayer/chunk/ChunkSampleSource$4.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$4 extends java.lang.Object implements java.lang.Runnable {
final synthetic java.io.IOException val$e
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, java.io.IOException)
public void run ()
}
com/google/android/exoplayer/chunk/ChunkSampleSource.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.ChunkSampleSource extends java.lang.Object implements com.google.android.exoplayer.SampleSource com.google.android.exoplayer.upstream.Loader$Callback {
public static final int DEFAULT_MIN_LOADABLE_RETRY_COUNT
private static final int STATE_UNPREPARED
private static final int STATE_PREPARED
private static final int STATE_ENABLED
private static final int NO_RESET_PENDING
private final int eventSourceId
private final com.google.android.exoplayer.LoadControl loadControl
private final com.google.android.exoplayer.chunk.ChunkSource chunkSource
private final com.google.android.exoplayer.chunk.ChunkOperationHolder currentLoadableHolder
private final java.util.LinkedList mediaChunks
private final java.util.List readOnlyMediaChunks
private final int bufferSizeContribution
private final boolean frameAccurateSeeking
private final android.os.Handler eventHandler
private final com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener eventListener
private final int minLoadableRetryCount
private int state
private long downstreamPositionUs
private long lastSeekPositionUs
private long pendingResetPositionUs
private long lastPerformedBufferOperation
private boolean pendingDiscontinuity
private com.google.android.exoplayer.upstream.Loader loader
private java.io.IOException currentLoadableException
private boolean currentLoadableExceptionFatal
private int currentLoadableExceptionCount
private long currentLoadableExceptionTimestamp
private com.google.android.exoplayer.MediaFormat downstreamMediaFormat
private volatile com.google.android.exoplayer.chunk.Format downstreamFormat
public void <init> (com.google.android.exoplayer.chunk.ChunkSource, com.google.android.exoplayer.LoadControl, int, boolean)
com.google.android.exoplayer.chunk.ChunkSource chunkSource
com.google.android.exoplayer.LoadControl loadControl
int bufferSizeContribution
boolean frameAccurateSeeking
public void <init> (com.google.android.exoplayer.chunk.ChunkSource, com.google.android.exoplayer.LoadControl, int, boolean, android.os.Handler, com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener, int)
com.google.android.exoplayer.chunk.ChunkSource chunkSource
com.google.android.exoplayer.LoadControl loadControl
int bufferSizeContribution
boolean frameAccurateSeeking
android.os.Handler eventHandler
com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener eventListener
int eventSourceId
public void <init> (com.google.android.exoplayer.chunk.ChunkSource, com.google.android.exoplayer.LoadControl, int, boolean, android.os.Handler, com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener, int, int)
com.google.android.exoplayer.chunk.ChunkSource chunkSource
com.google.android.exoplayer.LoadControl loadControl
int bufferSizeContribution
boolean frameAccurateSeeking
android.os.Handler eventHandler
com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener eventListener
int eventSourceId
int minLoadableRetryCount
public com.google.android.exoplayer.chunk.Format getFormat ()
public boolean prepare ()
public int getTrackCount ()
public com.google.android.exoplayer.TrackInfo getTrackInfo (int)
int track
public void enable (int, long)
int track
long positionUs
public void disable (int)
int track
public boolean continueBuffering (long) throws java.io.IOException
long positionUs
boolean haveSamples
public int readData (int, long, com.google.android.exoplayer.MediaFormatHolder, com.google.android.exoplayer.SampleHolder, boolean) throws java.io.IOException
java.io.IOException chunkSourceException
java.io.IOException chunkSourceException
int track
long positionUs
com.google.android.exoplayer.MediaFormatHolder formatHolder
com.google.android.exoplayer.SampleHolder sampleHolder
boolean onlyReadDiscontinuity
com.google.android.exoplayer.chunk.MediaChunk mediaChunk
com.google.android.exoplayer.MediaFormat mediaFormat
public void seekToUs (long)
long positionUs
com.google.android.exoplayer.chunk.MediaChunk mediaChunk
private void maybeThrowLoadableException () throws java.io.IOException
private com.google.android.exoplayer.chunk.MediaChunk getMediaChunk (long)
com.google.android.exoplayer.chunk.MediaChunk mediaChunk
long positionUs
java.util.Iterator mediaChunkIterator
public long getBufferedPositionUs ()
long chunkLength
com.google.android.exoplayer.chunk.MediaChunk mediaChunk
com.google.android.exoplayer.chunk.Chunk currentLoadable
public void release ()
public void onLoadCompleted (com.google.android.exoplayer.upstream.Loader$Loadable)
java.io.IOException e
com.google.android.exoplayer.upstream.Loader$Loadable loadable
com.google.android.exoplayer.chunk.Chunk currentLoadable
public void onLoadCanceled (com.google.android.exoplayer.upstream.Loader$Loadable)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
com.google.android.exoplayer.chunk.Chunk currentLoadable
public void onLoadError (com.google.android.exoplayer.upstream.Loader$Loadable, java.io.IOException)
com.google.android.exoplayer.upstream.Loader$Loadable loadable
java.io.IOException e
protected void onSampleRead (com.google.android.exoplayer.chunk.MediaChunk, com.google.android.exoplayer.SampleHolder)
com.google.android.exoplayer.chunk.MediaChunk mediaChunk
com.google.android.exoplayer.SampleHolder sampleHolder
private void restartFrom (long)
long positionUs
private void clearMediaChunks ()
private void clearCurrentLoadable ()
private void updateLoadControl ()
boolean chunksDiscarded
long elapsedMillis
long now
long nextLoadPositionUs
boolean isBackedOff
boolean loadingOrBackedOff
boolean nextLoader
private long getNextLoadPositionUs ()
com.google.android.exoplayer.chunk.MediaChunk lastMediaChunk
private void resumeFromBackOff ()
com.google.android.exoplayer.chunk.Chunk backedOffChunk
com.google.android.exoplayer.chunk.MediaChunk removedChunk
private void maybeStartLoading ()
com.google.android.exoplayer.chunk.MediaChunk mediaChunk
com.google.android.exoplayer.chunk.Chunk currentLoadable
private void discardDownstreamMediaChunks (com.google.android.exoplayer.chunk.MediaChunk)
com.google.android.exoplayer.chunk.MediaChunk removed
com.google.android.exoplayer.chunk.MediaChunk untilChunk
long totalBytes
long startTimeUs
long endTimeUs
private void discardDownstreamMediaChunk ()
com.google.android.exoplayer.chunk.MediaChunk removed
long totalBytes
private boolean discardUpstreamMediaChunks (int)
com.google.android.exoplayer.chunk.MediaChunk removed
int queueLength
long totalBytes
long startTimeUs
long endTimeUs
private boolean isMediaChunk (com.google.android.exoplayer.chunk.Chunk)
com.google.android.exoplayer.chunk.Chunk chunk
private boolean isPendingReset ()
private long getRetryDelayMillis (long)
long errorCount
protected final int usToMs (long)
long timeUs
private void notifyLoadStarted (java.lang.String, int, boolean, long, long, long)
String formatId
int trigger
boolean isInitialization
long mediaStartTimeUs
long mediaEndTimeUs
long length
private void notifyLoadCompleted (long)
long bytesLoaded
private void notifyLoadCanceled (long)
long bytesLoaded
private void notifyUpstreamError (java.io.IOException)
java.io.IOException e
private void notifyConsumptionError (java.io.IOException)
java.io.IOException e
private void notifyUpstreamDiscarded (long, long, long)
long mediaStartTimeUs
long mediaEndTimeUs
long totalBytes
private void notifyDownstreamFormatChanged (java.lang.String, int, long)
String formatId
int trigger
long positionUs
private void notifyDownstreamDiscarded (long, long, long)
long mediaStartTimeUs
long mediaEndTimeUs
long bytesDiscarded
static synthetic int access$000 (com.google.android.exoplayer.chunk.ChunkSampleSource)
com.google.android.exoplayer.chunk.ChunkSampleSource x0
static synthetic com.google.android.exoplayer.chunk.ChunkSampleSource$EventListener access$100 (com.google.android.exoplayer.chunk.ChunkSampleSource)
com.google.android.exoplayer.chunk.ChunkSampleSource x0
}
com/google/android/exoplayer/chunk/ChunkSampleSource$1.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$1 extends java.lang.Object implements java.lang.Runnable {
final synthetic String val$formatId
final synthetic int val$trigger
final synthetic boolean val$isInitialization
final synthetic long val$mediaStartTimeUs
final synthetic long val$mediaEndTimeUs
final synthetic long val$length
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, java.lang.String, int, boolean, long, long, long)
public void run ()
}
com/google/android/exoplayer/chunk/ChunkSampleSource$6.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$6 extends java.lang.Object implements java.lang.Runnable {
final synthetic long val$mediaStartTimeUs
final synthetic long val$mediaEndTimeUs
final synthetic long val$totalBytes
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, long, long, long)
public void run ()
}
com/google/android/exoplayer/chunk/SingleSampleMediaChunk.class
SingleSampleMediaChunk.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.SingleSampleMediaChunk extends com.google.android.exoplayer.chunk.MediaChunk {
public final byte[] headerData
private final com.google.android.exoplayer.MediaFormat sampleFormat
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, int, long, long, int, com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
int trigger
long startTimeUs
long endTimeUs
int nextChunkIndex
com.google.android.exoplayer.MediaFormat sampleFormat
public void <init> (com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.upstream.DataSpec, com.google.android.exoplayer.chunk.Format, int, long, long, int, com.google.android.exoplayer.MediaFormat, byte[])
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.upstream.DataSpec dataSpec
com.google.android.exoplayer.chunk.Format format
int trigger
long startTimeUs
long endTimeUs
int nextChunkIndex
com.google.android.exoplayer.MediaFormat sampleFormat
byte[] headerData
public boolean prepare ()
public boolean sampleAvailable ()
public boolean read (com.google.android.exoplayer.SampleHolder)
int bytesRead
com.google.android.exoplayer.SampleHolder holder
com.google.android.exoplayer.upstream.NonBlockingInputStream inputStream
int bytesLoaded
int sampleSize
int bytesRead
public void seekToStart ()
public boolean seekTo (long, boolean)
long positionUs
boolean allowNoop
public com.google.android.exoplayer.MediaFormat getMediaFormat ()
public java.util.Map getPsshInfo ()
}
com/google/android/exoplayer/chunk/Format.class
Format.java
package com.google.android.exoplayer.chunk
public com.google.android.exoplayer.chunk.Format extends java.lang.Object {
public final String id
public final String mimeType
public final String codecs
public final int width
public final int height
public final int numChannels
public final int audioSamplingRate
public final int bitrate
public final String language
public final int bandwidth
public void <init> (java.lang.String, java.lang.String, int, int, int, int, int)
String id
String mimeType
int width
int height
int numChannels
int audioSamplingRate
int bitrate
public void <init> (java.lang.String, java.lang.String, int, int, int, int, int, java.lang.String)
String id
String mimeType
int width
int height
int numChannels
int audioSamplingRate
int bitrate
String language
public void <init> (java.lang.String, java.lang.String, int, int, int, int, int, java.lang.String, java.lang.String)
String id
String mimeType
int width
int height
int numChannels
int audioSamplingRate
int bitrate
String language
String codecs
public int hashCode ()
public boolean equals (java.lang.Object)
Object obj
com.google.android.exoplayer.chunk.Format other
}
com/google/android/exoplayer/chunk/ChunkSampleSource$2.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$2 extends java.lang.Object implements java.lang.Runnable {
final synthetic long val$bytesLoaded
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, long)
public void run ()
}
com/google/android/exoplayer/chunk/ChunkSampleSource$8.class
ChunkSampleSource.java
package com.google.android.exoplayer.chunk
com.google.android.exoplayer.chunk.ChunkSampleSource$8 extends java.lang.Object implements java.lang.Runnable {
final synthetic long val$mediaStartTimeUs
final synthetic long val$mediaEndTimeUs
final synthetic long val$bytesDiscarded
final synthetic com.google.android.exoplayer.chunk.ChunkSampleSource this$0
void <init> (com.google.android.exoplayer.chunk.ChunkSampleSource, long, long, long)
public void run ()
}
com/google/android/exoplayer/smoothstreaming/
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser$StreamElementParser.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$StreamElementParser extends com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser {
public static final String TAG
private static final String TAG_STREAM_FRAGMENT
private static final String KEY_TYPE
private static final String KEY_TYPE_AUDIO
private static final String KEY_TYPE_VIDEO
private static final String KEY_TYPE_TEXT
private static final String KEY_SUB_TYPE
private static final String KEY_NAME
private static final String KEY_QUALITY_LEVELS
private static final String KEY_URL
private static final String KEY_MAX_WIDTH
private static final String KEY_MAX_HEIGHT
private static final String KEY_DISPLAY_WIDTH
private static final String KEY_DISPLAY_HEIGHT
private static final String KEY_LANGUAGE
private static final String KEY_TIME_SCALE
private static final String KEY_FRAGMENT_DURATION
private static final String KEY_FRAGMENT_START_TIME
private static final String KEY_FRAGMENT_REPEAT_COUNT
private final android.net.Uri baseUri
private final java.util.List tracks
private int type
private String subType
private long timescale
private String name
private int qualityLevels
private String url
private int maxWidth
private int maxHeight
private int displayWidth
private int displayHeight
private String language
private java.util.ArrayList startTimes
private long lastChunkDuration
public void <init> (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser, android.net.Uri)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
android.net.Uri baseUri
public boolean handleChildInline (java.lang.String)
String tag
public void parseStartTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser parser
private void parseStreamFragmentStartTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
int i
org.xmlpull.v1.XmlPullParser parser
int chunkIndex
long startTime
long repeatCount
private void parseStreamElementStartTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser parser
private int parseType (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser parser
String value
public void addChild (java.lang.Object)
Object child
public java.lang.Object build ()
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement[] trackElements
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifest$StreamElement.class
SmoothStreamingManifest.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement extends java.lang.Object {
public static final int TYPE_UNKNOWN
public static final int TYPE_AUDIO
public static final int TYPE_VIDEO
public static final int TYPE_TEXT
private static final String URL_PLACEHOLDER_START_TIME
private static final String URL_PLACEHOLDER_BITRATE
public final int type
public final String subType
public final long timescale
public final String name
public final int qualityLevels
public final int maxWidth
public final int maxHeight
public final int displayWidth
public final int displayHeight
public final String language
public final com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement[] tracks
public final int chunkCount
private final android.net.Uri baseUri
private final String chunkTemplate
private final java.util.List chunkStartTimes
private final long[] chunkStartTimesUs
private final long lastChunkDurationUs
public void <init> (android.net.Uri, java.lang.String, int, java.lang.String, long, java.lang.String, int, int, int, int, int, java.lang.String, com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement[], java.util.List, long)
android.net.Uri baseUri
String chunkTemplate
int type
String subType
long timescale
String name
int qualityLevels
int maxWidth
int maxHeight
int displayWidth
int displayHeight
String language
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement[] tracks
java.util.List chunkStartTimes
long lastChunkDuration
public int getChunkIndex (long)
long timeUs
public long getStartTimeUs (int)
int chunkIndex
public long getChunkDurationUs (int)
int chunkIndex
public android.net.Uri buildRequestUri (int, int)
int track
int chunkIndex
String chunkUrl
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingChunkSource.class
SmoothStreamingChunkSource.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingChunkSource extends java.lang.Object implements com.google.android.exoplayer.chunk.ChunkSource {
private static final int MINIMUM_MANIFEST_REFRESH_PERIOD_MS
private static final int INITIALIZATION_VECTOR_SIZE
private final com.google.android.exoplayer.util.ManifestFetcher manifestFetcher
private final int streamElementIndex
private final com.google.android.exoplayer.TrackInfo trackInfo
private final com.google.android.exoplayer.upstream.DataSource dataSource
private final com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
private final com.google.android.exoplayer.chunk.FormatEvaluator$Evaluation evaluation
private final long liveEdgeLatencyUs
private final int maxWidth
private final int maxHeight
private final android.util.SparseArray extractors
private final java.util.Map psshInfo
private final com.google.android.exoplayer.smoothstreaming.SmoothStreamingChunkSource$SmoothStreamingFormat[] formats
private com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest currentManifest
private int currentManifestChunkOffset
private boolean finishedCurrentManifest
private java.io.IOException fatalError
public void <init> (com.google.android.exoplayer.util.ManifestFetcher, int, int[], com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator, long)
com.google.android.exoplayer.util.ManifestFetcher manifestFetcher
int streamElementIndex
int[] trackIndices
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
long liveEdgeLatencyMs
public void <init> (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest, int, int[], com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest manifest
int streamElementIndex
int[] trackIndices
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
private void <init> (com.google.android.exoplayer.util.ManifestFetcher, com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest, int, int[], com.google.android.exoplayer.upstream.DataSource, com.google.android.exoplayer.chunk.FormatEvaluator, long)
byte[] keyId
int trackIndex
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement trackElement
com.google.android.exoplayer.MediaFormat mediaFormat
int trackType
com.google.android.exoplayer.parser.mp4.FragmentedMp4Extractor extractor
int i
com.google.android.exoplayer.util.ManifestFetcher manifestFetcher
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest initialManifest
int streamElementIndex
int[] trackIndices
com.google.android.exoplayer.upstream.DataSource dataSource
com.google.android.exoplayer.chunk.FormatEvaluator formatEvaluator
long liveEdgeLatencyMs
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement streamElement
com.google.android.exoplayer.parser.mp4.TrackEncryptionBox[] trackEncryptionBoxes
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$ProtectionElement protectionElement
int trackCount
int maxWidth
int maxHeight
public final void getMaxVideoDimensions (com.google.android.exoplayer.MediaFormat)
com.google.android.exoplayer.MediaFormat out
public final com.google.android.exoplayer.TrackInfo getTrackInfo ()
public void enable ()
public void disable (java.util.List)
java.util.List queue
public void continueBuffering (long)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement currentElement
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement newElement
long playbackPositionUs
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest newManifest
public final void getChunkOperation (java.util.List, long, long, com.google.android.exoplayer.chunk.ChunkOperationHolder)
int chunkIndex
java.util.List queue
long seekPositionUs
long playbackPositionUs
com.google.android.exoplayer.chunk.ChunkOperationHolder out
com.google.android.exoplayer.smoothstreaming.SmoothStreamingChunkSource$SmoothStreamingFormat selectedFormat
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement streamElement
int chunkIndex
boolean isLastChunk
long chunkStartTimeUs
long nextChunkStartTimeUs
int currentAbsoluteChunkIndex
android.net.Uri uri
com.google.android.exoplayer.chunk.Chunk mediaChunk
public java.io.IOException getError ()
public void onChunkLoadError (com.google.android.exoplayer.chunk.Chunk, java.lang.Exception)
com.google.android.exoplayer.chunk.Chunk chunk
Exception e
private long getLiveSeekPosition ()
long elementLiveEdgeTimestampUs
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement streamElement
int i
long liveEdgeTimestampUs
private com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement getElement (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest manifest
private static com.google.android.exoplayer.MediaFormat getMediaFormat (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement, int)
com.google.android.exoplayer.MediaFormat format
java.util.List csd
java.util.List csd
com.google.android.exoplayer.MediaFormat format
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement streamElement
int trackIndex
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement trackElement
String mimeType
private static com.google.android.exoplayer.chunk.MediaChunk newMediaChunk (com.google.android.exoplayer.chunk.Format, android.net.Uri, java.lang.String, com.google.android.exoplayer.parser.Extractor, java.util.Map, com.google.android.exoplayer.upstream.DataSource, int, boolean, long, long, int)
com.google.android.exoplayer.chunk.Format formatInfo
android.net.Uri uri
String cacheKey
com.google.android.exoplayer.parser.Extractor extractor
java.util.Map psshInfo
com.google.android.exoplayer.upstream.DataSource dataSource
int chunkIndex
boolean isLast
long chunkStartTimeUs
long nextChunkStartTimeUs
int trigger
int nextChunkIndex
long nextStartTimeUs
long offset
com.google.android.exoplayer.upstream.DataSpec dataSpec
private static byte[] getKeyId (byte[])
int i
byte[] initData
StringBuilder initDataStringBuilder
String initDataString
String keyIdString
byte[] keyId
private static void swap (byte[], int, int)
byte[] data
int firstPosition
int secondPosition
byte temp
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser$ElementParser.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
abstract com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser extends java.lang.Object {
private final android.net.Uri baseUri
private final String tag
private final com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
private final java.util.List normalizedAttributes
public void <init> (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser, android.net.Uri, java.lang.String)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
android.net.Uri baseUri
String tag
public final java.lang.Object parse (org.xmlpull.v1.XmlPullParser) throws org.xmlpull.v1.XmlPullParserException java.io.IOException com.google.android.exoplayer.ParserException
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser childElementParser
int eventType
org.xmlpull.v1.XmlPullParser xmlParser
String tagName
boolean foundStartTag
int skippingElementDepth
private com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser newChildParser (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser, java.lang.String, android.net.Uri)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
String name
android.net.Uri baseUri
protected final void putNormalizedAttribute (java.lang.String, java.lang.Object)
String key
Object value
protected final java.lang.Object getNormalizedAttribute (java.lang.String)
android.util.Pair pair
int i
String key
protected boolean handleChildInline (java.lang.String)
String tagName
protected void parseStartTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser xmlParser
protected void parseText (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser xmlParser
protected void parseEndTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser xmlParser
protected void addChild (java.lang.Object)
Object parsedChild
protected abstract java.lang.Object build ()
protected final java.lang.String parseRequiredString (org.xmlpull.v1.XmlPullParser, java.lang.String) throws com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$MissingFieldException
org.xmlpull.v1.XmlPullParser parser
String key
String value
protected final int parseInt (org.xmlpull.v1.XmlPullParser, java.lang.String, int) throws com.google.android.exoplayer.ParserException
NumberFormatException e
org.xmlpull.v1.XmlPullParser parser
String key
int defaultValue
String value
protected final int parseRequiredInt (org.xmlpull.v1.XmlPullParser, java.lang.String) throws com.google.android.exoplayer.ParserException
NumberFormatException e
org.xmlpull.v1.XmlPullParser parser
String key
String value
protected final long parseLong (org.xmlpull.v1.XmlPullParser, java.lang.String, long) throws com.google.android.exoplayer.ParserException
NumberFormatException e
org.xmlpull.v1.XmlPullParser parser
String key
long defaultValue
String value
protected final long parseRequiredLong (org.xmlpull.v1.XmlPullParser, java.lang.String) throws com.google.android.exoplayer.ParserException
NumberFormatException e
org.xmlpull.v1.XmlPullParser parser
String key
String value
protected final boolean parseBoolean (org.xmlpull.v1.XmlPullParser, java.lang.String, boolean)
org.xmlpull.v1.XmlPullParser parser
String key
boolean defaultValue
String value
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser$ProtectionElementParser.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ProtectionElementParser extends com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser {
public static final String TAG
public static final String TAG_PROTECTION_HEADER
public static final String KEY_SYSTEM_ID
private boolean inProtectionHeader
private java.util.UUID uuid
private byte[] initData
public void <init> (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser, android.net.Uri)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
android.net.Uri baseUri
public boolean handleChildInline (java.lang.String)
String tag
public void parseStartTag (org.xmlpull.v1.XmlPullParser)
String uuidString
org.xmlpull.v1.XmlPullParser parser
public void parseText (org.xmlpull.v1.XmlPullParser)
org.xmlpull.v1.XmlPullParser parser
public void parseEndTag (org.xmlpull.v1.XmlPullParser)
org.xmlpull.v1.XmlPullParser parser
public java.lang.Object build ()
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser$SmoothStreamMediaParser.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$SmoothStreamMediaParser extends com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser {
public static final String TAG
private static final String KEY_MAJOR_VERSION
private static final String KEY_MINOR_VERSION
private static final String KEY_TIME_SCALE
private static final String KEY_DVR_WINDOW_LENGTH
private static final String KEY_DURATION
private static final String KEY_LOOKAHEAD_COUNT
private static final String KEY_IS_LIVE
private int majorVersion
private int minorVersion
private long timescale
private long duration
private long dvrWindowLength
private int lookAheadCount
private boolean isLive
private com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$ProtectionElement protectionElement
private java.util.List streamElements
public void <init> (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser, android.net.Uri)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
android.net.Uri baseUri
public void parseStartTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser parser
public void addChild (java.lang.Object)
Object child
public java.lang.Object build ()
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement[] streamElementArray
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifest$ProtectionElement.class
SmoothStreamingManifest.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$ProtectionElement extends java.lang.Object {
public final java.util.UUID uuid
public final byte[] data
public void <init> (java.util.UUID, byte[])
java.util.UUID uuid
byte[] data
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingChunkSource$SmoothStreamingFormat.class
SmoothStreamingChunkSource.java
package com.google.android.exoplayer.smoothstreaming
final com.google.android.exoplayer.smoothstreaming.SmoothStreamingChunkSource$SmoothStreamingFormat extends com.google.android.exoplayer.chunk.Format {
public final int trackIndex
public void <init> (java.lang.String, java.lang.String, int, int, int, int, int, int)
String id
String mimeType
int width
int height
int numChannels
int audioSamplingRate
int bitrate
int trackIndex
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser$TrackElementParser.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$TrackElementParser extends com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser {
public static final String TAG
private static final String KEY_INDEX
private static final String KEY_BITRATE
private static final String KEY_CODEC_PRIVATE_DATA
private static final String KEY_SAMPLING_RATE
private static final String KEY_CHANNELS
private static final String KEY_BITS_PER_SAMPLE
private static final String KEY_PACKET_SIZE
private static final String KEY_AUDIO_TAG
private static final String KEY_FOUR_CC
private static final String KEY_NAL_UNIT_LENGTH_FIELD
private static final String KEY_TYPE
private static final String KEY_MAX_WIDTH
private static final String KEY_MAX_HEIGHT
private final java.util.List csd
private int index
private int bitrate
private String mimeType
private int profile
private int level
private int maxWidth
private int maxHeight
private int samplingRate
private int channels
private int packetSize
private int audioTag
private int bitPerSample
private int nalUnitLengthField
private String content
public void <init> (com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser, android.net.Uri)
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$ElementParser parent
android.net.Uri baseUri
public void parseStartTag (org.xmlpull.v1.XmlPullParser) throws com.google.android.exoplayer.ParserException
String fourCC
android.util.Pair spsParameters
int i
byte[] codecPrivateData
byte[][] split
org.xmlpull.v1.XmlPullParser parser
int type
String value
public void parseText (org.xmlpull.v1.XmlPullParser)
org.xmlpull.v1.XmlPullParser parser
public java.lang.Object build ()
byte[][] csdArray
private static java.lang.String fourCCToMimeType (java.lang.String)
String fourCC
private static byte[] hexStringToByteArray (java.lang.String)
int stringOffset
int i
String hexString
int length
byte[] data
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifest$TrackElement.class
SmoothStreamingManifest.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$TrackElement extends java.lang.Object {
public final int index
public final int bitrate
public final byte[][] csd
public final int profile
public final int level
public final String mimeType
public final int maxWidth
public final int maxHeight
public final int sampleRate
public final int numChannels
public final int packetSize
public final int audioTag
public final int bitPerSample
public final int nalUnitLengthField
public final String content
public void <init> (int, int, java.lang.String, byte[][], int, int, int, int, int, int, int, int, int, int, java.lang.String)
int index
int bitrate
String mimeType
byte[][] csd
int profile
int level
int maxWidth
int maxHeight
int sampleRate
int channels
int packetSize
int audioTag
int bitPerSample
int nalUnitLengthField
String content
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser extends java.lang.Object implements com.google.android.exoplayer.util.ManifestParser {
private final org.xmlpull.v1.XmlPullParserFactory xmlParserFactory
public void <init> ()
org.xmlpull.v1.XmlPullParserException e
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException com.google.android.exoplayer.ParserException
org.xmlpull.v1.XmlPullParser xmlParser
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$SmoothStreamMediaParser smoothStreamMediaParser
org.xmlpull.v1.XmlPullParserException e
java.io.InputStream inputStream
String inputEncoding
String contentId
android.net.Uri baseUri
public volatile synthetic java.lang.Object parse (java.io.InputStream, java.lang.String, java.lang.String, android.net.Uri) throws java.io.IOException com.google.android.exoplayer.ParserException
java.io.InputStream x0
String x1
String x2
android.net.Uri x3
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifestParser$MissingFieldException.class
SmoothStreamingManifestParser.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifestParser$MissingFieldException extends com.google.android.exoplayer.ParserException {
public void <init> (java.lang.String)
String fieldName
}
com/google/android/exoplayer/smoothstreaming/SmoothStreamingManifest.class
SmoothStreamingManifest.java
package com.google.android.exoplayer.smoothstreaming
public com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest extends java.lang.Object {
public final int majorVersion
public final int minorVersion
public final int lookAheadCount
public final boolean isLive
public final com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$ProtectionElement protectionElement
public final com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement[] streamElements
public final long durationUs
public final long dvrWindowLengthUs
public void <init> (int, int, long, long, long, int, boolean, com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$ProtectionElement, com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement[])
int majorVersion
int minorVersion
long timescale
long duration
long dvrWindowLength
int lookAheadCount
boolean isLive
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$ProtectionElement protectionElement
com.google.android.exoplayer.smoothstreaming.SmoothStreamingManifest$StreamElement[] streamElements
}