Commit f1b37bc5 by Ian Baker Committed by GitHub

Merge pull request #10001 from google/dev-v2-r2.17.0

r2.17.0
parents 029a2b27 b3593e61
Showing with 1237 additions and 327 deletions

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
// limitations under the License. // limitations under the License.
project.ext { project.ext {
// ExoPlayer version and version code. // ExoPlayer version and version code.
releaseVersion = '2.16.1' releaseVersion = '2.17.0'
releaseVersionCode = 2016001 releaseVersionCode = 2_017_000
minSdkVersion = 16 minSdkVersion = 16
appTargetSdkVersion = 29 appTargetSdkVersion = 29
// Upgrading this requires [Internal ref: b/193254928] to be fixed, or some // Upgrading this requires [Internal ref: b/193254928] to be fixed, or some
...@@ -25,7 +25,7 @@ project.ext { ...@@ -25,7 +25,7 @@ project.ext {
junitVersion = '4.13.2' junitVersion = '4.13.2'
// Use the same Guava version as the Android repo: // Use the same Guava version as the Android repo:
// https://cs.android.com/android/platform/superproject/+/master:external/guava/METADATA // https://cs.android.com/android/platform/superproject/+/master:external/guava/METADATA
guavaVersion = '27.1-android' guavaVersion = '31.0.1-android'
mockitoVersion = '3.12.4' mockitoVersion = '3.12.4'
robolectricVersion = '4.6.1' robolectricVersion = '4.6.1'
// Keep this in sync with Google's internal Checker Framework version. // Keep this in sync with Google's internal Checker Framework version.
...@@ -37,6 +37,7 @@ project.ext { ...@@ -37,6 +37,7 @@ project.ext {
androidxAnnotationVersion = '1.3.0' androidxAnnotationVersion = '1.3.0'
androidxAppCompatVersion = '1.3.1' androidxAppCompatVersion = '1.3.1'
androidxCollectionVersion = '1.1.0' androidxCollectionVersion = '1.1.0'
androidxConstraintLayoutVersion = '2.0.4'
androidxCoreVersion = '1.7.0' androidxCoreVersion = '1.7.0'
androidxFuturesVersion = '1.1.0' androidxFuturesVersion = '1.1.0'
androidxMediaVersion = '1.4.3' androidxMediaVersion = '1.4.3'
......
...@@ -28,7 +28,6 @@ import com.google.android.exoplayer2.Timeline; ...@@ -28,7 +28,6 @@ import com.google.android.exoplayer2.Timeline;
import com.google.android.exoplayer2.TracksInfo; import com.google.android.exoplayer2.TracksInfo;
import com.google.android.exoplayer2.ext.cast.CastPlayer; import com.google.android.exoplayer2.ext.cast.CastPlayer;
import com.google.android.exoplayer2.ext.cast.SessionAvailabilityListener; import com.google.android.exoplayer2.ext.cast.SessionAvailabilityListener;
import com.google.android.exoplayer2.ui.PlayerView;
import com.google.android.exoplayer2.ui.StyledPlayerControlView; import com.google.android.exoplayer2.ui.StyledPlayerControlView;
import com.google.android.exoplayer2.ui.StyledPlayerView; import com.google.android.exoplayer2.ui.StyledPlayerView;
import com.google.android.gms.cast.framework.CastContext; import com.google.android.gms.cast.framework.CastContext;
...@@ -67,7 +66,7 @@ import java.util.ArrayList; ...@@ -67,7 +66,7 @@ import java.util.ArrayList;
* *
* @param context A {@link Context}. * @param context A {@link Context}.
* @param listener A {@link Listener} for queue position changes. * @param listener A {@link Listener} for queue position changes.
* @param playerView The {@link PlayerView} for playback. * @param playerView The {@link StyledPlayerView} for playback.
* @param castContext The {@link CastContext}. * @param castContext The {@link CastContext}.
*/ */
public PlayerManager( public PlayerManager(
...@@ -224,10 +223,12 @@ import java.util.ArrayList; ...@@ -224,10 +223,12 @@ import java.util.ArrayList;
if (currentPlayer != localPlayer || tracksInfo == lastSeenTrackGroupInfo) { if (currentPlayer != localPlayer || tracksInfo == lastSeenTrackGroupInfo) {
return; return;
} }
if (!tracksInfo.isTypeSupportedOrEmpty(C.TRACK_TYPE_VIDEO)) { if (!tracksInfo.isTypeSupportedOrEmpty(
C.TRACK_TYPE_VIDEO, /* allowExceedsCapabilities= */ true)) {
listener.onUnsupportedTrack(C.TRACK_TYPE_VIDEO); listener.onUnsupportedTrack(C.TRACK_TYPE_VIDEO);
} }
if (!tracksInfo.isTypeSupportedOrEmpty(C.TRACK_TYPE_AUDIO)) { if (!tracksInfo.isTypeSupportedOrEmpty(
C.TRACK_TYPE_AUDIO, /* allowExceedsCapabilities= */ true)) {
listener.onUnsupportedTrack(C.TRACK_TYPE_AUDIO); listener.onUnsupportedTrack(C.TRACK_TYPE_AUDIO);
} }
lastSeenTrackGroupInfo = tracksInfo; lastSeenTrackGroupInfo = tracksInfo;
......
...@@ -15,19 +15,19 @@ ...@@ -15,19 +15,19 @@
#extension GL_OES_EGL_image_external : require #extension GL_OES_EGL_image_external : require
precision mediump float; precision mediump float;
// External texture containing video decoder output. // External texture containing video decoder output.
uniform samplerExternalOES tex_sampler_0; uniform samplerExternalOES uTexSampler0;
// Texture containing the overlap bitmap. // Texture containing the overlap bitmap.
uniform sampler2D tex_sampler_1; uniform sampler2D uTexSampler1;
// Horizontal scaling factor for the overlap bitmap. // Horizontal scaling factor for the overlap bitmap.
uniform float scaleX; uniform float uScaleX;
// Vertical scaling factory for the overlap bitmap. // Vertical scaling factory for the overlap bitmap.
uniform float scaleY; uniform float uScaleY;
varying vec2 v_texcoord; varying vec2 vTexCoords;
void main() { void main() {
vec4 videoColor = texture2D(tex_sampler_0, v_texcoord); vec4 videoColor = texture2D(uTexSampler0, vTexCoords);
vec4 overlayColor = texture2D(tex_sampler_1, vec4 overlayColor = texture2D(uTexSampler1,
vec2(v_texcoord.x * scaleX, vec2(vTexCoords.x * uScaleX,
v_texcoord.y * scaleY)); vTexCoords.y * uScaleY));
// Blend the video decoder output and the overlay bitmap. // Blend the video decoder output and the overlay bitmap.
gl_FragColor = videoColor * (1.0 - overlayColor.a) gl_FragColor = videoColor * (1.0 - overlayColor.a)
+ overlayColor * overlayColor.a; + overlayColor * overlayColor.a;
......
...@@ -11,11 +11,11 @@ ...@@ -11,11 +11,11 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and // See the License for the specific language governing permissions and
// limitations under the License. // limitations under the License.
attribute vec4 a_position; attribute vec4 aFramePosition;
attribute vec4 a_texcoord; attribute vec4 aTexCoords;
uniform mat4 tex_transform; uniform mat4 uTexTransform;
varying vec2 v_texcoord; varying vec2 vTexCoords;
void main() { void main() {
gl_Position = a_position; gl_Position = aFramePosition;
v_texcoord = (tex_transform * a_texcoord).xy; vTexCoords = (uTexTransform * aTexCoords).xy;
} }
...@@ -26,7 +26,6 @@ import android.graphics.Paint; ...@@ -26,7 +26,6 @@ import android.graphics.Paint;
import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.BitmapDrawable;
import android.opengl.GLES20; import android.opengl.GLES20;
import android.opengl.GLUtils; import android.opengl.GLUtils;
import androidx.annotation.Nullable;
import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.util.GlUtil; import com.google.android.exoplayer2.util.GlUtil;
import java.io.IOException; import java.io.IOException;
...@@ -52,8 +51,6 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; ...@@ -52,8 +51,6 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
private final Canvas overlayCanvas; private final Canvas overlayCanvas;
private GlUtil.@MonotonicNonNull Program program; private GlUtil.@MonotonicNonNull Program program;
@Nullable private GlUtil.Attribute[] attributes;
@Nullable private GlUtil.Uniform[] uniforms;
private float bitmapScaleX; private float bitmapScaleX;
private float bitmapScaleY; private float bitmapScaleY;
...@@ -88,31 +85,10 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; ...@@ -88,31 +85,10 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
} catch (IOException e) { } catch (IOException e) {
throw new IllegalStateException(e); throw new IllegalStateException(e);
} }
program.use(); program.setBufferAttribute(
GlUtil.Attribute[] attributes = program.getAttributes(); "aFramePosition", GlUtil.getNormalizedCoordinateBounds(), GlUtil.RECTANGLE_VERTICES_COUNT);
for (GlUtil.Attribute attribute : attributes) { program.setBufferAttribute(
if (attribute.name.equals("a_position")) { "aTexCoords", GlUtil.getTextureCoordinateBounds(), GlUtil.RECTANGLE_VERTICES_COUNT);
attribute.setBuffer(
new float[] {
-1, -1, 0, 1,
1, -1, 0, 1,
-1, 1, 0, 1,
1, 1, 0, 1
},
4);
} else if (attribute.name.equals("a_texcoord")) {
attribute.setBuffer(
new float[] {
0, 0, 0, 1,
1, 0, 0, 1,
0, 1, 0, 1,
1, 1, 0, 1
},
4);
}
}
this.attributes = attributes;
this.uniforms = program.getUniforms();
GLES20.glGenTextures(1, textures, 0); GLES20.glGenTextures(1, textures, 0);
GLES20.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]); GLES20.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]);
GLES20.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST); GLES20.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST);
...@@ -141,36 +117,22 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; ...@@ -141,36 +117,22 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
GlUtil.checkGlError(); GlUtil.checkGlError();
// Run the shader program. // Run the shader program.
GlUtil.Uniform[] uniforms = checkNotNull(this.uniforms); GlUtil.Program program = checkNotNull(this.program);
GlUtil.Attribute[] attributes = checkNotNull(this.attributes); program.setSamplerTexIdUniform("uTexSampler0", frameTexture, /* unit= */ 0);
for (GlUtil.Uniform uniform : uniforms) { program.setSamplerTexIdUniform("uTexSampler1", textures[0], /* unit= */ 1);
switch (uniform.name) { program.setFloatUniform("uScaleX", bitmapScaleX);
case "tex_sampler_0": program.setFloatUniform("uScaleY", bitmapScaleY);
uniform.setSamplerTexId(frameTexture, /* unit= */ 0); program.setFloatsUniform("uTexTransform", transformMatrix);
break; program.bindAttributesAndUniforms();
case "tex_sampler_1":
uniform.setSamplerTexId(textures[0], /* unit= */ 1);
break;
case "scaleX":
uniform.setFloat(bitmapScaleX);
break;
case "scaleY":
uniform.setFloat(bitmapScaleY);
break;
case "tex_transform":
uniform.setFloats(transformMatrix);
break;
default: // fall out
}
}
for (GlUtil.Attribute copyExternalAttribute : attributes) {
copyExternalAttribute.bind();
}
for (GlUtil.Uniform copyExternalUniform : uniforms) {
copyExternalUniform.bind();
}
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT); GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);
GLES20.glDrawArrays(GLES20.GL_TRIANGLE_STRIP, /* first= */ 0, /* count= */ 4); GLES20.glDrawArrays(GLES20.GL_TRIANGLE_STRIP, /* first= */ 0, /* count= */ 4);
GlUtil.checkGlError(); GlUtil.checkGlError();
} }
@Override
public void release() {
if (program != null) {
program.delete();
}
}
} }
...@@ -34,7 +34,7 @@ import com.google.android.exoplayer2.drm.HttpMediaDrmCallback; ...@@ -34,7 +34,7 @@ import com.google.android.exoplayer2.drm.HttpMediaDrmCallback;
import com.google.android.exoplayer2.source.MediaSource; import com.google.android.exoplayer2.source.MediaSource;
import com.google.android.exoplayer2.source.ProgressiveMediaSource; import com.google.android.exoplayer2.source.ProgressiveMediaSource;
import com.google.android.exoplayer2.source.dash.DashMediaSource; import com.google.android.exoplayer2.source.dash.DashMediaSource;
import com.google.android.exoplayer2.ui.PlayerView; import com.google.android.exoplayer2.ui.StyledPlayerView;
import com.google.android.exoplayer2.upstream.DataSource; import com.google.android.exoplayer2.upstream.DataSource;
import com.google.android.exoplayer2.upstream.DefaultDataSource; import com.google.android.exoplayer2.upstream.DefaultDataSource;
import com.google.android.exoplayer2.upstream.DefaultHttpDataSource; import com.google.android.exoplayer2.upstream.DefaultHttpDataSource;
...@@ -61,7 +61,7 @@ public final class MainActivity extends Activity { ...@@ -61,7 +61,7 @@ public final class MainActivity extends Activity {
private static final String DRM_SCHEME_EXTRA = "drm_scheme"; private static final String DRM_SCHEME_EXTRA = "drm_scheme";
private static final String DRM_LICENSE_URL_EXTRA = "drm_license_url"; private static final String DRM_LICENSE_URL_EXTRA = "drm_license_url";
@Nullable private PlayerView playerView; @Nullable private StyledPlayerView playerView;
@Nullable private VideoProcessingGLSurfaceView videoProcessingGLSurfaceView; @Nullable private VideoProcessingGLSurfaceView videoProcessingGLSurfaceView;
@Nullable private ExoPlayer player; @Nullable private ExoPlayer player;
...@@ -161,12 +161,12 @@ public final class MainActivity extends Activity { ...@@ -161,12 +161,12 @@ public final class MainActivity extends Activity {
if (type == C.TYPE_DASH) { if (type == C.TYPE_DASH) {
mediaSource = mediaSource =
new DashMediaSource.Factory(dataSourceFactory) new DashMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManagerProvider(unusedMediaItem -> drmSessionManager)
.createMediaSource(MediaItem.fromUri(uri)); .createMediaSource(MediaItem.fromUri(uri));
} else if (type == C.TYPE_OTHER) { } else if (type == C.TYPE_OTHER) {
mediaSource = mediaSource =
new ProgressiveMediaSource.Factory(dataSourceFactory) new ProgressiveMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManagerProvider(unusedMediaItem -> drmSessionManager)
.createMediaSource(MediaItem.fromUri(uri)); .createMediaSource(MediaItem.fromUri(uri));
} else { } else {
throw new IllegalStateException(); throw new IllegalStateException();
......
...@@ -64,6 +64,9 @@ public final class VideoProcessingGLSurfaceView extends GLSurfaceView { ...@@ -64,6 +64,9 @@ public final class VideoProcessingGLSurfaceView extends GLSurfaceView {
* @param transformMatrix The 4 * 4 transform matrix to be applied to the texture. * @param transformMatrix The 4 * 4 transform matrix to be applied to the texture.
*/ */
void draw(int frameTexture, long frameTimestampUs, float[] transformMatrix); void draw(int frameTexture, long frameTimestampUs, float[] transformMatrix);
/** Releases any resources associated with this {@link VideoProcessor}. */
void release();
} }
private static final int EGL_PROTECTED_CONTENT_EXT = 0x32C0; private static final int EGL_PROTECTED_CONTENT_EXT = 0x32C0;
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:keepScreenOn="true"> android:keepScreenOn="true">
<com.google.android.exoplayer2.ui.PlayerView <com.google.android.exoplayer2.ui.StyledPlayerView
android:id="@+id/player_view" android:id="@+id/player_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
......
...@@ -76,6 +76,7 @@ ...@@ -76,6 +76,7 @@
<data android:scheme="content"/> <data android:scheme="content"/>
<data android:scheme="asset"/> <data android:scheme="asset"/>
<data android:scheme="file"/> <data android:scheme="file"/>
<data android:scheme="ssai"/>
</intent-filter> </intent-filter>
<intent-filter> <intent-filter>
<action android:name="com.google.android.exoplayer.demo.action.VIEW_LIST"/> <action android:name="com.google.android.exoplayer.demo.action.VIEW_LIST"/>
......
...@@ -35,31 +35,31 @@ ...@@ -35,31 +35,31 @@
"name": "HD (cenc)", "name": "HD (cenc)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "UHD (cenc)", "name": "UHD (cenc)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears_uhd.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears_uhd.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "HD (cbcs)", "name": "HD (cbcs)",
"uri": "https://storage.googleapis.com/wvmedia/cbcs/h264/tears/tears_aes_cbcs.mpd", "uri": "https://storage.googleapis.com/wvmedia/cbcs/h264/tears/tears_aes_cbcs.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "UHD (cbcs)", "name": "UHD (cbcs)",
"uri": "https://storage.googleapis.com/wvmedia/cbcs/h264/tears/tears_aes_cbcs_uhd.mpd", "uri": "https://storage.googleapis.com/wvmedia/cbcs/h264/tears/tears_aes_cbcs_uhd.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "Secure -> Clear -> Secure (cenc)", "name": "Secure -> Clear -> Secure (cenc)",
"uri": "https://storage.googleapis.com/exoplayer-test-media-1/widevine/tears_enc_clear_enc.mpd", "uri": "https://storage.googleapis.com/exoplayer-test-media-1/widevine/tears_enc_clear_enc.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test", "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test",
"drm_session_for_clear_content": true "drm_session_for_clear_content": true
} }
] ]
...@@ -71,25 +71,25 @@ ...@@ -71,25 +71,25 @@
"name": "HD (cenc, full-sample)", "name": "HD (cenc, full-sample)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/tears/tears.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/tears/tears.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "UHD (cenc, full-sample)", "name": "UHD (cenc, full-sample)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/tears/tears_uhd.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/tears/tears_uhd.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "HD (cenc, sub-sample)", "name": "HD (cenc, sub-sample)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/subsample/24fps/tears/tears.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/subsample/24fps/tears/tears.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "UHD (cenc, sub-sample)", "name": "UHD (cenc, sub-sample)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/subsample/24fps/tears/tears_uhd.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/vp9/subsample/24fps/tears/tears_uhd.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
} }
] ]
}, },
...@@ -100,13 +100,13 @@ ...@@ -100,13 +100,13 @@
"name": "HD (cenc)", "name": "HD (cenc)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/hevc/tears/tears.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/hevc/tears/tears.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
}, },
{ {
"name": "UHD (cenc)", "name": "UHD (cenc)",
"uri": "https://storage.googleapis.com/wvmedia/cenc/hevc/tears/tears_uhd.mpd", "uri": "https://storage.googleapis.com/wvmedia/cenc/hevc/tears/tears_uhd.mpd",
"drm_scheme": "widevine", "drm_scheme": "widevine",
"drm_license_uri": "https://proxy.uat.widevine.com/proxy?provider=widevine_test" "drm_license_uri": "https://proxy.uat.widevine.com/proxy?video_id=2015_tears&provider=widevine_test"
} }
] ]
}, },
...@@ -237,11 +237,11 @@ ...@@ -237,11 +237,11 @@
"uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_16x9/bipbop_16x9_variant.m3u8" "uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_16x9/bipbop_16x9_variant.m3u8"
}, },
{ {
"name": "Apple master playlist advanced (TS)", "name": "Apple multivariant playlist advanced (TS)",
"uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_ts/master.m3u8" "uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_ts/master.m3u8"
}, },
{ {
"name": "Apple master playlist advanced (FMP4)", "name": "Apple multivariant playlist advanced (FMP4)",
"uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8" "uri": "https://devstreaming-cdn.apple.com/videos/streaming/examples/img_bipbop_adv_example_fmp4/master.m3u8"
}, },
{ {
...@@ -388,6 +388,98 @@ ...@@ -388,6 +388,98 @@
] ]
}, },
{ {
"name": "IMA DAI streams",
"samples": [
{
"name": "HLS VOD: Demo (skippable pre/post), single ads [30 s]",
"uri": "ssai://dai.google.com/?contentSourceId=2483977&videoId=ima-vod-skippable-test&format=2&adsId=1"
},
{
"name": "HLS VOD: Tears of Steel (pre/mid/mid/mid/post), single ads [10s]",
"uri": "ssai://dai.google.com/?contentSourceId=2528370&videoId=tears-of-steel&format=2&adsId=1"
},
{
"name": "HLS Live: Big Buck Bunny (mid), 3 ads each [10 s]",
"uri": "ssai://dai.google.com/?assetKey=sN_IYUG8STe1ZzhIIE_ksA&format=2&adsId=3"
},
{
"name": "DASH VOD: Tears of Steel (11 periods, pre/mid/post), 2/5/2 ads [5/10s]",
"uri": "ssai://dai.google.com/?contentSourceId=2559737&videoId=tos-dash&format=0&adsId=1"
},
{
"name": "Playlist: No ads - HLS VOD: Demo (skippable pre/post) - No ads",
"playlist": [
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
},
{
"uri": "ssai://dai.google.com/?contentSourceId=2483977&videoId=ima-vod-skippable-test&format=2&adsId=1"
},
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
}
]
},
{
"name": "Playlist: No ads - HLS VOD: Tears of steel (pre/mid/mid/mid/post) - No ads",
"playlist": [
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
},
{
"uri": "ssai://dai.google.com/?contentSourceId=2528370&videoId=tears-of-steel&format=2&adsId=1"
},
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
}
]
},
{
"name": "Playlist: No ads - HLS Live: Big Buck Bunny (mid) - No ads",
"playlist": [
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
},
{
"uri": "ssai://dai.google.com/?assetKey=sN_IYUG8STe1ZzhIIE_ksA&format=2&adsId=3"
},
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
}
]
},
{
"name": "Playlist: No ads - DASH VOD: Tears of Steel (11 periods, pre/mid/post) - No ads",
"playlist": [
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
},
{
"uri": "ssai://dai.google.com/?contentSourceId=2559737&videoId=tos-dash&format=0&adsId=1"
},
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
}
]
},
{
"name": "Playlist: Client-side Ads - DASH VOD: Tears of Steel (11 periods, pre/mid/post) - No ads",
"playlist": [
{
"uri": "https://storage.googleapis.com/exoplayer-test-media-1/mkv/android-screens-lavf-56.36.100-aac-avc-main-1280x720.mkv",
"ad_tag_uri": "https://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/124319096/external/ad_rule_samples&ciu_szs=300x250&ad_rule=1&impl=s&gdfp_req=1&env=vp&output=vmap&unviewed_position_start=1&cust_params=deployment%3Ddevsite%26sample_ar%3Dpremidpost&cmsid=496&vid=short_onecue&correlator="
},
{
"uri": "ssai://dai.google.com/?contentSourceId=2559737&videoId=tos-dash&format=0&adsId=1"
},
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
}
]
}
]
},
{
"name": "Playlists", "name": "Playlists",
"samples": [ "samples": [
{ {
......
...@@ -22,8 +22,6 @@ import com.google.android.exoplayer2.database.DatabaseProvider; ...@@ -22,8 +22,6 @@ import com.google.android.exoplayer2.database.DatabaseProvider;
import com.google.android.exoplayer2.database.StandaloneDatabaseProvider; import com.google.android.exoplayer2.database.StandaloneDatabaseProvider;
import com.google.android.exoplayer2.ext.cronet.CronetDataSource; import com.google.android.exoplayer2.ext.cronet.CronetDataSource;
import com.google.android.exoplayer2.ext.cronet.CronetUtil; import com.google.android.exoplayer2.ext.cronet.CronetUtil;
import com.google.android.exoplayer2.offline.ActionFileUpgradeUtil;
import com.google.android.exoplayer2.offline.DefaultDownloadIndex;
import com.google.android.exoplayer2.offline.DownloadManager; import com.google.android.exoplayer2.offline.DownloadManager;
import com.google.android.exoplayer2.ui.DownloadNotificationHelper; import com.google.android.exoplayer2.ui.DownloadNotificationHelper;
import com.google.android.exoplayer2.upstream.DataSource; import com.google.android.exoplayer2.upstream.DataSource;
...@@ -34,9 +32,7 @@ import com.google.android.exoplayer2.upstream.cache.Cache; ...@@ -34,9 +32,7 @@ import com.google.android.exoplayer2.upstream.cache.Cache;
import com.google.android.exoplayer2.upstream.cache.CacheDataSource; import com.google.android.exoplayer2.upstream.cache.CacheDataSource;
import com.google.android.exoplayer2.upstream.cache.NoOpCacheEvictor; import com.google.android.exoplayer2.upstream.cache.NoOpCacheEvictor;
import com.google.android.exoplayer2.upstream.cache.SimpleCache; import com.google.android.exoplayer2.upstream.cache.SimpleCache;
import com.google.android.exoplayer2.util.Log;
import java.io.File; import java.io.File;
import java.io.IOException;
import java.net.CookieHandler; import java.net.CookieHandler;
import java.net.CookieManager; import java.net.CookieManager;
import java.net.CookiePolicy; import java.net.CookiePolicy;
...@@ -60,8 +56,6 @@ public final class DemoUtil { ...@@ -60,8 +56,6 @@ public final class DemoUtil {
private static final boolean USE_CRONET_FOR_NETWORKING = true; private static final boolean USE_CRONET_FOR_NETWORKING = true;
private static final String TAG = "DemoUtil"; private static final String TAG = "DemoUtil";
private static final String DOWNLOAD_ACTION_FILE = "actions";
private static final String DOWNLOAD_TRACKER_ACTION_FILE = "tracked_actions";
private static final String DOWNLOAD_CONTENT_DIRECTORY = "downloads"; private static final String DOWNLOAD_CONTENT_DIRECTORY = "downloads";
private static DataSource.@MonotonicNonNull Factory dataSourceFactory; private static DataSource.@MonotonicNonNull Factory dataSourceFactory;
...@@ -155,14 +149,6 @@ public final class DemoUtil { ...@@ -155,14 +149,6 @@ public final class DemoUtil {
private static synchronized void ensureDownloadManagerInitialized(Context context) { private static synchronized void ensureDownloadManagerInitialized(Context context) {
if (downloadManager == null) { if (downloadManager == null) {
DefaultDownloadIndex downloadIndex = new DefaultDownloadIndex(getDatabaseProvider(context));
upgradeActionFile(
context, DOWNLOAD_ACTION_FILE, downloadIndex, /* addNewDownloadsAsCompleted= */ false);
upgradeActionFile(
context,
DOWNLOAD_TRACKER_ACTION_FILE,
downloadIndex,
/* addNewDownloadsAsCompleted= */ true);
downloadManager = downloadManager =
new DownloadManager( new DownloadManager(
context, context,
...@@ -175,23 +161,6 @@ public final class DemoUtil { ...@@ -175,23 +161,6 @@ public final class DemoUtil {
} }
} }
private static synchronized void upgradeActionFile(
Context context,
String fileName,
DefaultDownloadIndex downloadIndex,
boolean addNewDownloadsAsCompleted) {
try {
ActionFileUpgradeUtil.upgradeAndDelete(
new File(getDownloadDirectory(context), fileName),
/* downloadIdProvider= */ null,
downloadIndex,
/* deleteOnFailure= */ true,
addNewDownloadsAsCompleted);
} catch (IOException e) {
Log.e(TAG, "Failed to upgrade action file: " + fileName, e);
}
}
private static synchronized DatabaseProvider getDatabaseProvider(Context context) { private static synchronized DatabaseProvider getDatabaseProvider(Context context) {
if (databaseProvider == null) { if (databaseProvider == null) {
databaseProvider = new StandaloneDatabaseProvider(context); databaseProvider = new StandaloneDatabaseProvider(context);
......
...@@ -27,7 +27,9 @@ ...@@ -27,7 +27,9 @@
android:label="@string/application_name" android:label="@string/application_name"
android:exported="true"> android:exported="true">
<activity android:name=".MainActivity"> <activity
android:name=".MainActivity"
android:exported="true">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN"/> <action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/> <category android:name="android.intent.category.LAUNCHER"/>
......
...@@ -206,12 +206,12 @@ public final class MainActivity extends Activity { ...@@ -206,12 +206,12 @@ public final class MainActivity extends Activity {
if (type == C.TYPE_DASH) { if (type == C.TYPE_DASH) {
mediaSource = mediaSource =
new DashMediaSource.Factory(dataSourceFactory) new DashMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManagerProvider(unusedMediaItem -> drmSessionManager)
.createMediaSource(MediaItem.fromUri(uri)); .createMediaSource(MediaItem.fromUri(uri));
} else if (type == C.TYPE_OTHER) { } else if (type == C.TYPE_OTHER) {
mediaSource = mediaSource =
new ProgressiveMediaSource.Factory(dataSourceFactory) new ProgressiveMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManagerProvider(unusedMediaItem -> drmSessionManager)
.createMediaSource(MediaItem.fromUri(uri)); .createMediaSource(MediaItem.fromUri(uri));
} else { } else {
throw new IllegalStateException(); throw new IllegalStateException();
......
# Transformer demo
This app demonstrates how to use the [Transformer][] API to modify videos, for
example by removing audio or video.
See the [demos README](../README.md) for instructions on how to build and run
this demo.
[Transformer]: https://exoplayer.dev/transforming-media.html
/*
* Copyright 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
apply from: '../../constants.gradle'
apply plugin: 'com.android.application'
android {
compileSdkVersion project.ext.compileSdkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
versionName project.ext.releaseVersion
versionCode project.ext.releaseVersionCode
minSdkVersion 21
targetSdkVersion project.ext.appTargetSdkVersion
multiDexEnabled true
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt')
signingConfig signingConfigs.debug
}
}
lintOptions {
// This demo app isn't indexed and doesn't have translations.
disable 'GoogleAppIndexingWarning','MissingTranslation'
}
}
dependencies {
implementation 'androidx.core:core:' + androidxCoreVersion
compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion
implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion
implementation 'androidx.appcompat:appcompat:' + androidxAppCompatVersion
implementation 'androidx.constraintlayout:constraintlayout:' + androidxConstraintLayoutVersion
implementation 'androidx.multidex:multidex:' + androidxMultidexVersion
implementation 'com.google.android.material:material:' + androidxMaterialVersion
implementation project(modulePrefix + 'library-core')
implementation project(modulePrefix + 'library-transformer')
implementation project(modulePrefix + 'library-ui')
}
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.google.android.exoplayer2.transformerdemo">
<uses-sdk />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<application
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat"
android:taskAffinity=""
tools:targetApi="29">
<activity android:name=".ConfigurationActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize|uiMode"
android:launchMode="singleTop"
android:label="@string/app_name"
android:exported="true"
android:theme="@style/Theme.MaterialComponents.DayNight.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter>
<action android:name="com.google.android.exoplayer2.transformerdemo.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="http"/>
<data android:scheme="https"/>
<data android:scheme="content"/>
<data android:scheme="asset"/>
<data android:scheme="file"/>
</intent-filter>
</activity>
<activity android:name=".TransformerActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize|uiMode"
android:launchMode="singleTop"
android:label="@string/app_name"
android:exported="true"
android:theme="@style/Theme.MaterialComponents.DayNight.NoActionBar"/>
</application>
</manifest>
/* /*
* Copyright 2020 The Android Open Source Project * Copyright 2021 The Android Open Source Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
...@@ -13,19 +13,7 @@ ...@@ -13,19 +13,7 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
@NonNullApi
package com.google.android.exoplayer2.transformerdemo;
package com.google.android.exoplayer2.transformer; import com.google.android.exoplayer2.util.NonNullApi;
import com.google.android.exoplayer2.decoder.DecoderInputBuffer;
/** A sample transformer for a given track. */
/* package */ interface SampleTransformer {
/**
* Transforms the data and metadata of the sample contained in {@code buffer}.
*
* @param buffer The sample to transform. If the sample {@link DecoderInputBuffer#data data} is
* {@code null} after the execution of this method, the sample must be discarded.
*/
void transformSample(DecoderInputBuffer buffer);
}
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ConfigurationActivity">
<TextView
android:id="@+id/configuration_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
android:text="@string/configuration"
android:textSize="24sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/choose_file_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
android:text="@string/choose_file_title"
app:layout_constraintTop_toBottomOf="@+id/configuration_text_view"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:id="@+id/chosen_file_text_view"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
android:paddingLeft="24dp"
android:paddingRight="24dp"
android:textSize="12sp"
android:gravity="center"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/choose_file_button" />
<androidx.core.widget.NestedScrollView
android:layout_width="fill_parent"
android:layout_height="0dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/chosen_file_text_view"
app:layout_constraintBottom_toTopOf="@+id/transform_button">
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1"
android:layout_marginTop="32dp"
android:measureWithLargestChild="true"
android:paddingLeft="24dp"
android:paddingRight="12dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent">
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:text="@string/remove_audio" />
<CheckBox
android:id="@+id/remove_audio_checkbox"
android:layout_gravity="right"/>
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:text="@string/remove_video"/>
<CheckBox
android:id="@+id/remove_video_checkbox"
android:layout_gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:text="@string/flatten_for_slow_motion"/>
<CheckBox
android:id="@+id/flatten_for_slow_motion_checkbox"
android:layout_gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/audio_mime_text_view"
android:text="@string/audio_mime"/>
<Spinner
android:id="@+id/audio_mime_spinner"
android:layout_gravity="right|center_vertical"
android:gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/video_mime_text_view"
android:text="@string/video_mime"/>
<Spinner
android:id="@+id/video_mime_spinner"
android:layout_gravity="right|center_vertical"
android:gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/resolution_height_text_view"
android:text="@string/resolution_height"/>
<Spinner
android:id="@+id/resolution_height_spinner"
android:layout_gravity="right|center_vertical"
android:gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/translate"
android:text="@string/translate"/>
<Spinner
android:id="@+id/translate_spinner"
android:layout_gravity="right|center_vertical"
android:gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/scale"
android:text="@string/scale"/>
<Spinner
android:id="@+id/scale_spinner"
android:layout_gravity="right|center_vertical"
android:gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/rotate"
android:text="@string/rotate"/>
<Spinner
android:id="@+id/rotate_spinner"
android:layout_gravity="right|center_vertical"
android:gravity="right" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center_vertical" >
<TextView
android:id="@+id/hdr_editing"
android:text="@string/hdr_editing" />
<CheckBox
android:id="@+id/hdr_editing_checkbox"
android:layout_gravity="right" />
</TableRow>
</TableLayout>
</androidx.core.widget.NestedScrollView>
<Button
android:id="@+id/transform_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="28dp"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
android:text="@string/transform"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="32dp"
android:gravity="left|center_vertical"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp"
android:textIsSelectable="false" />
<?xml version="1.0" encoding="utf-8"?><!--
~ Copyright 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:keepScreenOn="true"
android:orientation="vertical">
<com.google.android.material.card.MaterialCardView
android:layout_margin="8dp"
android:layout_height="wrap_content"
android:layout_width="match_parent"
app:cardCornerRadius="4dp"
app:cardElevation="2dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/information_text_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="8dp" />
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.card.MaterialCardView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_margin="16dp"
app:cardCornerRadius="4dp"
app:cardElevation="2dp">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.exoplayer2.ui.StyledPlayerView
android:id="@+id/player_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<TextView
android:id="@+id/debug_text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="10sp"
tools:ignore="SmallSp"/>
<LinearLayout
android:id="@+id/progress_view_group"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:padding="8dp"
android:orientation="vertical">
<com.google.android.material.progressindicator.LinearProgressIndicator
android:id="@+id/progress_indicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_gravity="center" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:text="@string/debug_preview" />
<com.google.android.exoplayer2.ui.AspectRatioFrameLayout
android:id="@+id/debug_aspect_ratio_frame_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/debug_preview_not_available" />
</com.google.android.exoplayer2.ui.AspectRatioFrameLayout>
</LinearLayout>
</FrameLayout>
</com.google.android.material.card.MaterialCardView>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" translatable="false">Transformer Demo</string>
<string name="configuration" translatable="false">Configuration</string>
<string name="choose_file_title" translatable="false">Choose file</string>
<string name="remove_audio" translatable="false">Remove audio</string>
<string name="remove_video" translatable="false">Remove video</string>
<string name="flatten_for_slow_motion" translatable="false">Flatten for slow motion</string>
<string name="audio_mime" translatable="false">Output audio MIME type</string>
<string name="video_mime" translatable="false">Output video MIME type</string>
<string name="resolution_height" translatable="false">Output video resolution</string>
<string name="translate" translatable="false">Translate video</string>
<string name="scale" translatable="false">Scale video</string>
<string name="rotate" translatable="false">Rotate video (degrees)</string>
<string name="transform" translatable="false">Transform</string>
<string name="hdr_editing" translatable="false">[Experimental] HDR editing</string>
<string name="debug_preview" translatable="false">Debug preview:</string>
<string name="debug_preview_not_available" translatable="false">No debug preview available.</string>
<string name="transformation_started" translatable="false">Transformation started</string>
<string name="transformation_timer" translatable="false">Transformation started %d seconds ago.</string>
<string name="transformation_completed" translatable="false">Transformation completed in %d seconds.</string>
<string name="transformation_error" translatable="false">Transformation error</string>
</resources>
...@@ -46,10 +46,10 @@ MediaItem mediaItem = ...@@ -46,10 +46,10 @@ MediaItem mediaItem =
To enable player support for media items that specify ad tags, it's necessary to To enable player support for media items that specify ad tags, it's necessary to
build and inject a `DefaultMediaSourceFactory` configured with an build and inject a `DefaultMediaSourceFactory` configured with an
`AdsLoaderProvider` and an `AdViewProvider` when creating the player: `AdsLoader.Provider` and an `AdViewProvider` when creating the player:
~~~ ~~~
MediaSourceFactory mediaSourceFactory = MediaSource.Factory mediaSourceFactory =
new DefaultMediaSourceFactory(context) new DefaultMediaSourceFactory(context)
.setAdsLoaderProvider(adsLoaderProvider) .setAdsLoaderProvider(adsLoaderProvider)
.setAdViewProvider(playerView); .setAdViewProvider(playerView);
...@@ -61,12 +61,11 @@ ExoPlayer player = new ExoPlayer.Builder(context) ...@@ -61,12 +61,11 @@ ExoPlayer player = new ExoPlayer.Builder(context)
Internally, `DefaultMediaSourceFactory` will wrap the content media source in an Internally, `DefaultMediaSourceFactory` will wrap the content media source in an
`AdsMediaSource`. The `AdsMediaSource` will obtain an `AdsLoader` from the `AdsMediaSource`. The `AdsMediaSource` will obtain an `AdsLoader` from the
`AdsLoaderProvider` and use it to insert ads as defined by the media item's ad `AdsLoader.Provider` and use it to insert ads as defined by the media item's ad
tag. tag.
ExoPlayer's `StyledPlayerView` and `PlayerView` UI components both implement ExoPlayer's `StyledPlayerView` implements `AdViewProvider`. The IMA extension
`AdViewProvider`. The IMA extension provides an easy to use `AdsLoader`, as provides an easy to use `AdsLoader`, as described below.
described below.
### Playlists with ads ### ### Playlists with ads ###
...@@ -123,11 +122,11 @@ VAST/VMAP ad tags in the sample list. ...@@ -123,11 +122,11 @@ VAST/VMAP ad tags in the sample list.
#### UI considerations #### #### UI considerations ####
`StyledPlayerView` and `PlayerView` hide controls during playback of ads by `StyledPlayerView` hides its transport controls during playback of ads by
default, but apps can toggle this behavior by calling default, but apps can toggle this behavior by calling
`setControllerHideDuringAds`, which is defined on both views. The IMA SDK will `setControllerHideDuringAds`. The IMA SDK will show additional views on top of
show additional views on top of the player while an ad is playing (e.g., a 'more the player while an ad is playing (e.g., a 'more info' link and a skip button,
info' link and a skip button, if applicable). if applicable).
Since advertisers expect a consistent experience across apps, the IMA SDK does Since advertisers expect a consistent experience across apps, the IMA SDK does
not allow customization of the views that it shows while an ad is playing. It is not allow customization of the views that it shows while an ad is playing. It is
...@@ -139,9 +138,9 @@ The IMA SDK may report whether ads are obscured by application provided views ...@@ -139,9 +138,9 @@ The IMA SDK may report whether ads are obscured by application provided views
rendered on top of the player. Apps that need to overlay views that are rendered on top of the player. Apps that need to overlay views that are
essential for controlling playback must register them with the IMA SDK so that essential for controlling playback must register them with the IMA SDK so that
they can be omitted from viewability calculations. When using `StyledPlayerView` they can be omitted from viewability calculations. When using `StyledPlayerView`
or `PlayerView` as the `AdViewProvider`, they will automatically register their as the `AdViewProvider`, it will automatically register its control overlays.
control overlays. Apps that use a custom player UI must register overlay views Apps that use a custom player UI must register overlay views by returning them
by returning them from `AdViewProvider.getAdOverlayInfos`. from `AdViewProvider.getAdOverlayInfos`.
For more information about overlay views, see For more information about overlay views, see
[Open Measurement in the IMA SDK][]. [Open Measurement in the IMA SDK][].
...@@ -210,17 +209,108 @@ media stream contains both ads and content. A DASH manifest may point to both ...@@ -210,17 +209,108 @@ media stream contains both ads and content. A DASH manifest may point to both
content and ad segments, possibly in separate periods. For HLS, see the Apple content and ad segments, possibly in separate periods. For HLS, see the Apple
documentation on [incorporating ads into a playlist][]. documentation on [incorporating ads into a playlist][].
When using server-side ad insertion the client may need to report tracking When using server-side ad insertion, the client may need to resolve the media
events to an ad SDK or ad server. For example, the media stream may include URL dynamically to get the stitched stream, it may need to display ads overlays
timed events that need to be reported by the client (see [supported formats][] in the UI or it may need to report events to an ads SDK or ad server.
for information on what timed metadata formats are supported by ExoPlayer). Apps
can listen for timed metadata events from the player, e.g., via ExoPlayer's `DefaultMediaSourceFactory` can delegate all these tasks to a
`ExoPlayer.addMetadataOutput`. server-side ad insertion `MediaSource` for URIs using the `ssai://` scheme:
```
Player player =
new ExoPlayer.Builder(context)
.setMediaSourceFactory(
new DefaultMediaSourceFactory(dataSourceFactory)
.setServerSideAdInsertionMediaSourceFactory(ssaiFactory))
.build();
```
### IMA extension ###
The IMA extension currently only handles client-side ad insertion. It does not The [ExoPlayer IMA extension][] provides `ImaServerSideAdInsertionMediaSource`,
provide any integration with the DAI part of the IMA SDK. making it easy to integrate with IMA's server-side inserted ad streams in your
app. It wraps the functionality of the [IMA DAI SDK for Android][] and fully
integrates the provided ad metadata into the player. For example, this allows
you to use methods like `Player.isPlayingAd()`, listen to content-ad transitions
and let the player handle ad playback logic like skipping already played ads.
In order to use this class, you need to set up the
`ImaServerSideAdInsertionMediaSource.AdsLoader` and the
`ImaServerSideAdInsertionMediaSource.Factory` and connect them to the player:
```
// MediaSource.Factory to load the actual media stream.
DefaultMediaSourceFactory defaultMediaSourceFactory =
new DefaultMediaSourceFactory(dataSourceFactory);
// AdsLoader that can be reused for multiple playbacks.
ImaServerSideAdInsertionMediaSource.AdsLoader adsLoader =
new ImaServerSideAdInsertionMediaSource.AdsLoader.Builder(context, adViewProvider)
.build();
// MediaSource.Factory to create the ad sources for the current player.
ImaServerSideAdInsertionMediaSource.Factory adsMediaSourceFactory =
new ImaServerSideAdInsertionMediaSource.Factory(adsLoader, defaultMediaSourceFactory);
// Configure DefaultMediaSourceFactory to create both IMA DAI sources and
// regular media sources. If you just play IMA DAI streams, you can also use
// adsMediaSourceFactory directly.
defaultMediaSourceFactory.setServerSideAdInsertionMediaSourceFactory(adsMediaSourceFactory);
// Set the MediaSource.Factory on the Player.
Player player =
new ExoPlayer.Builder(context)
.setMediaSourceFactory(defaultMediaSourceFactory)
.build();
// Set the player on the AdsLoader
adsLoader.setPlayer(player);
```
Load your IMA asset key, or content source id and video id, by building an URL
with `ImaServerSideAdInsertionUriBuilder`:
```
Uri ssaiUri =
new ImaServerSideAdInsertionUriBuilder().setAssetKey(assetKey).build();
player.setMediaItem(MediaItem.fromUri(ssaiUri));
```
Finally, release your ads loader once it's no longer used:
```
adsLoader.release();
```
Currently only a single IMA server-side ad insertion stream is supported in the
same playlist. You can combine the stream with other media but not with another
IMA server-side ad insertion stream.
{:.info} {:.info}
#### UI considerations ####
The same [UI considerations as for client-side ad insertion][] apply to
server-side ad insertion too.
#### Companion ads ####
Some ad tags contain additional companion ads that can be shown in 'slots' in an
app UI. These slots can be passed via
`ImaServerSideAdInsertionMediaSource.AdsLoader.Builder.setCompanionAdSlots(slots)`.
For more information see [Adding Companion Ads][].
### Using a third-party ads SDK ###
If you need to load ads via a third-party ads SDK, it’s worth checking whether
it already provides an ExoPlayer integration. If not, it's recommended to
provide a custom `MediaSource` that accepts URIs with the `ssai://` scheme
similar to `ImaServerSideAdInsertionMediaSource`.
The actual logic of creating the ad structure can be delegated to the general
purpose `ServerSideInsertedAdsMediaSource`, which wraps a stream `MediaSource`
and allows the user to set and update the `AdPlaybackState` representing the ad
metadata.
Often, server-side inserted ad streams contain timed events to notify the player
about ad metadata. Please see [supported formats][] for information on what
timed metadata formats are supported by ExoPlayer. Custom ads SDK `MediaSource`s
can listen for timed metadata events from the player, e.g., via
`ExoPlayer.addMetadataOutput`.
[VAST]: https://www.iab.com/wp-content/uploads/2015/06/VASTv3_0.pdf [VAST]: https://www.iab.com/wp-content/uploads/2015/06/VASTv3_0.pdf
[VMAP]: https://www.iab.com/guidelines/digital-video-multiple-ad-playlist-vmap-1-0-1/ [VMAP]: https://www.iab.com/guidelines/digital-video-multiple-ad-playlist-vmap-1-0-1/
[ExoPlayer UI components]: {{ site.baseurl }}/ui-components.html [ExoPlayer UI components]: {{ site.baseurl }}/ui-components.html
...@@ -235,3 +325,5 @@ provide any integration with the DAI part of the IMA SDK. ...@@ -235,3 +325,5 @@ provide any integration with the DAI part of the IMA SDK.
[incorporating ads into a playlist]: https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/incorporating_ads_into_a_playlist [incorporating ads into a playlist]: https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/incorporating_ads_into_a_playlist
[supported formats]: {{ site.baseurl }}/supported-formats.html [supported formats]: {{ site.baseurl }}/supported-formats.html
[Google Mobile Ads SDK]: https://developers.google.com/admob/android/quick-start [Google Mobile Ads SDK]: https://developers.google.com/admob/android/quick-start
[IMA DAI SDK for Android]: https://developers.google.com/interactive-media-ads/docs/sdks/android/dai
[UI considerations as for client-side ad insertion]: #ui-considerations
...@@ -225,16 +225,16 @@ new PlaybackStatsListener( ...@@ -225,16 +225,16 @@ new PlaybackStatsListener(
In case you need to add custom events to the analytics data, you need to save In case you need to add custom events to the analytics data, you need to save
these events in your own data structure and combine them with the reported these events in your own data structure and combine them with the reported
`PlaybackStats` later. If it helps, you can extend `AnalyticsCollector` to be `PlaybackStats` later. If it helps, you can extend `DefaultAnalyticsCollector`
able to generate `EventTime` instances for your custom events and send them to to be able to generate `EventTime` instances for your custom events and send
the already registered listeners as shown in the following example. them to the already registered listeners as shown in the following example.
~~~ ~~~
interface ExtendedListener extends AnalyticsListener { interface ExtendedListener extends AnalyticsListener {
void onCustomEvent(EventTime eventTime); void onCustomEvent(EventTime eventTime);
} }
class ExtendedCollector extends AnalyticsCollector { class ExtendedCollector extends DefaultAnalyticsCollector {
public void customEvent() { public void customEvent() {
EventTime eventTime = generateCurrentPlayerMediaPeriodEventTime(); EventTime eventTime = generateCurrentPlayerMediaPeriodEventTime();
sendEvent(eventTime, CUSTOM_EVENT_ID, listener -> { sendEvent(eventTime, CUSTOM_EVENT_ID, listener -> {
......
...@@ -14,10 +14,10 @@ Components common to all `ExoPlayer` implementations are: ...@@ -14,10 +14,10 @@ Components common to all `ExoPlayer` implementations are:
* `MediaSource` instances that define media to be played, load the media, and * `MediaSource` instances that define media to be played, load the media, and
from which the loaded media can be read. `MediaSource` instances are created from which the loaded media can be read. `MediaSource` instances are created
from `MediaItem`s by a `MediaSourceFactory` inside the player. They can also from `MediaItem`s by a `MediaSource.Factory` inside the player. They can also
be passed directly to the player using the [media source based playlist API]. be passed directly to the player using the [media source based playlist API].
* A `MediaSourceFactory` that converts `MediaItem`s to `MediaSource`s. The * A `MediaSource.Factory` that converts `MediaItem`s to `MediaSource`s. The
`MediaSourceFactory` is injected when the player is created. `MediaSource.Factory` is injected when the player is created.
* `Renderer`s that render individual components of the media. `Renderer`s are * `Renderer`s that render individual components of the media. `Renderer`s are
injected when the player is created. injected when the player is created.
* A `TrackSelector` that selects tracks provided by the `MediaSource` to be * A `TrackSelector` that selects tracks provided by the `MediaSource` to be
...@@ -245,9 +245,9 @@ required. Some use cases for custom implementations are: ...@@ -245,9 +245,9 @@ required. Some use cases for custom implementations are:
appropriate if you wish to obtain media samples to feed to renderers in a appropriate if you wish to obtain media samples to feed to renderers in a
custom way, or if you wish to implement custom `MediaSource` compositing custom way, or if you wish to implement custom `MediaSource` compositing
behavior. behavior.
* `MediaSourceFactory` &ndash; Implementing a custom `MediaSourceFactory` allows * `MediaSource.Factory` &ndash; Implementing a custom `MediaSource.Factory`
an application to customize the way in which `MediaSource`s are created from allows an application to customize the way in which `MediaSource`s are created
`MediaItem`s. from `MediaItem`s.
* `DataSource` &ndash; ExoPlayer’s upstream package already contains a number of * `DataSource` &ndash; ExoPlayer’s upstream package already contains a number of
`DataSource` implementations for different use cases. You may want to `DataSource` implementations for different use cases. You may want to
implement you own `DataSource` class to load data in another way, such as over implement you own `DataSource` class to load data in another way, such as over
......
This diff could not be displayed because it is too large.
...@@ -238,7 +238,7 @@ extends <a href="https://developer.android.com/reference/android/os/Binder.html" ...@@ -238,7 +238,7 @@ extends <a href="https://developer.android.com/reference/android/os/Binder.html"
<th class="colLast" scope="col">Description</th> <th class="colLast" scope="col">Description</th>
</tr> </tr>
<tr id="i0" class="altColor"> <tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top">Bundle</a>&gt;</code></td> <td class="colFirst"><code>static <a href="https://guava.dev/releases/31.0.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top">Bundle</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getList(android.os.IBinder)">getList</a></span>&#8203;(<a href="https://developer.android.com/reference/android/os/IBinder.html" title="class or interface in android.os" class="externalLink" target="_top">IBinder</a>&nbsp;binder)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getList(android.os.IBinder)">getList</a></span>&#8203;(<a href="https://developer.android.com/reference/android/os/IBinder.html" title="class or interface in android.os" class="externalLink" target="_top">IBinder</a>&nbsp;binder)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Gets a list of <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink"><code>Bundles</code></a> from a <a href="BundleListRetriever.html" title="class in com.google.android.exoplayer2" target="_top"><code>BundleListRetriever</code></a>.</div> <div class="block">Gets a list of <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink"><code>Bundles</code></a> from a <a href="BundleListRetriever.html" title="class in com.google.android.exoplayer2" target="_top"><code>BundleListRetriever</code></a>.</div>
...@@ -329,7 +329,7 @@ extends <a href="https://developer.android.com/reference/android/os/Binder.html" ...@@ -329,7 +329,7 @@ extends <a href="https://developer.android.com/reference/android/os/Binder.html"
<ul class="blockListLast"> <ul class="blockListLast">
<li class="blockList"> <li class="blockList">
<h4>getList</h4> <h4>getList</h4>
<pre class="methodSignature">public static&nbsp;<a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink">Bundle</a>&gt;&nbsp;getList&#8203;(<a href="https://developer.android.com/reference/android/os/IBinder.html?is-external=true" title="class or interface in android.os" class="externalLink" target="_top">IBinder</a>&nbsp;binder)</pre> <pre class="methodSignature">public static&nbsp;<a href="https://guava.dev/releases/31.0.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink">Bundle</a>&gt;&nbsp;getList&#8203;(<a href="https://developer.android.com/reference/android/os/IBinder.html?is-external=true" title="class or interface in android.os" class="externalLink" target="_top">IBinder</a>&nbsp;binder)</pre>
<div class="block">Gets a list of <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink"><code>Bundles</code></a> from a <a href="BundleListRetriever.html" title="class in com.google.android.exoplayer2" target="_top"><code>BundleListRetriever</code></a>.</div> <div class="block">Gets a list of <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink"><code>Bundles</code></a> from a <a href="BundleListRetriever.html" title="class in com.google.android.exoplayer2" target="_top"><code>BundleListRetriever</code></a>.</div>
<dl> <dl>
<dt><span class="paramLabel">Parameters:</span></dt> <dt><span class="paramLabel">Parameters:</span></dt>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.BufferFlags</span></pre> public static @interface <span class="memberNameLabel">C.BufferFlags</span></pre>
<div class="block">Flags which can apply to a buffer containing a media sample. Possible flag values are <a href="C.html#BUFFER_FLAG_KEY_FRAME"><code>C.BUFFER_FLAG_KEY_FRAME</code></a>, <a href="C.html#BUFFER_FLAG_END_OF_STREAM"><code>C.BUFFER_FLAG_END_OF_STREAM</code></a>, <a href="C.html#BUFFER_FLAG_LAST_SAMPLE"><code>C.BUFFER_FLAG_LAST_SAMPLE</code></a>, <div class="block">Flags which can apply to a buffer containing a media sample. Possible flag values are <a href="C.html#BUFFER_FLAG_KEY_FRAME"><code>C.BUFFER_FLAG_KEY_FRAME</code></a>, <a href="C.html#BUFFER_FLAG_END_OF_STREAM"><code>C.BUFFER_FLAG_END_OF_STREAM</code></a>, <a href="C.html#BUFFER_FLAG_LAST_SAMPLE"><code>C.BUFFER_FLAG_LAST_SAMPLE</code></a>,
<a href="C.html#BUFFER_FLAG_ENCRYPTED"><code>C.BUFFER_FLAG_ENCRYPTED</code></a> and <a href="C.html#BUFFER_FLAG_DECODE_ONLY"><code>C.BUFFER_FLAG_DECODE_ONLY</code></a>.</div> <a href="C.html#BUFFER_FLAG_ENCRYPTED"><code>C.BUFFER_FLAG_ENCRYPTED</code></a> and <a href="C.html#BUFFER_FLAG_DECODE_ONLY"><code>C.BUFFER_FLAG_DECODE_ONLY</code></a>.</div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.ColorRange</span></pre> public static @interface <span class="memberNameLabel">C.ColorRange</span></pre>
<div class="block">Video color range. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#COLOR_RANGE_LIMITED"><code>C.COLOR_RANGE_LIMITED</code></a> or <a href="C.html#COLOR_RANGE_FULL"><code>C.COLOR_RANGE_FULL</code></a>.</div> <div class="block">Video color range. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#COLOR_RANGE_LIMITED"><code>C.COLOR_RANGE_LIMITED</code></a> or <a href="C.html#COLOR_RANGE_FULL"><code>C.COLOR_RANGE_FULL</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.ColorSpace</span></pre> public static @interface <span class="memberNameLabel">C.ColorSpace</span></pre>
<div class="block">Video colorspaces. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#COLOR_SPACE_BT709"><code>C.COLOR_SPACE_BT709</code></a>, <a href="C.html#COLOR_SPACE_BT601"><code>C.COLOR_SPACE_BT601</code></a> or <a href="C.html#COLOR_SPACE_BT2020"><code>C.COLOR_SPACE_BT2020</code></a>.</div> <div class="block">Video colorspaces. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#COLOR_SPACE_BT709"><code>C.COLOR_SPACE_BT709</code></a>, <a href="C.html#COLOR_SPACE_BT601"><code>C.COLOR_SPACE_BT601</code></a> or <a href="C.html#COLOR_SPACE_BT2020"><code>C.COLOR_SPACE_BT2020</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.ColorTransfer</span></pre> public static @interface <span class="memberNameLabel">C.ColorTransfer</span></pre>
<div class="block">Video color transfer characteristics. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#COLOR_TRANSFER_SDR"><code>C.COLOR_TRANSFER_SDR</code></a>, <a href="C.html#COLOR_TRANSFER_ST2084"><code>C.COLOR_TRANSFER_ST2084</code></a> or <a href="C.html#COLOR_TRANSFER_HLG"><code>C.COLOR_TRANSFER_HLG</code></a>.</div> <div class="block">Video color transfer characteristics. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#COLOR_TRANSFER_SDR"><code>C.COLOR_TRANSFER_SDR</code></a>, <a href="C.html#COLOR_TRANSFER_ST2084"><code>C.COLOR_TRANSFER_ST2084</code></a> or <a href="C.html#COLOR_TRANSFER_HLG"><code>C.COLOR_TRANSFER_HLG</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">C.ContentType</span></pre> public static @interface <span class="memberNameLabel">C.ContentType</span></pre>
<div class="block">Represents a streaming or other media type. One of <a href="C.html#TYPE_DASH"><code>C.TYPE_DASH</code></a>, <a href="C.html#TYPE_SS"><code>C.TYPE_SS</code></a>, <a href="C.html#TYPE_HLS"><code>C.TYPE_HLS</code></a>, <a href="C.html#TYPE_RTSP"><code>C.TYPE_RTSP</code></a> or <a href="C.html#TYPE_OTHER"><code>C.TYPE_OTHER</code></a>.</div> <div class="block">Represents a streaming or other media type. One of <a href="C.html#TYPE_DASH"><code>C.TYPE_DASH</code></a>, <a href="C.html#TYPE_SS"><code>C.TYPE_SS</code></a>, <a href="C.html#TYPE_HLS"><code>C.TYPE_HLS</code></a>, <a href="C.html#TYPE_RTSP"><code>C.TYPE_RTSP</code></a> or <a href="C.html#TYPE_OTHER"><code>C.TYPE_OTHER</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.CryptoMode</span></pre> public static @interface <span class="memberNameLabel">C.CryptoMode</span></pre>
<div class="block">Crypto modes for a codec. One of <a href="C.html#CRYPTO_MODE_UNENCRYPTED"><code>C.CRYPTO_MODE_UNENCRYPTED</code></a>, <a href="C.html#CRYPTO_MODE_AES_CTR"><code>C.CRYPTO_MODE_AES_CTR</code></a> <div class="block">Crypto modes for a codec. One of <a href="C.html#CRYPTO_MODE_UNENCRYPTED"><code>C.CRYPTO_MODE_UNENCRYPTED</code></a>, <a href="C.html#CRYPTO_MODE_AES_CTR"><code>C.CRYPTO_MODE_AES_CTR</code></a>
or <a href="C.html#CRYPTO_MODE_AES_CBC"><code>C.CRYPTO_MODE_AES_CBC</code></a>.</div> or <a href="C.html#CRYPTO_MODE_AES_CBC"><code>C.CRYPTO_MODE_AES_CBC</code></a>.</div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.DataType</span></pre> public static @interface <span class="memberNameLabel">C.DataType</span></pre>
<div class="block">Represents a type of data. May be one of <a href="C.html#DATA_TYPE_UNKNOWN"><code>C.DATA_TYPE_UNKNOWN</code></a>, <a href="C.html#DATA_TYPE_MEDIA"><code>C.DATA_TYPE_MEDIA</code></a>, <div class="block">Represents a type of data. May be one of <a href="C.html#DATA_TYPE_UNKNOWN"><code>C.DATA_TYPE_UNKNOWN</code></a>, <a href="C.html#DATA_TYPE_MEDIA"><code>C.DATA_TYPE_MEDIA</code></a>,
<a href="C.html#DATA_TYPE_MEDIA_INITIALIZATION"><code>C.DATA_TYPE_MEDIA_INITIALIZATION</code></a>, <a href="C.html#DATA_TYPE_DRM"><code>C.DATA_TYPE_DRM</code></a>, <a href="C.html#DATA_TYPE_MANIFEST"><code>C.DATA_TYPE_MANIFEST</code></a>, <a href="C.html#DATA_TYPE_MEDIA_INITIALIZATION"><code>C.DATA_TYPE_MEDIA_INITIALIZATION</code></a>, <a href="C.html#DATA_TYPE_DRM"><code>C.DATA_TYPE_DRM</code></a>, <a href="C.html#DATA_TYPE_MANIFEST"><code>C.DATA_TYPE_MANIFEST</code></a>,
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.Encoding</span></pre> public static @interface <span class="memberNameLabel">C.Encoding</span></pre>
<div class="block">Represents an audio encoding, or an invalid or unset value. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <div class="block">Represents an audio encoding, or an invalid or unset value. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>,
<a href="C.html#ENCODING_INVALID"><code>C.ENCODING_INVALID</code></a>, <a href="C.html#ENCODING_PCM_8BIT"><code>C.ENCODING_PCM_8BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT"><code>C.ENCODING_PCM_16BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT_BIG_ENDIAN"><code>C.ENCODING_PCM_16BIT_BIG_ENDIAN</code></a>, <a href="C.html#ENCODING_PCM_24BIT"><code>C.ENCODING_PCM_24BIT</code></a>, <a href="C.html#ENCODING_PCM_32BIT"><code>C.ENCODING_PCM_32BIT</code></a>, <a href="C.html#ENCODING_INVALID"><code>C.ENCODING_INVALID</code></a>, <a href="C.html#ENCODING_PCM_8BIT"><code>C.ENCODING_PCM_8BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT"><code>C.ENCODING_PCM_16BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT_BIG_ENDIAN"><code>C.ENCODING_PCM_16BIT_BIG_ENDIAN</code></a>, <a href="C.html#ENCODING_PCM_24BIT"><code>C.ENCODING_PCM_24BIT</code></a>, <a href="C.html#ENCODING_PCM_32BIT"><code>C.ENCODING_PCM_32BIT</code></a>,
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">C.FormatSupport</span></pre> public static @interface <span class="memberNameLabel">C.FormatSupport</span></pre>
<div class="block">Level of renderer support for a format. One of <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a>, <a href="C.html#FORMAT_EXCEEDS_CAPABILITIES"><code>C.FORMAT_EXCEEDS_CAPABILITIES</code></a>, <a href="C.html#FORMAT_UNSUPPORTED_DRM"><code>C.FORMAT_UNSUPPORTED_DRM</code></a>, <a href="C.html#FORMAT_UNSUPPORTED_SUBTYPE"><code>C.FORMAT_UNSUPPORTED_SUBTYPE</code></a> or <a href="C.html#FORMAT_UNSUPPORTED_TYPE"><code>C.FORMAT_UNSUPPORTED_TYPE</code></a>.</div> <div class="block">Level of renderer support for a format. One of <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a>, <a href="C.html#FORMAT_EXCEEDS_CAPABILITIES"><code>C.FORMAT_EXCEEDS_CAPABILITIES</code></a>, <a href="C.html#FORMAT_UNSUPPORTED_DRM"><code>C.FORMAT_UNSUPPORTED_DRM</code></a>, <a href="C.html#FORMAT_UNSUPPORTED_SUBTYPE"><code>C.FORMAT_UNSUPPORTED_SUBTYPE</code></a> or <a href="C.html#FORMAT_UNSUPPORTED_TYPE"><code>C.FORMAT_UNSUPPORTED_TYPE</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">C.NetworkType</span></pre> public static @interface <span class="memberNameLabel">C.NetworkType</span></pre>
<div class="block">Network connection type. One of <a href="C.html#NETWORK_TYPE_UNKNOWN"><code>C.NETWORK_TYPE_UNKNOWN</code></a>, <a href="C.html#NETWORK_TYPE_OFFLINE"><code>C.NETWORK_TYPE_OFFLINE</code></a>, <div class="block">Network connection type. One of <a href="C.html#NETWORK_TYPE_UNKNOWN"><code>C.NETWORK_TYPE_UNKNOWN</code></a>, <a href="C.html#NETWORK_TYPE_OFFLINE"><code>C.NETWORK_TYPE_OFFLINE</code></a>,
<a href="C.html#NETWORK_TYPE_WIFI"><code>C.NETWORK_TYPE_WIFI</code></a>, <a href="C.html#NETWORK_TYPE_2G"><code>C.NETWORK_TYPE_2G</code></a>, <a href="C.html#NETWORK_TYPE_3G"><code>C.NETWORK_TYPE_3G</code></a>, <a href="C.html#NETWORK_TYPE_4G"><code>C.NETWORK_TYPE_4G</code></a>, <a href="C.html#NETWORK_TYPE_5G_SA"><code>C.NETWORK_TYPE_5G_SA</code></a>, <a href="C.html#NETWORK_TYPE_5G_NSA"><code>C.NETWORK_TYPE_5G_NSA</code></a>, <a href="C.html#NETWORK_TYPE_CELLULAR_UNKNOWN"><code>C.NETWORK_TYPE_CELLULAR_UNKNOWN</code></a>, <a href="C.html#NETWORK_TYPE_ETHERNET"><code>C.NETWORK_TYPE_ETHERNET</code></a> or <a href="C.html#NETWORK_TYPE_OTHER"><code>C.NETWORK_TYPE_OTHER</code></a>.</div> <a href="C.html#NETWORK_TYPE_WIFI"><code>C.NETWORK_TYPE_WIFI</code></a>, <a href="C.html#NETWORK_TYPE_2G"><code>C.NETWORK_TYPE_2G</code></a>, <a href="C.html#NETWORK_TYPE_3G"><code>C.NETWORK_TYPE_3G</code></a>, <a href="C.html#NETWORK_TYPE_4G"><code>C.NETWORK_TYPE_4G</code></a>, <a href="C.html#NETWORK_TYPE_5G_SA"><code>C.NETWORK_TYPE_5G_SA</code></a>, <a href="C.html#NETWORK_TYPE_5G_NSA"><code>C.NETWORK_TYPE_5G_NSA</code></a>, <a href="C.html#NETWORK_TYPE_CELLULAR_UNKNOWN"><code>C.NETWORK_TYPE_CELLULAR_UNKNOWN</code></a>, <a href="C.html#NETWORK_TYPE_ETHERNET"><code>C.NETWORK_TYPE_ETHERNET</code></a> or <a href="C.html#NETWORK_TYPE_OTHER"><code>C.NETWORK_TYPE_OTHER</code></a>.</div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.PcmEncoding</span></pre> public static @interface <span class="memberNameLabel">C.PcmEncoding</span></pre>
<div class="block">Represents a PCM audio encoding, or an invalid or unset value. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <div class="block">Represents a PCM audio encoding, or an invalid or unset value. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>,
<a href="C.html#ENCODING_INVALID"><code>C.ENCODING_INVALID</code></a>, <a href="C.html#ENCODING_PCM_8BIT"><code>C.ENCODING_PCM_8BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT"><code>C.ENCODING_PCM_16BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT_BIG_ENDIAN"><code>C.ENCODING_PCM_16BIT_BIG_ENDIAN</code></a>, <a href="C.html#ENCODING_PCM_24BIT"><code>C.ENCODING_PCM_24BIT</code></a>, <a href="C.html#ENCODING_PCM_32BIT"><code>C.ENCODING_PCM_32BIT</code></a>, <a href="C.html#ENCODING_INVALID"><code>C.ENCODING_INVALID</code></a>, <a href="C.html#ENCODING_PCM_8BIT"><code>C.ENCODING_PCM_8BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT"><code>C.ENCODING_PCM_16BIT</code></a>, <a href="C.html#ENCODING_PCM_16BIT_BIG_ENDIAN"><code>C.ENCODING_PCM_16BIT_BIG_ENDIAN</code></a>, <a href="C.html#ENCODING_PCM_24BIT"><code>C.ENCODING_PCM_24BIT</code></a>, <a href="C.html#ENCODING_PCM_32BIT"><code>C.ENCODING_PCM_32BIT</code></a>,
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.Projection</span></pre> public static @interface <span class="memberNameLabel">C.Projection</span></pre>
<div class="block">Video projection types.</div> <div class="block">Video projection types.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.SelectionReason</span></pre> public static @interface <span class="memberNameLabel">C.SelectionReason</span></pre>
<div class="block">Represents a reason for selection. May be one of <a href="C.html#SELECTION_REASON_UNKNOWN"><code>C.SELECTION_REASON_UNKNOWN</code></a>, <a href="C.html#SELECTION_REASON_INITIAL"><code>C.SELECTION_REASON_INITIAL</code></a>, <a href="C.html#SELECTION_REASON_MANUAL"><code>C.SELECTION_REASON_MANUAL</code></a>, <a href="C.html#SELECTION_REASON_ADAPTIVE"><code>C.SELECTION_REASON_ADAPTIVE</code></a> or <a href="C.html#SELECTION_REASON_TRICK_PLAY"><code>C.SELECTION_REASON_TRICK_PLAY</code></a>. May also be an app-defined <div class="block">Represents a reason for selection. May be one of <a href="C.html#SELECTION_REASON_UNKNOWN"><code>C.SELECTION_REASON_UNKNOWN</code></a>, <a href="C.html#SELECTION_REASON_INITIAL"><code>C.SELECTION_REASON_INITIAL</code></a>, <a href="C.html#SELECTION_REASON_MANUAL"><code>C.SELECTION_REASON_MANUAL</code></a>, <a href="C.html#SELECTION_REASON_ADAPTIVE"><code>C.SELECTION_REASON_ADAPTIVE</code></a> or <a href="C.html#SELECTION_REASON_TRICK_PLAY"><code>C.SELECTION_REASON_TRICK_PLAY</code></a>. May also be an app-defined
value (see <a href="C.html#SELECTION_REASON_CUSTOM_BASE"><code>C.SELECTION_REASON_CUSTOM_BASE</code></a>).</div> value (see <a href="C.html#SELECTION_REASON_CUSTOM_BASE"><code>C.SELECTION_REASON_CUSTOM_BASE</code></a>).</div>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!-- NewPage --> <!-- NewPage -->
<html lang="en"> <html lang="en">
<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet --> <head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet -->
<title>C.AudioFocusGain (ExoPlayer library)</title> <title>C.SpatializationBehavior (ExoPlayer library)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style"> <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<script type="text/javascript"><!-- <script type="text/javascript"><!--
try { try {
if (location.href.indexOf('is-external=true') == -1) { if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="C.AudioFocusGain (ExoPlayer library)"; parent.document.title="C.SpatializationBehavior (ExoPlayer library)";
} }
} }
catch(err) { catch(err) {
...@@ -106,7 +106,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -106,7 +106,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<main role="main"> <main role="main">
<div class="header"> <div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2</a></div> <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2</a></div>
<h2 title="Annotation Type C.AudioFocusGain" class="title">Annotation Type C.AudioFocusGain</h2> <h2 title="Annotation Type C.SpatializationBehavior" class="title">Annotation Type C.SpatializationBehavior</h2>
</div> </div>
<div class="contentContainer"> <div class="contentContainer">
<div class="description"> <div class="description">
...@@ -115,8 +115,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,8 +115,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
public static @interface <span class="memberNameLabel">C.AudioFocusGain</span></pre> <a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
<div class="block">Audio focus types. One of <a href="C.html#AUDIOFOCUS_NONE"><code>C.AUDIOFOCUS_NONE</code></a>, <a href="C.html#AUDIOFOCUS_GAIN"><code>C.AUDIOFOCUS_GAIN</code></a>, <a href="C.html#AUDIOFOCUS_GAIN_TRANSIENT"><code>C.AUDIOFOCUS_GAIN_TRANSIENT</code></a>, <a href="C.html#AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK"><code>C.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK</code></a> or <a href="C.html#AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE"><code>C.AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE</code></a>.</div> public static @interface <span class="memberNameLabel">C.SpatializationBehavior</span></pre>
<div class="block">Represents the behavior affecting whether spatialization will be used.</div>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.StereoMode</span></pre> public static @interface <span class="memberNameLabel">C.StereoMode</span></pre>
<div class="block">The stereo mode for 360/3D/VR videos. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#STEREO_MODE_MONO"><code>C.STEREO_MODE_MONO</code></a>, <a href="C.html#STEREO_MODE_TOP_BOTTOM"><code>C.STEREO_MODE_TOP_BOTTOM</code></a>, <a href="C.html#STEREO_MODE_LEFT_RIGHT"><code>C.STEREO_MODE_LEFT_RIGHT</code></a> or <a href="C.html#STEREO_MODE_STEREO_MESH"><code>C.STEREO_MODE_STEREO_MESH</code></a>.</div> <div class="block">The stereo mode for 360/3D/VR videos. One of <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>, <a href="C.html#STEREO_MODE_MONO"><code>C.STEREO_MODE_MONO</code></a>, <a href="C.html#STEREO_MODE_TOP_BOTTOM"><code>C.STEREO_MODE_TOP_BOTTOM</code></a>, <a href="C.html#STEREO_MODE_LEFT_RIGHT"><code>C.STEREO_MODE_LEFT_RIGHT</code></a> or <a href="C.html#STEREO_MODE_STEREO_MESH"><code>C.STEREO_MODE_STEREO_MESH</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">C.StreamType</span></pre> public static @interface <span class="memberNameLabel">C.StreamType</span></pre>
<div class="block">Stream types for an <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink"><code>AudioTrack</code></a>. One of <a href="C.html#STREAM_TYPE_ALARM"><code>C.STREAM_TYPE_ALARM</code></a>, <a href="C.html#STREAM_TYPE_DTMF"><code>C.STREAM_TYPE_DTMF</code></a>, <a href="C.html#STREAM_TYPE_MUSIC"><code>C.STREAM_TYPE_MUSIC</code></a>, <a href="C.html#STREAM_TYPE_NOTIFICATION"><code>C.STREAM_TYPE_NOTIFICATION</code></a>, <a href="C.html#STREAM_TYPE_RING"><code>C.STREAM_TYPE_RING</code></a>, <a href="C.html#STREAM_TYPE_SYSTEM"><code>C.STREAM_TYPE_SYSTEM</code></a>, <a href="C.html#STREAM_TYPE_VOICE_CALL"><code>C.STREAM_TYPE_VOICE_CALL</code></a> or <a href="C.html#STREAM_TYPE_DEFAULT" target="_top"><code>C.STREAM_TYPE_DEFAULT</code></a>.</div> <div class="block">Stream types for an <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink"><code>AudioTrack</code></a>. One of <a href="C.html#STREAM_TYPE_ALARM"><code>C.STREAM_TYPE_ALARM</code></a>, <a href="C.html#STREAM_TYPE_DTMF"><code>C.STREAM_TYPE_DTMF</code></a>, <a href="C.html#STREAM_TYPE_MUSIC"><code>C.STREAM_TYPE_MUSIC</code></a>, <a href="C.html#STREAM_TYPE_NOTIFICATION"><code>C.STREAM_TYPE_NOTIFICATION</code></a>, <a href="C.html#STREAM_TYPE_RING"><code>C.STREAM_TYPE_RING</code></a>, <a href="C.html#STREAM_TYPE_SYSTEM"><code>C.STREAM_TYPE_SYSTEM</code></a>, <a href="C.html#STREAM_TYPE_VOICE_CALL"><code>C.STREAM_TYPE_VOICE_CALL</code></a> or <a href="C.html#STREAM_TYPE_DEFAULT" target="_top"><code>C.STREAM_TYPE_DEFAULT</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">C.VideoChangeFrameRateStrategy</span></pre> public static @interface <span class="memberNameLabel">C.VideoChangeFrameRateStrategy</span></pre>
<div class="block">Strategies for calling <a href="https://developer.android.com/reference/android/view/Surface.html#setFrameRate(float,int,int)" title="class or interface in android.view" class="externalLink" target="_top"><code>Surface.setFrameRate(float, int, int)</code></a>.</div> <div class="block">Strategies for calling <a href="https://developer.android.com/reference/android/view/Surface.html#setFrameRate(float,int,int)" title="class or interface in android.view" class="externalLink" target="_top"><code>Surface.setFrameRate(float, int, int)</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">C.VideoOutputMode</span></pre> public static @interface <span class="memberNameLabel">C.VideoOutputMode</span></pre>
<div class="block">Video decoder output modes. Possible modes are <a href="C.html#VIDEO_OUTPUT_MODE_NONE"><code>C.VIDEO_OUTPUT_MODE_NONE</code></a>, <a href="C.html#VIDEO_OUTPUT_MODE_YUV"><code>C.VIDEO_OUTPUT_MODE_YUV</code></a> and <a href="C.html#VIDEO_OUTPUT_MODE_SURFACE_YUV"><code>C.VIDEO_OUTPUT_MODE_SURFACE_YUV</code></a>.</div> <div class="block">Video decoder output modes. Possible modes are <a href="C.html#VIDEO_OUTPUT_MODE_NONE"><code>C.VIDEO_OUTPUT_MODE_NONE</code></a>, <a href="C.html#VIDEO_OUTPUT_MODE_YUV"><code>C.VIDEO_OUTPUT_MODE_YUV</code></a> and <a href="C.html#VIDEO_OUTPUT_MODE_SURFACE_YUV"><code>C.VIDEO_OUTPUT_MODE_SURFACE_YUV</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">C.VideoScalingMode</span></pre> public static @interface <span class="memberNameLabel">C.VideoScalingMode</span></pre>
<div class="block">Video scaling modes for <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink"><code>MediaCodec</code></a>-based renderers. One of <a href="C.html#VIDEO_SCALING_MODE_SCALE_TO_FIT"><code>C.VIDEO_SCALING_MODE_SCALE_TO_FIT</code></a>, <a href="C.html#VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING" target="_top"><code>C.VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING</code></a> or <div class="block">Video scaling modes for <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink"><code>MediaCodec</code></a>-based renderers. One of <a href="C.html#VIDEO_SCALING_MODE_SCALE_TO_FIT"><code>C.VIDEO_SCALING_MODE_SCALE_TO_FIT</code></a>, <a href="C.html#VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING" target="_top"><code>C.VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING</code></a> or
<a href="C.html#VIDEO_SCALING_MODE_DEFAULT"><code>C.VIDEO_SCALING_MODE_DEFAULT</code></a>.</div> <a href="C.html#VIDEO_SCALING_MODE_DEFAULT"><code>C.VIDEO_SCALING_MODE_DEFAULT</code></a>.</div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">DefaultRenderersFactory.ExtensionRendererMode</span></pre> public static @interface <span class="memberNameLabel">DefaultRenderersFactory.ExtensionRendererMode</span></pre>
<div class="block">Modes for using extension renderers. One of <a href="DefaultRenderersFactory.html#EXTENSION_RENDERER_MODE_OFF"><code>DefaultRenderersFactory.EXTENSION_RENDERER_MODE_OFF</code></a>, <a href="DefaultRenderersFactory.html#EXTENSION_RENDERER_MODE_ON"><code>DefaultRenderersFactory.EXTENSION_RENDERER_MODE_ON</code></a> or <a href="DefaultRenderersFactory.html#EXTENSION_RENDERER_MODE_PREFER"><code>DefaultRenderersFactory.EXTENSION_RENDERER_MODE_PREFER</code></a>.</div> <div class="block">Modes for using extension renderers. One of <a href="DefaultRenderersFactory.html#EXTENSION_RENDERER_MODE_OFF"><code>DefaultRenderersFactory.EXTENSION_RENDERER_MODE_OFF</code></a>, <a href="DefaultRenderersFactory.html#EXTENSION_RENDERER_MODE_ON"><code>DefaultRenderersFactory.EXTENSION_RENDERER_MODE_ON</code></a> or <a href="DefaultRenderersFactory.html#EXTENSION_RENDERER_MODE_PREFER"><code>DefaultRenderersFactory.EXTENSION_RENDERER_MODE_PREFER</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">ExoPlaybackException.Type</span></pre> public static @interface <span class="memberNameLabel">ExoPlaybackException.Type</span></pre>
<div class="block">The type of source that produced the error. One of <a href="ExoPlaybackException.html#TYPE_SOURCE"><code>ExoPlaybackException.TYPE_SOURCE</code></a>, <a href="ExoPlaybackException.html#TYPE_RENDERER"><code>ExoPlaybackException.TYPE_RENDERER</code></a> <div class="block">The type of source that produced the error. One of <a href="ExoPlaybackException.html#TYPE_SOURCE"><code>ExoPlaybackException.TYPE_SOURCE</code></a>, <a href="ExoPlaybackException.html#TYPE_RENDERER"><code>ExoPlaybackException.TYPE_RENDERER</code></a>
<a href="ExoPlaybackException.html#TYPE_UNEXPECTED"><code>ExoPlaybackException.TYPE_UNEXPECTED</code></a> or <a href="ExoPlaybackException.html#TYPE_REMOTE"><code>ExoPlaybackException.TYPE_REMOTE</code></a>. Note that new types may be added in the <a href="ExoPlaybackException.html#TYPE_UNEXPECTED"><code>ExoPlaybackException.TYPE_UNEXPECTED</code></a> or <a href="ExoPlaybackException.html#TYPE_REMOTE"><code>ExoPlaybackException.TYPE_REMOTE</code></a>. Note that new types may be added in the
......
...@@ -237,7 +237,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop ...@@ -237,7 +237,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop
</td> </td>
</tr> </tr>
<tr class="rowColor"> <tr class="rowColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.FormatSupport int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#rendererFormatSupport">rendererFormatSupport</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#rendererFormatSupport">rendererFormatSupport</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">If <a href="#type"><code>type</code></a> is <a href="#TYPE_RENDERER"><code>TYPE_RENDERER</code></a>, this is the level of <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a> of the <div class="block">If <a href="#type"><code>type</code></a> is <a href="#TYPE_RENDERER"><code>TYPE_RENDERER</code></a>, this is the level of <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a> of the
...@@ -259,7 +259,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop ...@@ -259,7 +259,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop
</td> </td>
</tr> </tr>
<tr class="altColor"> <tr class="altColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.ExoPlaybackException.Type int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#type">type</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#type">type</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The <a href="ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2"><code>ExoPlaybackException.Type</code></a> of the playback failure.</div> <div class="block">The <a href="ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2"><code>ExoPlaybackException.Type</code></a> of the playback failure.</div>
...@@ -327,11 +327,11 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop ...@@ -327,11 +327,11 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop
</tr> </tr>
<tr id="i1" class="rowColor"> <tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></code></td> <td class="colFirst"><code>static <a href="ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createForRenderer(java.lang.Throwable,java.lang.String,int,com.google.android.exoplayer2.Format,int,boolean,@com.google.android.exoplayer2.PlaybackException.ErrorCodeint)">createForRenderer</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&nbsp;cause, <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createForRenderer(java.lang.Throwable,java.lang.String,int,com.google.android.exoplayer2.Format,@com.google.android.exoplayer2.C.FormatSupportint,boolean,@com.google.android.exoplayer2.PlaybackException.ErrorCodeint)">createForRenderer</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&nbsp;cause,
<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;rendererName, <a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;rendererName,
int&nbsp;rendererIndex, int&nbsp;rendererIndex,
<a href="Format.html" title="class in com.google.android.exoplayer2">Format</a>&nbsp;rendererFormat, <a href="Format.html" title="class in com.google.android.exoplayer2">Format</a>&nbsp;rendererFormat,
int&nbsp;rendererFormatSupport, @com.google.android.exoplayer2.C.FormatSupport int&nbsp;rendererFormatSupport,
boolean&nbsp;isRecoverable, boolean&nbsp;isRecoverable,
@com.google.android.exoplayer2.PlaybackException.ErrorCode int&nbsp;errorCode)</code></th> @com.google.android.exoplayer2.PlaybackException.ErrorCode int&nbsp;errorCode)</code></th>
<td class="colLast"> <td class="colLast">
...@@ -405,7 +405,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop ...@@ -405,7 +405,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop
<!-- --> <!-- -->
</a> </a>
<h3>Methods inherited from class&nbsp;com.google.android.exoplayer2.<a href="PlaybackException.html" title="class in com.google.android.exoplayer2">PlaybackException</a></h3> <h3>Methods inherited from class&nbsp;com.google.android.exoplayer2.<a href="PlaybackException.html" title="class in com.google.android.exoplayer2">PlaybackException</a></h3>
<code><a href="PlaybackException.html#getErrorCodeName()">getErrorCodeName</a>, <a href="PlaybackException.html#getErrorCodeName(@com.google.android.exoplayer2.PlaybackException.ErrorCodeint)">getErrorCodeName</a>, <a href="PlaybackException.html#keyForField(int)">keyForField</a></code></li> <code><a href="PlaybackException.html#getErrorCodeName()">getErrorCodeName</a>, <a href="PlaybackException.html#getErrorCodeName(@com.google.android.exoplayer2.PlaybackException.ErrorCodeint)">getErrorCodeName</a>, <a href="PlaybackException.html#keyForField(@com.google.android.exoplayer2.PlaybackException.FieldNumberint)">keyForField</a></code></li>
</ul> </ul>
<ul class="blockList"> <ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Throwable"> <li class="blockList"><a id="methods.inherited.from.class.java.lang.Throwable">
...@@ -508,7 +508,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop ...@@ -508,7 +508,7 @@ extends <a href="PlaybackException.html" title="class in com.google.android.exop
<li class="blockList"> <li class="blockList">
<h4>type</h4> <h4>type</h4>
<pre><a href="ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2">@Type</a> <pre><a href="ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2">@Type</a>
public final&nbsp;int type</pre> public final&nbsp;@com.google.android.exoplayer2.ExoPlaybackException.Type int type</pre>
<div class="block">The <a href="ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2"><code>ExoPlaybackException.Type</code></a> of the playback failure.</div> <div class="block">The <a href="ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2"><code>ExoPlaybackException.Type</code></a> of the playback failure.</div>
</li> </li>
</ul> </ul>
...@@ -552,7 +552,7 @@ public final&nbsp;<a href="Format.html" title="class in com.google.android.exopl ...@@ -552,7 +552,7 @@ public final&nbsp;<a href="Format.html" title="class in com.google.android.exopl
<li class="blockList"> <li class="blockList">
<h4>rendererFormatSupport</h4> <h4>rendererFormatSupport</h4>
<pre><a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2">@FormatSupport</a> <pre><a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2">@FormatSupport</a>
public final&nbsp;int rendererFormatSupport</pre> public final&nbsp;@com.google.android.exoplayer2.C.FormatSupport int rendererFormatSupport</pre>
<div class="block">If <a href="#type"><code>type</code></a> is <a href="#TYPE_RENDERER"><code>TYPE_RENDERER</code></a>, this is the level of <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a> of the <div class="block">If <a href="#type"><code>type</code></a> is <a href="#TYPE_RENDERER"><code>TYPE_RENDERER</code></a>, this is the level of <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a> of the
renderer for <a href="#rendererFormat"><code>rendererFormat</code></a>. If <a href="#rendererFormat"><code>rendererFormat</code></a> is null, this is <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a>.</div> renderer for <a href="#rendererFormat"><code>rendererFormat</code></a>. If <a href="#rendererFormat"><code>rendererFormat</code></a> is null, this is <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a>.</div>
</li> </li>
...@@ -606,7 +606,7 @@ public final&nbsp;<a href="source/MediaPeriodId.html" title="class in com.google ...@@ -606,7 +606,7 @@ public final&nbsp;<a href="source/MediaPeriodId.html" title="class in com.google
</dl> </dl>
</li> </li>
</ul> </ul>
<a id="createForRenderer(java.lang.Throwable,java.lang.String,int,com.google.android.exoplayer2.Format,int,boolean,@com.google.android.exoplayer2.PlaybackException.ErrorCodeint)"> <a id="createForRenderer(java.lang.Throwable,java.lang.String,int,com.google.android.exoplayer2.Format,@com.google.android.exoplayer2.C.FormatSupportint,boolean,@com.google.android.exoplayer2.PlaybackException.ErrorCodeint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockList"> <ul class="blockList">
...@@ -618,7 +618,7 @@ public final&nbsp;<a href="source/MediaPeriodId.html" title="class in com.google ...@@ -618,7 +618,7 @@ public final&nbsp;<a href="source/MediaPeriodId.html" title="class in com.google
@Nullable @Nullable
<a href="Format.html" title="class in com.google.android.exoplayer2">Format</a>&nbsp;rendererFormat, <a href="Format.html" title="class in com.google.android.exoplayer2">Format</a>&nbsp;rendererFormat,
<a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2">@FormatSupport</a> <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2">@FormatSupport</a>
int&nbsp;rendererFormatSupport, @com.google.android.exoplayer2.C.FormatSupport int&nbsp;rendererFormatSupport,
boolean&nbsp;isRecoverable, boolean&nbsp;isRecoverable,
<a href="PlaybackException.ErrorCode.html" title="annotation in com.google.android.exoplayer2">@ErrorCode</a> <a href="PlaybackException.ErrorCode.html" title="annotation in com.google.android.exoplayer2">@ErrorCode</a>
@com.google.android.exoplayer2.PlaybackException.ErrorCode int&nbsp;errorCode)</pre> @com.google.android.exoplayer2.PlaybackException.ErrorCode int&nbsp;errorCode)</pre>
......
...@@ -220,7 +220,7 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp ...@@ -220,7 +220,7 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp
</td> </td>
</tr> </tr>
<tr id="i7" class="rowColor"> <tr id="i7" class="rowColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.VideoChangeFrameRateStrategy int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVideoChangeFrameRateStrategy()">getVideoChangeFrameRateStrategy</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVideoChangeFrameRateStrategy()">getVideoChangeFrameRateStrategy</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span> <div class="block"><span class="deprecatedLabel">Deprecated.</span>
...@@ -229,7 +229,7 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp ...@@ -229,7 +229,7 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp
</td> </td>
</tr> </tr>
<tr id="i8" class="altColor"> <tr id="i8" class="altColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.VideoScalingMode int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVideoScalingMode()">getVideoScalingMode</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVideoScalingMode()">getVideoScalingMode</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span> <div class="block"><span class="deprecatedLabel">Deprecated.</span>
...@@ -257,10 +257,10 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp ...@@ -257,10 +257,10 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp
</tr> </tr>
<tr id="i11" class="rowColor"> <tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td> <td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoChangeFrameRateStrategy(int)">setVideoChangeFrameRateStrategy</a></span>&#8203;(int&nbsp;videoChangeFrameRateStrategy)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoChangeFrameRateStrategy(@com.google.android.exoplayer2.C.VideoChangeFrameRateStrategyint)">setVideoChangeFrameRateStrategy</a></span>&#8203;(@com.google.android.exoplayer2.C.VideoChangeFrameRateStrategy int&nbsp;videoChangeFrameRateStrategy)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span> <div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoChangeFrameRateStrategy(int)"><code>ExoPlayer.setVideoChangeFrameRateStrategy(int)</code></a> instead.</div> <div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoChangeFrameRateStrategy(@com.google.android.exoplayer2.C.VideoChangeFrameRateStrategyint)"><code>ExoPlayer.setVideoChangeFrameRateStrategy(int)</code></a> instead.</div>
</div> </div>
</td> </td>
</tr> </tr>
...@@ -276,10 +276,10 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp ...@@ -276,10 +276,10 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp
</tr> </tr>
<tr id="i13" class="rowColor"> <tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td> <td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoScalingMode(int)">setVideoScalingMode</a></span>&#8203;(int&nbsp;videoScalingMode)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoScalingMode(@com.google.android.exoplayer2.C.VideoScalingModeint)">setVideoScalingMode</a></span>&#8203;(@com.google.android.exoplayer2.C.VideoScalingMode int&nbsp;videoScalingMode)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span> <div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoScalingMode(int)"><code>ExoPlayer.setVideoScalingMode(int)</code></a> instead.</div> <div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoScalingMode(@com.google.android.exoplayer2.C.VideoScalingModeint)"><code>ExoPlayer.setVideoScalingMode(int)</code></a> instead.</div>
</div> </div>
</td> </td>
</tr> </tr>
...@@ -336,7 +336,7 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp ...@@ -336,7 +336,7 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp
<!-- --> <!-- -->
</a> </a>
<h3>Method Detail</h3> <h3>Method Detail</h3>
<a id="setVideoScalingMode(int)"> <a id="setVideoScalingMode(@com.google.android.exoplayer2.C.VideoScalingModeint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockList"> <ul class="blockList">
...@@ -344,9 +344,9 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp ...@@ -344,9 +344,9 @@ public static interface <span class="typeNameLabel">ExoPlayer.VideoComponent</sp
<h4>setVideoScalingMode</h4> <h4>setVideoScalingMode</h4>
<pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a> <pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
void&nbsp;setVideoScalingMode&#8203;(<a href="C.VideoScalingMode.html" title="annotation in com.google.android.exoplayer2">@VideoScalingMode</a> void&nbsp;setVideoScalingMode&#8203;(<a href="C.VideoScalingMode.html" title="annotation in com.google.android.exoplayer2">@VideoScalingMode</a>
int&nbsp;videoScalingMode)</pre> @com.google.android.exoplayer2.C.VideoScalingMode int&nbsp;videoScalingMode)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoScalingMode(int)"><code>ExoPlayer.setVideoScalingMode(int)</code></a> instead.</div> <div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoScalingMode(@com.google.android.exoplayer2.C.VideoScalingModeint)"><code>ExoPlayer.setVideoScalingMode(int)</code></a> instead.</div>
</div> </div>
</li> </li>
</ul> </ul>
...@@ -358,13 +358,13 @@ void&nbsp;setVideoScalingMode&#8203;(<a href="C.VideoScalingMode.html" title="an ...@@ -358,13 +358,13 @@ void&nbsp;setVideoScalingMode&#8203;(<a href="C.VideoScalingMode.html" title="an
<h4>getVideoScalingMode</h4> <h4>getVideoScalingMode</h4>
<pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a> <pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
<a href="C.VideoScalingMode.html" title="annotation in com.google.android.exoplayer2">@VideoScalingMode</a> <a href="C.VideoScalingMode.html" title="annotation in com.google.android.exoplayer2">@VideoScalingMode</a>
int&nbsp;getVideoScalingMode()</pre> @com.google.android.exoplayer2.C.VideoScalingMode int&nbsp;getVideoScalingMode()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="ExoPlayer.html#getVideoScalingMode()"><code>ExoPlayer.getVideoScalingMode()</code></a> instead.</div> <div class="deprecationComment">Use <a href="ExoPlayer.html#getVideoScalingMode()"><code>ExoPlayer.getVideoScalingMode()</code></a> instead.</div>
</div> </div>
</li> </li>
</ul> </ul>
<a id="setVideoChangeFrameRateStrategy(int)"> <a id="setVideoChangeFrameRateStrategy(@com.google.android.exoplayer2.C.VideoChangeFrameRateStrategyint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockList"> <ul class="blockList">
...@@ -372,9 +372,9 @@ int&nbsp;getVideoScalingMode()</pre> ...@@ -372,9 +372,9 @@ int&nbsp;getVideoScalingMode()</pre>
<h4>setVideoChangeFrameRateStrategy</h4> <h4>setVideoChangeFrameRateStrategy</h4>
<pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a> <pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
void&nbsp;setVideoChangeFrameRateStrategy&#8203;(<a href="C.VideoChangeFrameRateStrategy.html" title="annotation in com.google.android.exoplayer2">@VideoChangeFrameRateStrategy</a> void&nbsp;setVideoChangeFrameRateStrategy&#8203;(<a href="C.VideoChangeFrameRateStrategy.html" title="annotation in com.google.android.exoplayer2">@VideoChangeFrameRateStrategy</a>
int&nbsp;videoChangeFrameRateStrategy)</pre> @com.google.android.exoplayer2.C.VideoChangeFrameRateStrategy int&nbsp;videoChangeFrameRateStrategy)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoChangeFrameRateStrategy(int)"><code>ExoPlayer.setVideoChangeFrameRateStrategy(int)</code></a> instead.</div> <div class="deprecationComment">Use <a href="ExoPlayer.html#setVideoChangeFrameRateStrategy(@com.google.android.exoplayer2.C.VideoChangeFrameRateStrategyint)"><code>ExoPlayer.setVideoChangeFrameRateStrategy(int)</code></a> instead.</div>
</div> </div>
</li> </li>
</ul> </ul>
...@@ -386,7 +386,7 @@ void&nbsp;setVideoChangeFrameRateStrategy&#8203;(<a href="C.VideoChangeFrameRate ...@@ -386,7 +386,7 @@ void&nbsp;setVideoChangeFrameRateStrategy&#8203;(<a href="C.VideoChangeFrameRate
<h4>getVideoChangeFrameRateStrategy</h4> <h4>getVideoChangeFrameRateStrategy</h4>
<pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a> <pre class="methodSignature"><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
<a href="C.VideoChangeFrameRateStrategy.html" title="annotation in com.google.android.exoplayer2">@VideoChangeFrameRateStrategy</a> <a href="C.VideoChangeFrameRateStrategy.html" title="annotation in com.google.android.exoplayer2">@VideoChangeFrameRateStrategy</a>
int&nbsp;getVideoChangeFrameRateStrategy()</pre> @com.google.android.exoplayer2.C.VideoChangeFrameRateStrategy int&nbsp;getVideoChangeFrameRateStrategy()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="ExoPlayer.html#getVideoChangeFrameRateStrategy()"><code>ExoPlayer.getVideoChangeFrameRateStrategy()</code></a> instead.</div> <div class="deprecationComment">Use <a href="ExoPlayer.html#getVideoChangeFrameRateStrategy()"><code>ExoPlayer.getVideoChangeFrameRateStrategy()</code></a> instead.</div>
</div> </div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>({<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation" class="externalLink">FIELD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation" class="externalLink">METHOD</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation" class="externalLink">PARAMETER</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#LOCAL_VARIABLE" title="class or interface in java.lang.annotation" class="externalLink">LOCAL_VARIABLE</a>,<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>})
public static @interface <span class="memberNameLabel">ExoTimeoutException.TimeoutOperation</span></pre> public static @interface <span class="memberNameLabel">ExoTimeoutException.TimeoutOperation</span></pre>
<div class="block">The operation which produced the timeout error. One of <a href="ExoTimeoutException.html#TIMEOUT_OPERATION_RELEASE"><code>ExoTimeoutException.TIMEOUT_OPERATION_RELEASE</code></a>, <div class="block">The operation which produced the timeout error. One of <a href="ExoTimeoutException.html#TIMEOUT_OPERATION_RELEASE"><code>ExoTimeoutException.TIMEOUT_OPERATION_RELEASE</code></a>,
<a href="ExoTimeoutException.html#TIMEOUT_OPERATION_SET_FOREGROUND_MODE"><code>ExoTimeoutException.TIMEOUT_OPERATION_SET_FOREGROUND_MODE</code></a>, <a href="ExoTimeoutException.html#TIMEOUT_OPERATION_DETACH_SURFACE"><code>ExoTimeoutException.TIMEOUT_OPERATION_DETACH_SURFACE</code></a> or <a href="ExoTimeoutException.html#TIMEOUT_OPERATION_SET_FOREGROUND_MODE"><code>ExoTimeoutException.TIMEOUT_OPERATION_SET_FOREGROUND_MODE</code></a>, <a href="ExoTimeoutException.html#TIMEOUT_OPERATION_DETACH_SURFACE"><code>ExoTimeoutException.TIMEOUT_OPERATION_DETACH_SURFACE</code></a> or
......
...@@ -223,7 +223,7 @@ extends <a href="https://developer.android.com/reference/java/lang/RuntimeExcept ...@@ -223,7 +223,7 @@ extends <a href="https://developer.android.com/reference/java/lang/RuntimeExcept
</td> </td>
</tr> </tr>
<tr class="altColor"> <tr class="altColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperation int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#timeoutOperation">timeoutOperation</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#timeoutOperation">timeoutOperation</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The operation on the ExoPlayer playback thread that timed out.</div> <div class="block">The operation on the ExoPlayer playback thread that timed out.</div>
...@@ -247,7 +247,7 @@ extends <a href="https://developer.android.com/reference/java/lang/RuntimeExcept ...@@ -247,7 +247,7 @@ extends <a href="https://developer.android.com/reference/java/lang/RuntimeExcept
<th class="colLast" scope="col">Description</th> <th class="colLast" scope="col">Description</th>
</tr> </tr>
<tr class="altColor"> <tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int)">ExoTimeoutException</a></span>&#8203;(int&nbsp;timeoutOperation)</code></th> <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(@com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperationint)">ExoTimeoutException</a></span>&#8203;(@com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperation int&nbsp;timeoutOperation)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Creates the timeout exception.</div> <div class="block">Creates the timeout exception.</div>
</td> </td>
...@@ -356,7 +356,7 @@ extends <a href="https://developer.android.com/reference/java/lang/RuntimeExcept ...@@ -356,7 +356,7 @@ extends <a href="https://developer.android.com/reference/java/lang/RuntimeExcept
<li class="blockList"> <li class="blockList">
<h4>timeoutOperation</h4> <h4>timeoutOperation</h4>
<pre><a href="ExoTimeoutException.TimeoutOperation.html" title="annotation in com.google.android.exoplayer2">@TimeoutOperation</a> <pre><a href="ExoTimeoutException.TimeoutOperation.html" title="annotation in com.google.android.exoplayer2">@TimeoutOperation</a>
public final&nbsp;int timeoutOperation</pre> public final&nbsp;@com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperation int timeoutOperation</pre>
<div class="block">The operation on the ExoPlayer playback thread that timed out.</div> <div class="block">The operation on the ExoPlayer playback thread that timed out.</div>
</li> </li>
</ul> </ul>
...@@ -370,14 +370,14 @@ public final&nbsp;int timeoutOperation</pre> ...@@ -370,14 +370,14 @@ public final&nbsp;int timeoutOperation</pre>
<!-- --> <!-- -->
</a> </a>
<h3>Constructor Detail</h3> <h3>Constructor Detail</h3>
<a id="&lt;init&gt;(int)"> <a id="&lt;init&gt;(@com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperationint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockListLast"> <ul class="blockListLast">
<li class="blockList"> <li class="blockList">
<h4>ExoTimeoutException</h4> <h4>ExoTimeoutException</h4>
<pre>public&nbsp;ExoTimeoutException&#8203;(<a href="ExoTimeoutException.TimeoutOperation.html" title="annotation in com.google.android.exoplayer2">@TimeoutOperation</a> <pre>public&nbsp;ExoTimeoutException&#8203;(<a href="ExoTimeoutException.TimeoutOperation.html" title="annotation in com.google.android.exoplayer2">@TimeoutOperation</a>
int&nbsp;timeoutOperation)</pre> @com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperation int&nbsp;timeoutOperation)</pre>
<div class="block">Creates the timeout exception.</div> <div class="block">Creates the timeout exception.</div>
<dl> <dl>
<dt><span class="paramLabel">Parameters:</span></dt> <dt><span class="paramLabel">Parameters:</span></dt>
......
...@@ -325,7 +325,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -325,7 +325,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</tr> </tr>
<tr id="i20" class="altColor"> <tr id="i20" class="altColor">
<td class="colFirst"><code><a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a></code></td> <td class="colFirst"><code><a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPcmEncoding(int)">setPcmEncoding</a></span>&#8203;(int&nbsp;pcmEncoding)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPcmEncoding(@com.google.android.exoplayer2.C.PcmEncodingint)">setPcmEncoding</a></span>&#8203;(@com.google.android.exoplayer2.C.PcmEncoding int&nbsp;pcmEncoding)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets <a href="Format.html#pcmEncoding"><code>Format.pcmEncoding</code></a>.</div> <div class="block">Sets <a href="Format.html#pcmEncoding"><code>Format.pcmEncoding</code></a>.</div>
</td> </td>
...@@ -388,7 +388,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -388,7 +388,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</tr> </tr>
<tr id="i29" class="rowColor"> <tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a></code></td> <td class="colFirst"><code><a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setStereoMode(int)">setStereoMode</a></span>&#8203;(int&nbsp;stereoMode)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setStereoMode(@com.google.android.exoplayer2.C.StereoModeint)">setStereoMode</a></span>&#8203;(@com.google.android.exoplayer2.C.StereoMode int&nbsp;stereoMode)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets <a href="Format.html#stereoMode"><code>Format.stereoMode</code></a>.</div> <div class="block">Sets <a href="Format.html#stereoMode"><code>Format.stereoMode</code></a>.</div>
</td> </td>
...@@ -816,14 +816,13 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -816,14 +816,13 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</dl> </dl>
</li> </li>
</ul> </ul>
<a id="setStereoMode(int)"> <a id="setStereoMode(@com.google.android.exoplayer2.C.StereoModeint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockList"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<h4>setStereoMode</h4> <h4>setStereoMode</h4>
<pre class="methodSignature">public&nbsp;<a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a>&nbsp;setStereoMode&#8203;(<a href="C.StereoMode.html" title="annotation in com.google.android.exoplayer2">@StereoMode</a> <pre class="methodSignature">public&nbsp;<a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a>&nbsp;setStereoMode&#8203;(@com.google.android.exoplayer2.C.StereoMode int&nbsp;stereoMode)</pre>
int&nbsp;stereoMode)</pre>
<div class="block">Sets <a href="Format.html#stereoMode"><code>Format.stereoMode</code></a>. The default value is <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>.</div> <div class="block">Sets <a href="Format.html#stereoMode"><code>Format.stereoMode</code></a>. The default value is <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>.</div>
<dl> <dl>
<dt><span class="paramLabel">Parameters:</span></dt> <dt><span class="paramLabel">Parameters:</span></dt>
...@@ -882,14 +881,13 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -882,14 +881,13 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</dl> </dl>
</li> </li>
</ul> </ul>
<a id="setPcmEncoding(int)"> <a id="setPcmEncoding(@com.google.android.exoplayer2.C.PcmEncodingint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockList"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<h4>setPcmEncoding</h4> <h4>setPcmEncoding</h4>
<pre class="methodSignature">public&nbsp;<a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a>&nbsp;setPcmEncoding&#8203;(<a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2">@PcmEncoding</a> <pre class="methodSignature">public&nbsp;<a href="Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a>&nbsp;setPcmEncoding&#8203;(@com.google.android.exoplayer2.C.PcmEncoding int&nbsp;pcmEncoding)</pre>
int&nbsp;pcmEncoding)</pre>
<div class="block">Sets <a href="Format.html#pcmEncoding"><code>Format.pcmEncoding</code></a>. The default value is <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>.</div> <div class="block">Sets <a href="Format.html#pcmEncoding"><code>Format.pcmEncoding</code></a>. The default value is <a href="Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a>.</div>
<dl> <dl>
<dt><span class="paramLabel">Parameters:</span></dt> <dt><span class="paramLabel">Parameters:</span></dt>
......
...@@ -417,7 +417,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -417,7 +417,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
</td> </td>
</tr> </tr>
<tr class="altColor"> <tr class="altColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.PcmEncoding int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#pcmEncoding">pcmEncoding</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#pcmEncoding">pcmEncoding</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The <a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2"><code>C.PcmEncoding</code></a> for PCM audio.</div> <div class="block">The <a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2"><code>C.PcmEncoding</code></a> for PCM audio.</div>
...@@ -481,7 +481,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -481,7 +481,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
</td> </td>
</tr> </tr>
<tr class="rowColor"> <tr class="rowColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.StereoMode int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stereoMode">stereoMode</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stereoMode">stereoMode</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The stereo layout for 360/3D/VR video, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not applicable.</div> <div class="block">The stereo layout for 360/3D/VR video, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not applicable.</div>
...@@ -628,14 +628,14 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -628,14 +628,14 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
</tr> </tr>
<tr id="i12" class="altColor"> <tr id="i12" class="altColor">
<td class="colFirst"><code>static <a href="Format.html" title="class in com.google.android.exoplayer2">Format</a></code></td> <td class="colFirst"><code>static <a href="Format.html" title="class in com.google.android.exoplayer2">Format</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createAudioSampleFormat(java.lang.String,java.lang.String,java.lang.String,int,int,int,int,int,java.util.List,com.google.android.exoplayer2.drm.DrmInitData,@com.google.android.exoplayer2.C.SelectionFlagsint,java.lang.String)">createAudioSampleFormat</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;id, <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createAudioSampleFormat(java.lang.String,java.lang.String,java.lang.String,int,int,int,int,@com.google.android.exoplayer2.C.PcmEncodingint,java.util.List,com.google.android.exoplayer2.drm.DrmInitData,@com.google.android.exoplayer2.C.SelectionFlagsint,java.lang.String)">createAudioSampleFormat</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;id,
<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;sampleMimeType, <a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;sampleMimeType,
<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;codecs, <a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;codecs,
int&nbsp;bitrate, int&nbsp;bitrate,
int&nbsp;maxInputSize, int&nbsp;maxInputSize,
int&nbsp;channelCount, int&nbsp;channelCount,
int&nbsp;sampleRate, int&nbsp;sampleRate,
int&nbsp;pcmEncoding, @com.google.android.exoplayer2.C.PcmEncoding int&nbsp;pcmEncoding,
<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink" target="_top">List</a>&lt;byte[]&gt;&nbsp;initializationData, <a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink" target="_top">List</a>&lt;byte[]&gt;&nbsp;initializationData,
<a href="drm/DrmInitData.html" title="class in com.google.android.exoplayer2.drm">DrmInitData</a>&nbsp;drmInitData, <a href="drm/DrmInitData.html" title="class in com.google.android.exoplayer2.drm">DrmInitData</a>&nbsp;drmInitData,
@com.google.android.exoplayer2.C.SelectionFlags int&nbsp;selectionFlags, @com.google.android.exoplayer2.C.SelectionFlags int&nbsp;selectionFlags,
...@@ -902,7 +902,8 @@ public final&nbsp;@com.google.android.exoplayer2.C.RoleFlags int roleFlags</pre> ...@@ -902,7 +902,8 @@ public final&nbsp;@com.google.android.exoplayer2.C.RoleFlags int roleFlags</pre>
<ul> <ul>
<li>DASH representations: Always <a href="#NO_VALUE"><code>NO_VALUE</code></a>. <li>DASH representations: Always <a href="#NO_VALUE"><code>NO_VALUE</code></a>.
<li>HLS variants: The <code>AVERAGE-BANDWIDTH</code> attribute defined on the corresponding <code> <li>HLS variants: The <code>AVERAGE-BANDWIDTH</code> attribute defined on the corresponding <code>
EXT-X-STREAM-INF</code> tag in the master playlist, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not present. EXT-X-STREAM-INF</code> tag in the multivariant playlist, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not
present.
<li>SmoothStreaming track elements: The <code>Bitrate</code> attribute defined on the <li>SmoothStreaming track elements: The <code>Bitrate</code> attribute defined on the
corresponding <code>TrackElement</code> in the manifest, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not corresponding <code>TrackElement</code> in the manifest, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not
present. present.
...@@ -1108,8 +1109,7 @@ public final&nbsp;byte[] projectionData</pre> ...@@ -1108,8 +1109,7 @@ public final&nbsp;byte[] projectionData</pre>
<ul class="blockList"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<h4>stereoMode</h4> <h4>stereoMode</h4>
<pre><a href="C.StereoMode.html" title="annotation in com.google.android.exoplayer2">@StereoMode</a> <pre>public final&nbsp;@com.google.android.exoplayer2.C.StereoMode int stereoMode</pre>
public final&nbsp;int stereoMode</pre>
<div class="block">The stereo layout for 360/3D/VR video, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not applicable. Valid stereo <div class="block">The stereo layout for 360/3D/VR video, or <a href="#NO_VALUE"><code>NO_VALUE</code></a> if not applicable. Valid stereo
modes are <a href="C.html#STEREO_MODE_MONO"><code>C.STEREO_MODE_MONO</code></a>, <a href="C.html#STEREO_MODE_TOP_BOTTOM"><code>C.STEREO_MODE_TOP_BOTTOM</code></a>, <a href="C.html#STEREO_MODE_LEFT_RIGHT"><code>C.STEREO_MODE_LEFT_RIGHT</code></a>, <a href="C.html#STEREO_MODE_STEREO_MESH"><code>C.STEREO_MODE_STEREO_MESH</code></a>.</div> modes are <a href="C.html#STEREO_MODE_MONO"><code>C.STEREO_MODE_MONO</code></a>, <a href="C.html#STEREO_MODE_TOP_BOTTOM"><code>C.STEREO_MODE_TOP_BOTTOM</code></a>, <a href="C.html#STEREO_MODE_LEFT_RIGHT"><code>C.STEREO_MODE_LEFT_RIGHT</code></a>, <a href="C.html#STEREO_MODE_STEREO_MESH"><code>C.STEREO_MODE_STEREO_MESH</code></a>.</div>
</li> </li>
...@@ -1151,8 +1151,7 @@ public final&nbsp;<a href="video/ColorInfo.html" title="class in com.google.andr ...@@ -1151,8 +1151,7 @@ public final&nbsp;<a href="video/ColorInfo.html" title="class in com.google.andr
<ul class="blockList"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<h4>pcmEncoding</h4> <h4>pcmEncoding</h4>
<pre><a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2">@PcmEncoding</a> <pre>public final&nbsp;@com.google.android.exoplayer2.C.PcmEncoding int pcmEncoding</pre>
public final&nbsp;int pcmEncoding</pre>
<div class="block">The <a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2"><code>C.PcmEncoding</code></a> for PCM audio. Set to <a href="#NO_VALUE"><code>NO_VALUE</code></a> for other media types.</div> <div class="block">The <a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2"><code>C.PcmEncoding</code></a> for PCM audio. Set to <a href="#NO_VALUE"><code>NO_VALUE</code></a> for other media types.</div>
</li> </li>
</ul> </ul>
...@@ -1305,7 +1304,7 @@ public static&nbsp;<a href="Format.html" title="class in com.google.android.exop ...@@ -1305,7 +1304,7 @@ public static&nbsp;<a href="Format.html" title="class in com.google.android.exop
</div> </div>
</li> </li>
</ul> </ul>
<a id="createAudioSampleFormat(java.lang.String,java.lang.String,java.lang.String,int,int,int,int,int,java.util.List,com.google.android.exoplayer2.drm.DrmInitData,@com.google.android.exoplayer2.C.SelectionFlagsint,java.lang.String)"> <a id="createAudioSampleFormat(java.lang.String,java.lang.String,java.lang.String,int,int,int,int,@com.google.android.exoplayer2.C.PcmEncodingint,java.util.List,com.google.android.exoplayer2.drm.DrmInitData,@com.google.android.exoplayer2.C.SelectionFlagsint,java.lang.String)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockList"> <ul class="blockList">
...@@ -1322,8 +1321,7 @@ public static&nbsp;<a href="Format.html" title="class in com.google.android.exop ...@@ -1322,8 +1321,7 @@ public static&nbsp;<a href="Format.html" title="class in com.google.android.exop
int&nbsp;maxInputSize, int&nbsp;maxInputSize,
int&nbsp;channelCount, int&nbsp;channelCount,
int&nbsp;sampleRate, int&nbsp;sampleRate,
<a href="C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2">@PcmEncoding</a> @com.google.android.exoplayer2.C.PcmEncoding int&nbsp;pcmEncoding,
int&nbsp;pcmEncoding,
@Nullable @Nullable
<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink" target="_top">List</a>&lt;byte[]&gt;&nbsp;initializationData, <a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink" target="_top">List</a>&lt;byte[]&gt;&nbsp;initializationData,
@Nullable @Nullable
......
...@@ -196,7 +196,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -196,7 +196,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</td> </td>
</tr> </tr>
<tr class="rowColor"> <tr class="rowColor">
<td class="colFirst"><code><a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a>&gt;</code></td> <td class="colFirst"><code><a href="https://guava.dev/releases/31.0.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#subtitleConfigurations">subtitleConfigurations</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#subtitleConfigurations">subtitleConfigurations</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Optional subtitles to be sideloaded.</div> <div class="block">Optional subtitles to be sideloaded.</div>
...@@ -350,7 +350,7 @@ public final&nbsp;<a href="https://developer.android.com/reference/java/lang/Str ...@@ -350,7 +350,7 @@ public final&nbsp;<a href="https://developer.android.com/reference/java/lang/Str
<ul class="blockList"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<h4>subtitleConfigurations</h4> <h4>subtitleConfigurations</h4>
<pre>public final&nbsp;<a href="https://guava.dev/releases/27.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a>&gt; subtitleConfigurations</pre> <pre>public final&nbsp;<a href="https://guava.dev/releases/31.0.1-android/api/docs/com/google/common/collect/ImmutableList.html?is-external=true" title="class or interface in com.google.common.collect" class="externalLink">ImmutableList</a>&lt;<a href="MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a>&gt; subtitleConfigurations</pre>
<div class="block">Optional subtitles to be sideloaded.</div> <div class="block">Optional subtitles to be sideloaded.</div>
</li> </li>
</ul> </ul>
......
...@@ -173,7 +173,7 @@ extends <a href="MediaItem.SubtitleConfiguration.html" title="class in com.googl ...@@ -173,7 +173,7 @@ extends <a href="MediaItem.SubtitleConfiguration.html" title="class in com.googl
<!-- --> <!-- -->
</a> </a>
<h3>Fields inherited from class&nbsp;com.google.android.exoplayer2.<a href="MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a></h3> <h3>Fields inherited from class&nbsp;com.google.android.exoplayer2.<a href="MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a></h3>
<code><a href="MediaItem.SubtitleConfiguration.html#label">label</a>, <a href="MediaItem.SubtitleConfiguration.html#language">language</a>, <a href="MediaItem.SubtitleConfiguration.html#mimeType">mimeType</a>, <a href="MediaItem.SubtitleConfiguration.html#roleFlags">roleFlags</a>, <a href="MediaItem.SubtitleConfiguration.html#selectionFlags">selectionFlags</a>, <a href="MediaItem.SubtitleConfiguration.html#uri">uri</a></code></li> <code><a href="MediaItem.SubtitleConfiguration.html#id">id</a>, <a href="MediaItem.SubtitleConfiguration.html#label">label</a>, <a href="MediaItem.SubtitleConfiguration.html#language">language</a>, <a href="MediaItem.SubtitleConfiguration.html#mimeType">mimeType</a>, <a href="MediaItem.SubtitleConfiguration.html#roleFlags">roleFlags</a>, <a href="MediaItem.SubtitleConfiguration.html#selectionFlags">selectionFlags</a>, <a href="MediaItem.SubtitleConfiguration.html#uri">uri</a></code></li>
</ul> </ul>
</li> </li>
</ul> </ul>
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
catch(err) { catch(err) {
} }
//--> //-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10}; var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor"; var altColor = "altColor";
var rowColor = "rowColor"; var rowColor = "rowColor";
...@@ -188,40 +188,47 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -188,40 +188,47 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</tr> </tr>
<tr id="i1" class="rowColor"> <tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td> <td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setId(java.lang.String)">setId</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;id)</code></th>
<td class="colLast">
<div class="block">Sets the optional ID for this subtitle track.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLabel(java.lang.String)">setLabel</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;label)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLabel(java.lang.String)">setLabel</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;label)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the optional label for this subtitle track.</div> <div class="block">Sets the optional label for this subtitle track.</div>
</td> </td>
</tr> </tr>
<tr id="i2" class="altColor"> <tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td> <td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLanguage(java.lang.String)">setLanguage</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;language)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLanguage(java.lang.String)">setLanguage</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;language)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the optional language of the subtitle file.</div> <div class="block">Sets the optional language of the subtitle file.</div>
</td> </td>
</tr> </tr>
<tr id="i3" class="rowColor"> <tr id="i4" class="altColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td> <td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMimeType(java.lang.String)">setMimeType</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;mimeType)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMimeType(java.lang.String)">setMimeType</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;mimeType)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the MIME type.</div> <div class="block">Sets the MIME type.</div>
</td> </td>
</tr> </tr>
<tr id="i4" class="altColor"> <tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td> <td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setRoleFlags(@com.google.android.exoplayer2.C.RoleFlagsint)">setRoleFlags</a></span>&#8203;(@com.google.android.exoplayer2.C.RoleFlags int&nbsp;roleFlags)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setRoleFlags(@com.google.android.exoplayer2.C.RoleFlagsint)">setRoleFlags</a></span>&#8203;(@com.google.android.exoplayer2.C.RoleFlags int&nbsp;roleFlags)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the role flags.</div> <div class="block">Sets the role flags.</div>
</td> </td>
</tr> </tr>
<tr id="i5" class="rowColor"> <tr id="i6" class="altColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td> <td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setSelectionFlags(@com.google.android.exoplayer2.C.SelectionFlagsint)">setSelectionFlags</a></span>&#8203;(@com.google.android.exoplayer2.C.SelectionFlags int&nbsp;selectionFlags)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setSelectionFlags(@com.google.android.exoplayer2.C.SelectionFlagsint)">setSelectionFlags</a></span>&#8203;(@com.google.android.exoplayer2.C.SelectionFlags int&nbsp;selectionFlags)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the flags used for track selection.</div> <div class="block">Sets the flags used for track selection.</div>
</td> </td>
</tr> </tr>
<tr id="i6" class="altColor"> <tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td> <td class="colFirst"><code><a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUri(android.net.Uri)">setUri</a></span>&#8203;(<a href="https://developer.android.com/reference/android/net/Uri.html" title="class or interface in android.net" class="externalLink" target="_top">Uri</a>&nbsp;uri)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUri(android.net.Uri)">setUri</a></span>&#8203;(<a href="https://developer.android.com/reference/android/net/Uri.html" title="class or interface in android.net" class="externalLink" target="_top">Uri</a>&nbsp;uri)</code></th>
<td class="colLast"> <td class="colLast">
...@@ -340,6 +347,17 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -340,6 +347,17 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<div class="block">Sets the optional label for this subtitle track.</div> <div class="block">Sets the optional label for this subtitle track.</div>
</li> </li>
</ul> </ul>
<a id="setId(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setId</h4>
<pre class="methodSignature">public&nbsp;<a href="MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a>&nbsp;setId&#8203;(@Nullable
<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;id)</pre>
<div class="block">Sets the optional ID for this subtitle track.</div>
</li>
</ul>
<a id="build()"> <a id="build()">
<!-- --> <!-- -->
</a> </a>
......
...@@ -187,40 +187,47 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -187,40 +187,47 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
</tr> </tr>
<tr class="altColor"> <tr class="altColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td> <td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#id">id</a></span></code></th>
<td class="colLast">
<div class="block">The ID of the subtitles.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#label">label</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#label">label</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The label.</div> <div class="block">The label.</div>
</td> </td>
</tr> </tr>
<tr class="rowColor"> <tr class="altColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td> <td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#language">language</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#language">language</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The language.</div> <div class="block">The language.</div>
</td> </td>
</tr> </tr>
<tr class="altColor"> <tr class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td> <td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#mimeType">mimeType</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#mimeType">mimeType</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The optional MIME type of the subtitle file, or <code>null</code> if unspecified.</div> <div class="block">The optional MIME type of the subtitle file, or <code>null</code> if unspecified.</div>
</td> </td>
</tr> </tr>
<tr class="rowColor"> <tr class="altColor">
<td class="colFirst"><code>@com.google.android.exoplayer2.C.RoleFlags int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.RoleFlags int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#roleFlags">roleFlags</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#roleFlags">roleFlags</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The role flags.</div> <div class="block">The role flags.</div>
</td> </td>
</tr> </tr>
<tr class="altColor"> <tr class="rowColor">
<td class="colFirst"><code>@com.google.android.exoplayer2.C.SelectionFlags int</code></td> <td class="colFirst"><code>@com.google.android.exoplayer2.C.SelectionFlags int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#selectionFlags">selectionFlags</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#selectionFlags">selectionFlags</a></span></code></th>
<td class="colLast"> <td class="colLast">
<div class="block">The selection flags.</div> <div class="block">The selection flags.</div>
</td> </td>
</tr> </tr>
<tr class="rowColor"> <tr class="altColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/android/net/Uri.html" title="class or interface in android.net" class="externalLink" target="_top">Uri</a></code></td> <td class="colFirst"><code><a href="https://developer.android.com/reference/android/net/Uri.html" title="class or interface in android.net" class="externalLink" target="_top">Uri</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#uri">uri</a></span></code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#uri">uri</a></span></code></th>
<td class="colLast"> <td class="colLast">
...@@ -343,7 +350,7 @@ public final&nbsp;@com.google.android.exoplayer2.C.RoleFlags int roleFlags</pre> ...@@ -343,7 +350,7 @@ public final&nbsp;@com.google.android.exoplayer2.C.RoleFlags int roleFlags</pre>
<a id="label"> <a id="label">
<!-- --> <!-- -->
</a> </a>
<ul class="blockListLast"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<h4>label</h4> <h4>label</h4>
<pre>@Nullable <pre>@Nullable
...@@ -351,6 +358,18 @@ public final&nbsp;<a href="https://developer.android.com/reference/java/lang/Str ...@@ -351,6 +358,18 @@ public final&nbsp;<a href="https://developer.android.com/reference/java/lang/Str
<div class="block">The label.</div> <div class="block">The label.</div>
</li> </li>
</ul> </ul>
<a id="id">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>id</h4>
<pre>@Nullable
public final&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a> id</pre>
<div class="block">The ID of the subtitles. This will be propagated to the <a href="Format.html#id"><code>Format.id</code></a> of the subtitle
track created from this configuration.</div>
</li>
</ul>
</li> </li>
</ul> </ul>
</section> </section>
......
...@@ -213,10 +213,10 @@ extends <a href="https://developer.android.com/reference/java/io/IOException.htm ...@@ -213,10 +213,10 @@ extends <a href="https://developer.android.com/reference/java/io/IOException.htm
</tr> </tr>
<tr class="altColor"> <tr class="altColor">
<td class="colFirst"><code>protected </code></td> <td class="colFirst"><code>protected </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String,java.lang.Throwable,boolean,int)">ParserException</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;message, <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String,java.lang.Throwable,boolean,@com.google.android.exoplayer2.C.DataTypeint)">ParserException</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;message,
<a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&nbsp;cause, <a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&nbsp;cause,
boolean&nbsp;contentIsMalformed, boolean&nbsp;contentIsMalformed,
int&nbsp;dataType)</code></th> @com.google.android.exoplayer2.C.DataType int&nbsp;dataType)</code></th>
<td class="colLast">&nbsp;</td> <td class="colLast">&nbsp;</td>
</tr> </tr>
</table> </table>
...@@ -343,7 +343,7 @@ extends <a href="https://developer.android.com/reference/java/io/IOException.htm ...@@ -343,7 +343,7 @@ extends <a href="https://developer.android.com/reference/java/io/IOException.htm
<!-- --> <!-- -->
</a> </a>
<h3>Constructor Detail</h3> <h3>Constructor Detail</h3>
<a id="&lt;init&gt;(java.lang.String,java.lang.Throwable,boolean,int)"> <a id="&lt;init&gt;(java.lang.String,java.lang.Throwable,boolean,@com.google.android.exoplayer2.C.DataTypeint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockListLast"> <ul class="blockListLast">
...@@ -354,8 +354,7 @@ extends <a href="https://developer.android.com/reference/java/io/IOException.htm ...@@ -354,8 +354,7 @@ extends <a href="https://developer.android.com/reference/java/io/IOException.htm
@Nullable @Nullable
<a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&nbsp;cause, <a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&nbsp;cause,
boolean&nbsp;contentIsMalformed, boolean&nbsp;contentIsMalformed,
<a href="C.DataType.html" title="annotation in com.google.android.exoplayer2">@DataType</a> @com.google.android.exoplayer2.C.DataType int&nbsp;dataType)</pre>
int&nbsp;dataType)</pre>
</li> </li>
</ul> </ul>
</li> </li>
......
...@@ -115,9 +115,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,9 +115,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
protected static @interface <span class="memberNameLabel">PlaybackException.FieldNumber</span></pre> protected static @interface <span class="memberNameLabel">PlaybackException.FieldNumber</span></pre>
<div class="block">Identifiers for fields in a <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle</code></a> which represents a playback exception. Subclasses <div class="block">Identifiers for fields in a <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle</code></a> which represents a playback exception. Subclasses
may use <a href="PlaybackException.html#FIELD_CUSTOM_ID_BASE"><code>PlaybackException.FIELD_CUSTOM_ID_BASE</code></a> to generate more keys using <a href="PlaybackException.html#keyForField(int)"><code>PlaybackException.keyForField(int)</code></a>. may use <a href="PlaybackException.html#FIELD_CUSTOM_ID_BASE"><code>PlaybackException.FIELD_CUSTOM_ID_BASE</code></a> to generate more keys using <a href="PlaybackException.html#keyForField(@com.google.android.exoplayer2.PlaybackException.FieldNumberint)"><code>PlaybackException.keyForField(int)</code></a>.
<p>Note: Changes to the Bundleable implementation must be backwards compatible, so as to avoid <p>Note: Changes to the Bundleable implementation must be backwards compatible, so as to avoid
breaking communication across different Bundleable implementation versions.</div> breaking communication across different Bundleable implementation versions.</div>
......
...@@ -578,7 +578,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -578,7 +578,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
</tr> </tr>
<tr id="i3" class="rowColor"> <tr id="i3" class="rowColor">
<td class="colFirst"><code>protected static <a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td> <td class="colFirst"><code>protected static <a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#keyForField(int)">keyForField</a></span>&#8203;(int&nbsp;field)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#keyForField(@com.google.android.exoplayer2.PlaybackException.FieldNumberint)">keyForField</a></span>&#8203;(@com.google.android.exoplayer2.PlaybackException.FieldNumber int&nbsp;field)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Converts the given <a href="PlaybackException.FieldNumber.html" title="annotation in com.google.android.exoplayer2"><code>PlaybackException.FieldNumber</code></a> to a string which can be used as a field key when <div class="block">Converts the given <a href="PlaybackException.FieldNumber.html" title="annotation in com.google.android.exoplayer2"><code>PlaybackException.FieldNumber</code></a> to a string which can be used as a field key when
implementing <a href="#toBundle()"><code>toBundle()</code></a> and <a href="Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>.</div> implementing <a href="#toBundle()"><code>toBundle()</code></a> and <a href="Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>.</div>
...@@ -1173,7 +1173,7 @@ public final&nbsp;@com.google.android.exoplayer2.PlaybackException.ErrorCode int ...@@ -1173,7 +1173,7 @@ public final&nbsp;@com.google.android.exoplayer2.PlaybackException.ErrorCode int
and <a href="Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>. and <a href="Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>.
<p>Subclasses should obtain their <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle's</code></a> field keys by applying a non-negative <p>Subclasses should obtain their <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle's</code></a> field keys by applying a non-negative
offset on this constant and passing the result to <a href="#keyForField(int)"><code>keyForField(int)</code></a>.</div> offset on this constant and passing the result to <a href="#keyForField(@com.google.android.exoplayer2.PlaybackException.FieldNumberint)"><code>keyForField(int)</code></a>.</div>
<dl> <dl>
<dt><span class="seeLabel">See Also:</span></dt> <dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.google.android.exoplayer2.PlaybackException.FIELD_CUSTOM_ID_BASE">Constant Field Values</a></dd> <dd><a href="../../../../constant-values.html#com.google.android.exoplayer2.PlaybackException.FIELD_CUSTOM_ID_BASE">Constant Field Values</a></dd>
...@@ -1309,14 +1309,13 @@ public&nbsp;<a href="https://developer.android.com/reference/android/os/Bundle.h ...@@ -1309,14 +1309,13 @@ public&nbsp;<a href="https://developer.android.com/reference/android/os/Bundle.h
</dl> </dl>
</li> </li>
</ul> </ul>
<a id="keyForField(int)"> <a id="keyForField(@com.google.android.exoplayer2.PlaybackException.FieldNumberint)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockListLast"> <ul class="blockListLast">
<li class="blockList"> <li class="blockList">
<h4>keyForField</h4> <h4>keyForField</h4>
<pre class="methodSignature">protected static&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;keyForField&#8203;(<a href="PlaybackException.FieldNumber.html" title="annotation in com.google.android.exoplayer2" target="_top">@FieldNumber</a> <pre class="methodSignature">protected static&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html" title="class or interface in java.lang" class="externalLink" target="_top">String</a>&nbsp;keyForField&#8203;(@com.google.android.exoplayer2.PlaybackException.FieldNumber int&nbsp;field)</pre>
int&nbsp;field)</pre>
<div class="block">Converts the given <a href="PlaybackException.FieldNumber.html" title="annotation in com.google.android.exoplayer2"><code>PlaybackException.FieldNumber</code></a> to a string which can be used as a field key when <div class="block">Converts the given <a href="PlaybackException.FieldNumber.html" title="annotation in com.google.android.exoplayer2"><code>PlaybackException.FieldNumber</code></a> to a string which can be used as a field key when
implementing <a href="#toBundle()"><code>toBundle()</code></a> and <a href="Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>.</div> implementing <a href="#toBundle()"><code>toBundle()</code></a> and <a href="Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>.</div>
</li> </li>
......
...@@ -157,7 +157,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -157,7 +157,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</tr> </tr>
<tr id="i0" class="altColor"> <tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td> <td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#handleMessage(int,java.lang.Object)">handleMessage</a></span>&#8203;(int&nbsp;messageType, <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)">handleMessage</a></span>&#8203;(@com.google.android.exoplayer2.Renderer.MessageType int&nbsp;messageType,
<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;message)</code></th> <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;message)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Handles a message delivered to the target.</div> <div class="block">Handles a message delivered to the target.</div>
...@@ -180,14 +180,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -180,14 +180,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<!-- --> <!-- -->
</a> </a>
<h3>Method Detail</h3> <h3>Method Detail</h3>
<a id="handleMessage(int,java.lang.Object)"> <a id="handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)">
<!-- --> <!-- -->
</a> </a>
<ul class="blockListLast"> <ul class="blockListLast">
<li class="blockList"> <li class="blockList">
<h4>handleMessage</h4> <h4>handleMessage</h4>
<pre class="methodSignature">void&nbsp;handleMessage&#8203;(<a href="Renderer.MessageType.html" title="annotation in com.google.android.exoplayer2">@MessageType</a> <pre class="methodSignature">void&nbsp;handleMessage&#8203;(@com.google.android.exoplayer2.Renderer.MessageType int&nbsp;messageType,
int&nbsp;messageType,
@Nullable @Nullable
<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;message) <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;message)
throws <a href="ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></pre> throws <a href="ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></pre>
......
...@@ -260,7 +260,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -260,7 +260,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></code></td> <td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPayload()">getPayload</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPayload()">getPayload</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Returns the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Returns the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
</td> </td>
</tr> </tr>
<tr id="i7" class="rowColor"> <tr id="i7" class="rowColor">
...@@ -289,7 +289,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -289,7 +289,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getType()">getType</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getType()">getType</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Returns the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Returns the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
</td> </td>
</tr> </tr>
<tr id="i11" class="rowColor"> <tr id="i11" class="rowColor">
...@@ -340,7 +340,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -340,7 +340,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<td class="colFirst"><code><a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a></code></td> <td class="colFirst"><code><a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPayload(java.lang.Object)">setPayload</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;payload)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPayload(java.lang.Object)">setPayload</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;payload)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Sets the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
</td> </td>
</tr> </tr>
<tr id="i18" class="altColor"> <tr id="i18" class="altColor">
...@@ -362,7 +362,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -362,7 +362,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<td class="colFirst"><code><a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a></code></td> <td class="colFirst"><code><a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setType(int)">setType</a></span>&#8203;(int&nbsp;messageType)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setType(int)">setType</a></span>&#8203;(int&nbsp;messageType)</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Sets the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Sets the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
</td> </td>
</tr> </tr>
</table> </table>
...@@ -453,7 +453,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -453,7 +453,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<li class="blockList"> <li class="blockList">
<h4>setType</h4> <h4>setType</h4>
<pre class="methodSignature">public&nbsp;<a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a>&nbsp;setType&#8203;(int&nbsp;messageType)</pre> <pre class="methodSignature">public&nbsp;<a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a>&nbsp;setType&#8203;(int&nbsp;messageType)</pre>
<div class="block">Sets the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Sets the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
<dl> <dl>
<dt><span class="paramLabel">Parameters:</span></dt> <dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>messageType</code> - The message type.</dd> <dd><code>messageType</code> - The message type.</dd>
...@@ -471,7 +471,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -471,7 +471,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<li class="blockList"> <li class="blockList">
<h4>getType</h4> <h4>getType</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getType()</pre> <pre class="methodSignature">public&nbsp;int&nbsp;getType()</pre>
<div class="block">Returns the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Returns the message type forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
</li> </li>
</ul> </ul>
<a id="setPayload(java.lang.Object)"> <a id="setPayload(java.lang.Object)">
...@@ -482,7 +482,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -482,7 +482,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<h4>setPayload</h4> <h4>setPayload</h4>
<pre class="methodSignature">public&nbsp;<a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a>&nbsp;setPayload&#8203;(@Nullable <pre class="methodSignature">public&nbsp;<a href="PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a>&nbsp;setPayload&#8203;(@Nullable
<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;payload)</pre> <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;payload)</pre>
<div class="block">Sets the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Sets the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
<dl> <dl>
<dt><span class="paramLabel">Parameters:</span></dt> <dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>payload</code> - The message payload.</dd> <dd><code>payload</code> - The message payload.</dd>
...@@ -501,7 +501,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html" ...@@ -501,7 +501,7 @@ extends <a href="https://developer.android.com/reference/java/lang/Object.html"
<h4>getPayload</h4> <h4>getPayload</h4>
<pre class="methodSignature">@Nullable <pre class="methodSignature">@Nullable
public&nbsp;<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;getPayload()</pre> public&nbsp;<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;getPayload()</pre>
<div class="block">Returns the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(int,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div> <div class="block">Returns the message payload forwarded to <a href="PlayerMessage.Target.html#handleMessage(@com.google.android.exoplayer2.Renderer.MessageTypeint,java.lang.Object)"><code>PlayerMessage.Target.handleMessage(int, Object)</code></a>.</div>
</li> </li>
</ul> </ul>
<a id="setHandler(android.os.Handler)"> <a id="setHandler(android.os.Handler)">
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">Renderer.MessageType</span></pre> public static @interface <span class="memberNameLabel">Renderer.MessageType</span></pre>
<div class="block">Represents a type of message that can be passed to a renderer. May be one of <a href="Renderer.html#MSG_SET_VIDEO_OUTPUT"><code>Renderer.MSG_SET_VIDEO_OUTPUT</code></a>, <a href="Renderer.html#MSG_SET_VOLUME"><code>Renderer.MSG_SET_VOLUME</code></a>, <a href="Renderer.html#MSG_SET_AUDIO_ATTRIBUTES"><code>Renderer.MSG_SET_AUDIO_ATTRIBUTES</code></a>, <a href="Renderer.html#MSG_SET_SCALING_MODE"><code>Renderer.MSG_SET_SCALING_MODE</code></a>, <a href="Renderer.html#MSG_SET_CHANGE_FRAME_RATE_STRATEGY"><code>Renderer.MSG_SET_CHANGE_FRAME_RATE_STRATEGY</code></a>, <a href="Renderer.html#MSG_SET_AUX_EFFECT_INFO"><code>Renderer.MSG_SET_AUX_EFFECT_INFO</code></a>, <a href="Renderer.html#MSG_SET_VIDEO_FRAME_METADATA_LISTENER"><code>Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER</code></a>, <a href="Renderer.html#MSG_SET_CAMERA_MOTION_LISTENER"><code>Renderer.MSG_SET_CAMERA_MOTION_LISTENER</code></a>, <a href="Renderer.html#MSG_SET_SKIP_SILENCE_ENABLED"><code>Renderer.MSG_SET_SKIP_SILENCE_ENABLED</code></a>, <a href="Renderer.html#MSG_SET_AUDIO_SESSION_ID"><code>Renderer.MSG_SET_AUDIO_SESSION_ID</code></a> or <a href="Renderer.html#MSG_SET_WAKEUP_LISTENER"><code>Renderer.MSG_SET_WAKEUP_LISTENER</code></a>. May also be an app-defined <div class="block">Represents a type of message that can be passed to a renderer. May be one of <a href="Renderer.html#MSG_SET_VIDEO_OUTPUT"><code>Renderer.MSG_SET_VIDEO_OUTPUT</code></a>, <a href="Renderer.html#MSG_SET_VOLUME"><code>Renderer.MSG_SET_VOLUME</code></a>, <a href="Renderer.html#MSG_SET_AUDIO_ATTRIBUTES"><code>Renderer.MSG_SET_AUDIO_ATTRIBUTES</code></a>, <a href="Renderer.html#MSG_SET_SCALING_MODE"><code>Renderer.MSG_SET_SCALING_MODE</code></a>, <a href="Renderer.html#MSG_SET_CHANGE_FRAME_RATE_STRATEGY"><code>Renderer.MSG_SET_CHANGE_FRAME_RATE_STRATEGY</code></a>, <a href="Renderer.html#MSG_SET_AUX_EFFECT_INFO"><code>Renderer.MSG_SET_AUX_EFFECT_INFO</code></a>, <a href="Renderer.html#MSG_SET_VIDEO_FRAME_METADATA_LISTENER"><code>Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER</code></a>, <a href="Renderer.html#MSG_SET_CAMERA_MOTION_LISTENER"><code>Renderer.MSG_SET_CAMERA_MOTION_LISTENER</code></a>, <a href="Renderer.html#MSG_SET_SKIP_SILENCE_ENABLED"><code>Renderer.MSG_SET_SKIP_SILENCE_ENABLED</code></a>, <a href="Renderer.html#MSG_SET_AUDIO_SESSION_ID"><code>Renderer.MSG_SET_AUDIO_SESSION_ID</code></a> or <a href="Renderer.html#MSG_SET_WAKEUP_LISTENER"><code>Renderer.MSG_SET_WAKEUP_LISTENER</code></a>. May also be an app-defined
value (see <a href="Renderer.html#MSG_CUSTOM_BASE"><code>Renderer.MSG_CUSTOM_BASE</code></a>).</div> value (see <a href="Renderer.html#MSG_CUSTOM_BASE"><code>Renderer.MSG_CUSTOM_BASE</code></a>).</div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">Renderer.State</span></pre> public static @interface <span class="memberNameLabel">Renderer.State</span></pre>
<div class="block">The renderer states. One of <a href="Renderer.html#STATE_DISABLED"><code>Renderer.STATE_DISABLED</code></a>, <a href="Renderer.html#STATE_ENABLED"><code>Renderer.STATE_ENABLED</code></a> or <a href="Renderer.html#STATE_STARTED"><code>Renderer.STATE_STARTED</code></a>.</div> <div class="block">The renderer states. One of <a href="Renderer.html#STATE_DISABLED"><code>Renderer.STATE_DISABLED</code></a>, <a href="Renderer.html#STATE_ENABLED"><code>Renderer.STATE_ENABLED</code></a> or <a href="Renderer.html#STATE_STARTED"><code>Renderer.STATE_STARTED</code></a>.</div>
</li> </li>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">RendererCapabilities.AdaptiveSupport</span></pre> public static @interface <span class="memberNameLabel">RendererCapabilities.AdaptiveSupport</span></pre>
<div class="block">Level of renderer support for adaptive format switches. One of <a href="RendererCapabilities.html#ADAPTIVE_SEAMLESS"><code>RendererCapabilities.ADAPTIVE_SEAMLESS</code></a>, <div class="block">Level of renderer support for adaptive format switches. One of <a href="RendererCapabilities.html#ADAPTIVE_SEAMLESS"><code>RendererCapabilities.ADAPTIVE_SEAMLESS</code></a>,
<a href="RendererCapabilities.html#ADAPTIVE_NOT_SEAMLESS"><code>RendererCapabilities.ADAPTIVE_NOT_SEAMLESS</code></a> or <a href="RendererCapabilities.html#ADAPTIVE_NOT_SUPPORTED"><code>RendererCapabilities.ADAPTIVE_NOT_SUPPORTED</code></a>.</div> <a href="RendererCapabilities.html#ADAPTIVE_NOT_SEAMLESS"><code>RendererCapabilities.ADAPTIVE_NOT_SEAMLESS</code></a> or <a href="RendererCapabilities.html#ADAPTIVE_NOT_SUPPORTED"><code>RendererCapabilities.ADAPTIVE_NOT_SUPPORTED</code></a>.</div>
......
...@@ -115,12 +115,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,12 +115,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">RendererCapabilities.Capabilities</span></pre> public static @interface <span class="memberNameLabel">RendererCapabilities.Capabilities</span></pre>
<div class="block">Combined renderer capabilities. <div class="block">Combined renderer capabilities.
<p>This is a bitwise OR of <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a>, <a href="RendererCapabilities.AdaptiveSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.AdaptiveSupport</code></a> and <a href="RendererCapabilities.TunnelingSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.TunnelingSupport</code></a>. Use <a href="RendererCapabilities.html#getFormatSupport(int)"><code>RendererCapabilities.getFormatSupport(int)</code></a>, <a href="RendererCapabilities.html#getAdaptiveSupport(int)"><code>RendererCapabilities.getAdaptiveSupport(int)</code></a> or <p>This is a bitwise OR of <a href="C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a>, <a href="RendererCapabilities.AdaptiveSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.AdaptiveSupport</code></a>, <a href="RendererCapabilities.TunnelingSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.TunnelingSupport</code></a>, <a href="RendererCapabilities.HardwareAccelerationSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.HardwareAccelerationSupport</code></a> and <a href="RendererCapabilities.DecoderSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.DecoderSupport</code></a>. Use <a href="RendererCapabilities.html#getFormatSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilitiesint)"><code>RendererCapabilities.getFormatSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilities int)</code></a>, <a href="RendererCapabilities.html#getAdaptiveSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilitiesint)"><code>RendererCapabilities.getAdaptiveSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilities int)</code></a>, <a href="RendererCapabilities.html#getTunnelingSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilitiesint)"><code>RendererCapabilities.getTunnelingSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilities int)</code></a>, <a href="RendererCapabilities.html#getHardwareAccelerationSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilitiesint)"><code>RendererCapabilities.getHardwareAccelerationSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilities int)</code></a> and <a href="RendererCapabilities.html#getDecoderSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilitiesint)"><code>RendererCapabilities.getDecoderSupport(@com.google.android.exoplayer2.RendererCapabilities.Capabilities int)</code></a> to obtain individual
<a href="RendererCapabilities.html#getTunnelingSupport(int)"><code>RendererCapabilities.getTunnelingSupport(int)</code></a> to obtain the individual flags. And use <a href="RendererCapabilities.html#create(int)"><code>RendererCapabilities.create(int)</code></a> components. Use <a href="RendererCapabilities.html#create(@com.google.android.exoplayer2.C.FormatSupportint)"><code>RendererCapabilities.create(int)</code></a>, <a href="RendererCapabilities.html#create(@com.google.android.exoplayer2.C.FormatSupportint,@com.google.android.exoplayer2.RendererCapabilities.AdaptiveSupportint,@com.google.android.exoplayer2.RendererCapabilities.TunnelingSupportint)"><code>RendererCapabilities.create(int, int, int)</code></a> or <a href="RendererCapabilities.html#create(@com.google.android.exoplayer2.C.FormatSupportint,@com.google.android.exoplayer2.RendererCapabilities.AdaptiveSupportint,@com.google.android.exoplayer2.RendererCapabilities.TunnelingSupportint,@com.google.android.exoplayer2.RendererCapabilities.HardwareAccelerationSupportint,@com.google.android.exoplayer2.RendererCapabilities.DecoderSupportint)"><code>RendererCapabilities.create(int,
or <a href="RendererCapabilities.html#create(int,int,int)"><code>RendererCapabilities.create(int, int, int)</code></a> to create the combined capabilities. int, int, int, int)</code></a> to create combined capabilities from individual components.
<p>Possible values: <p>Possible values:
...@@ -131,6 +132,9 @@ public static @interface <span class="memberNameLabel">RendererCapabilities.Capa ...@@ -131,6 +132,9 @@ public static @interface <span class="memberNameLabel">RendererCapabilities.Capa
support for the format itself is <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a> or <a href="C.html#FORMAT_EXCEEDS_CAPABILITIES"><code>C.FORMAT_EXCEEDS_CAPABILITIES</code></a>. support for the format itself is <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a> or <a href="C.html#FORMAT_EXCEEDS_CAPABILITIES"><code>C.FORMAT_EXCEEDS_CAPABILITIES</code></a>.
<li><a href="RendererCapabilities.TunnelingSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.TunnelingSupport</code></a>: The level of support for tunneling. One of <a href="RendererCapabilities.html#TUNNELING_SUPPORTED"><code>RendererCapabilities.TUNNELING_SUPPORTED</code></a> and <a href="RendererCapabilities.html#TUNNELING_NOT_SUPPORTED"><code>RendererCapabilities.TUNNELING_NOT_SUPPORTED</code></a>. Only set if the level of <li><a href="RendererCapabilities.TunnelingSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.TunnelingSupport</code></a>: The level of support for tunneling. One of <a href="RendererCapabilities.html#TUNNELING_SUPPORTED"><code>RendererCapabilities.TUNNELING_SUPPORTED</code></a> and <a href="RendererCapabilities.html#TUNNELING_NOT_SUPPORTED"><code>RendererCapabilities.TUNNELING_NOT_SUPPORTED</code></a>. Only set if the level of
support for the format itself is <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a> or <a href="C.html#FORMAT_EXCEEDS_CAPABILITIES"><code>C.FORMAT_EXCEEDS_CAPABILITIES</code></a>. support for the format itself is <a href="C.html#FORMAT_HANDLED"><code>C.FORMAT_HANDLED</code></a> or <a href="C.html#FORMAT_EXCEEDS_CAPABILITIES"><code>C.FORMAT_EXCEEDS_CAPABILITIES</code></a>.
<li><a href="RendererCapabilities.HardwareAccelerationSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.HardwareAccelerationSupport</code></a>: The level of support for hardware acceleration. One
of <a href="RendererCapabilities.html#HARDWARE_ACCELERATION_SUPPORTED"><code>RendererCapabilities.HARDWARE_ACCELERATION_SUPPORTED</code></a> and <a href="RendererCapabilities.html#HARDWARE_ACCELERATION_NOT_SUPPORTED"><code>RendererCapabilities.HARDWARE_ACCELERATION_NOT_SUPPORTED</code></a>.
<li><a href="RendererCapabilities.DecoderSupport.html" title="annotation in com.google.android.exoplayer2"><code>RendererCapabilities.DecoderSupport</code></a>: The level of decoder support. One of <a href="RendererCapabilities.html#DECODER_SUPPORT_PRIMARY"><code>RendererCapabilities.DECODER_SUPPORT_PRIMARY</code></a> and <a href="RendererCapabilities.html#DECODER_SUPPORT_FALLBACK"><code>RendererCapabilities.DECODER_SUPPORT_FALLBACK</code></a>.
</ul></div> </ul></div>
</li> </li>
</ul> </ul>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!-- NewPage --> <!-- NewPage -->
<html lang="en"> <html lang="en">
<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet --> <head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet -->
<title>C.AudioManagerOffloadMode (ExoPlayer library)</title> <title>RendererCapabilities.DecoderSupport (ExoPlayer library)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style"> <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<script type="text/javascript"><!-- <script type="text/javascript"><!--
try { try {
if (location.href.indexOf('is-external=true') == -1) { if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="C.AudioManagerOffloadMode (ExoPlayer library)"; parent.document.title="RendererCapabilities.DecoderSupport (ExoPlayer library)";
} }
} }
catch(err) { catch(err) {
...@@ -106,16 +106,20 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -106,16 +106,20 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<main role="main"> <main role="main">
<div class="header"> <div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2</a></div> <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2</a></div>
<h2 title="Annotation Type C.AudioManagerOffloadMode" class="title">Annotation Type C.AudioManagerOffloadMode</h2> <h2 title="Annotation Type RendererCapabilities.DecoderSupport" class="title">Annotation Type RendererCapabilities.DecoderSupport</h2>
</div> </div>
<div class="contentContainer"> <div class="contentContainer">
<div class="description"> <div class="description">
<ul class="blockList"> <ul class="blockList">
<li class="blockList"> <li class="blockList">
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
public static @interface <span class="memberNameLabel">C.AudioManagerOffloadMode</span></pre> <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<div class="block">Playback offload mode. One of <a href="C.html#PLAYBACK_OFFLOAD_NOT_SUPPORTED"><code>C.PLAYBACK_OFFLOAD_NOT_SUPPORTED</code></a>,<a href="C.html#PLAYBACK_OFFLOAD_SUPPORTED"><code>C.PLAYBACK_OFFLOAD_SUPPORTED</code></a> or <a href="C.html#PLAYBACK_OFFLOAD_GAPLESS_SUPPORTED"><code>C.PLAYBACK_OFFLOAD_GAPLESS_SUPPORTED</code></a>.</div> <a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">RendererCapabilities.DecoderSupport</span></pre>
<div class="block">Level of decoder support. One of <a href="RendererCapabilities.html#DECODER_SUPPORT_PRIMARY"><code>RendererCapabilities.DECODER_SUPPORT_PRIMARY</code></a> and <a href="RendererCapabilities.html#DECODER_SUPPORT_FALLBACK"><code>RendererCapabilities.DECODER_SUPPORT_FALLBACK</code></a>.
<p>For video renderers, the level of support is indicated for non-tunneled output.</div>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
<a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a> <a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
public static @interface <span class="memberNameLabel">RendererCapabilities.FormatSupport</span></pre> public static @interface <span class="memberNameLabel">RendererCapabilities.FormatSupport</span></pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span> <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
......
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet -->
<title>RendererCapabilities.HardwareAccelerationSupport (ExoPlayer library)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RendererCapabilities.HardwareAccelerationSupport (ExoPlayer library)";
}
}
catch(err) {
}
//-->
var pathtoroot = "../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li>Optional</li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Element</li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2</a></div>
<h2 title="Annotation Type RendererCapabilities.HardwareAccelerationSupport" class="title">Annotation Type RendererCapabilities.HardwareAccelerationSupport</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">RendererCapabilities.HardwareAccelerationSupport</span></pre>
<div class="block">Level of renderer support for hardware acceleration. One of <a href="RendererCapabilities.html#HARDWARE_ACCELERATION_SUPPORTED"><code>RendererCapabilities.HARDWARE_ACCELERATION_SUPPORTED</code></a> and <a href="RendererCapabilities.html#HARDWARE_ACCELERATION_NOT_SUPPORTED"><code>RendererCapabilities.HARDWARE_ACCELERATION_NOT_SUPPORTED</code></a>.
<p>For video renderers, the level of support is indicated for non-tunneled output.</div>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li>Optional</li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Element</li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>
...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); ...@@ -115,6 +115,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<hr> <hr>
<pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a> <pre><a href="https://developer.android.com/reference/java/lang/annotation/Documented.html" title="class or interface in java.lang.annotation" class="externalLink" target="_top">@Documented</a>
<a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>) <a href="https://developer.android.com/reference/java/lang/annotation/Retention.html" title="class or interface in java.lang.annotation" class="externalLink">@Retention</a>(<a href="https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html?is-external=true#SOURCE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">SOURCE</a>)
<a href="https://developer.android.com/reference/java/lang/annotation/Target.html" title="class or interface in java.lang.annotation" class="externalLink">@Target</a>(<a href="https://developer.android.com/reference/java/lang/annotation/ElementType.html?is-external=true#TYPE_USE" title="class or interface in java.lang.annotation" class="externalLink" target="_top">TYPE_USE</a>)
public static @interface <span class="memberNameLabel">RendererCapabilities.TunnelingSupport</span></pre> public static @interface <span class="memberNameLabel">RendererCapabilities.TunnelingSupport</span></pre>
<div class="block">Level of renderer support for tunneling. One of <a href="RendererCapabilities.html#TUNNELING_SUPPORTED"><code>RendererCapabilities.TUNNELING_SUPPORTED</code></a> or <a href="RendererCapabilities.html#TUNNELING_NOT_SUPPORTED"><code>RendererCapabilities.TUNNELING_NOT_SUPPORTED</code></a>.</div> <div class="block">Level of renderer support for tunneling. One of <a href="RendererCapabilities.html#TUNNELING_SUPPORTED"><code>RendererCapabilities.TUNNELING_SUPPORTED</code></a> or <a href="RendererCapabilities.html#TUNNELING_NOT_SUPPORTED"><code>RendererCapabilities.TUNNELING_NOT_SUPPORTED</code></a>.</div>
</li> </li>
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
catch(err) { catch(err) {
} }
//--> //-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10}; var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor"; var altColor = "altColor";
var rowColor = "rowColor"; var rowColor = "rowColor";
...@@ -346,6 +346,15 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -346,6 +346,15 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
</td> </td>
</tr> </tr>
<tr id="i9" class="rowColor"> <tr id="i9" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAdState(int,int)">getAdState</a></span>&#8203;(int&nbsp;adGroupIndex,
int&nbsp;adIndexInAdGroup)</code></th>
<td class="colLast">
<div class="block">Returns the state of the ad at index <code>adIndexInAdGroup</code> in the ad group at <code>
adGroupIndex</code>, or <a href="source/ads/AdPlaybackState.html#AD_STATE_UNAVAILABLE"><code>AdPlaybackState.AD_STATE_UNAVAILABLE</code></a> if not yet known.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>long</code></td> <td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContentResumeOffsetUs(int)">getContentResumeOffsetUs</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContentResumeOffsetUs(int)">getContentResumeOffsetUs</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th>
<td class="colLast"> <td class="colLast">
...@@ -353,21 +362,21 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -353,21 +362,21 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
playback after the specified ad group.</div> playback after the specified ad group.</div>
</td> </td>
</tr> </tr>
<tr id="i10" class="altColor"> <tr id="i11" class="rowColor">
<td class="colFirst"><code>long</code></td> <td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDurationMs()">getDurationMs</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDurationMs()">getDurationMs</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Returns the duration of the period in milliseconds, or <a href="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> if unknown.</div> <div class="block">Returns the duration of the period in milliseconds, or <a href="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> if unknown.</div>
</td> </td>
</tr> </tr>
<tr id="i11" class="rowColor"> <tr id="i12" class="altColor">
<td class="colFirst"><code>long</code></td> <td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDurationUs()">getDurationUs</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDurationUs()">getDurationUs</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Returns the duration of this period in microseconds, or <a href="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> if unknown.</div> <div class="block">Returns the duration of this period in microseconds, or <a href="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> if unknown.</div>
</td> </td>
</tr> </tr>
<tr id="i12" class="altColor"> <tr id="i13" class="rowColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFirstAdIndexToPlay(int)">getFirstAdIndexToPlay</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFirstAdIndexToPlay(int)">getFirstAdIndexToPlay</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th>
<td class="colLast"> <td class="colLast">
...@@ -375,7 +384,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -375,7 +384,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
number of ads in the ad group if no ads should be played.</div> number of ads in the ad group if no ads should be played.</div>
</td> </td>
</tr> </tr>
<tr id="i13" class="rowColor"> <tr id="i14" class="altColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNextAdIndexToPlay(int,int)">getNextAdIndexToPlay</a></span>&#8203;(int&nbsp;adGroupIndex, <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNextAdIndexToPlay(int,int)">getNextAdIndexToPlay</a></span>&#8203;(int&nbsp;adGroupIndex,
int&nbsp;lastPlayedAdIndex)</code></th> int&nbsp;lastPlayedAdIndex)</code></th>
...@@ -385,7 +394,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -385,7 +394,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
be played.</div> be played.</div>
</td> </td>
</tr> </tr>
<tr id="i14" class="altColor"> <tr id="i15" class="rowColor">
<td class="colFirst"><code>long</code></td> <td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPositionInWindowMs()">getPositionInWindowMs</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPositionInWindowMs()">getPositionInWindowMs</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
...@@ -393,7 +402,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -393,7 +402,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
it belongs, in milliseconds.</div> it belongs, in milliseconds.</div>
</td> </td>
</tr> </tr>
<tr id="i15" class="rowColor"> <tr id="i16" class="altColor">
<td class="colFirst"><code>long</code></td> <td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPositionInWindowUs()">getPositionInWindowUs</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPositionInWindowUs()">getPositionInWindowUs</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
...@@ -401,19 +410,19 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -401,19 +410,19 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
it belongs, in microseconds.</div> it belongs, in microseconds.</div>
</td> </td>
</tr> </tr>
<tr id="i16" class="altColor"> <tr id="i17" class="rowColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRemovedAdGroupCount()">getRemovedAdGroupCount</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRemovedAdGroupCount()">getRemovedAdGroupCount</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
<div class="block">Returns the number of removed ad groups in the period.</div> <div class="block">Returns the number of removed ad groups in the period.</div>
</td> </td>
</tr> </tr>
<tr id="i17" class="rowColor"> <tr id="i18" class="altColor">
<td class="colFirst"><code>int</code></td> <td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
<td class="colLast">&nbsp;</td> <td class="colLast">&nbsp;</td>
</tr> </tr>
<tr id="i18" class="altColor"> <tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td> <td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasPlayedAdGroup(int)">hasPlayedAdGroup</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasPlayedAdGroup(int)">hasPlayedAdGroup</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th>
<td class="colLast"> <td class="colLast">
...@@ -421,7 +430,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -421,7 +430,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
skipped or failed.</div> skipped or failed.</div>
</td> </td>
</tr> </tr>
<tr id="i19" class="rowColor"> <tr id="i20" class="altColor">
<td class="colFirst"><code>boolean</code></td> <td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isServerSideInsertedAdGroup(int)">isServerSideInsertedAdGroup</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isServerSideInsertedAdGroup(int)">isServerSideInsertedAdGroup</a></span>&#8203;(int&nbsp;adGroupIndex)</code></th>
<td class="colLast"> <td class="colLast">
...@@ -429,7 +438,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -429,7 +438,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
of the content stream.</div> of the content stream.</div>
</td> </td>
</tr> </tr>
<tr id="i20" class="altColor"> <tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="Timeline.Period.html" title="class in com.google.android.exoplayer2">Timeline.Period</a></code></td> <td class="colFirst"><code><a href="Timeline.Period.html" title="class in com.google.android.exoplayer2">Timeline.Period</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#set(java.lang.Object,java.lang.Object,int,long,long)">set</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;id, <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#set(java.lang.Object,java.lang.Object,int,long,long)">set</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;id,
<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;uid, <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;uid,
...@@ -440,7 +449,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -440,7 +449,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
<div class="block">Sets the data held by this period.</div> <div class="block">Sets the data held by this period.</div>
</td> </td>
</tr> </tr>
<tr id="i21" class="rowColor"> <tr id="i22" class="altColor">
<td class="colFirst"><code><a href="Timeline.Period.html" title="class in com.google.android.exoplayer2">Timeline.Period</a></code></td> <td class="colFirst"><code><a href="Timeline.Period.html" title="class in com.google.android.exoplayer2">Timeline.Period</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#set(java.lang.Object,java.lang.Object,int,long,long,com.google.android.exoplayer2.source.ads.AdPlaybackState,boolean)">set</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;id, <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#set(java.lang.Object,java.lang.Object,int,long,long,com.google.android.exoplayer2.source.ads.AdPlaybackState,boolean)">set</a></span>&#8203;(<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;id,
<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;uid, <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;uid,
...@@ -453,7 +462,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop ...@@ -453,7 +462,7 @@ implements <a href="Bundleable.html" title="interface in com.google.android.exop
<div class="block">Sets the data held by this period.</div> <div class="block">Sets the data held by this period.</div>
</td> </td>
</tr> </tr>
<tr id="i22" class="altColor"> <tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top">Bundle</a></code></td> <td class="colFirst"><code><a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top">Bundle</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toBundle()">toBundle</a></span>()</code></th> <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toBundle()">toBundle</a></span>()</code></th>
<td class="colLast"> <td class="colLast">
...@@ -882,6 +891,25 @@ public&nbsp;<a href="https://developer.android.com/reference/java/lang/Object.ht ...@@ -882,6 +891,25 @@ public&nbsp;<a href="https://developer.android.com/reference/java/lang/Object.ht
</dl> </dl>
</li> </li>
</ul> </ul>
<a id="getAdState(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAdState</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getAdState&#8203;(int&nbsp;adGroupIndex,
int&nbsp;adIndexInAdGroup)</pre>
<div class="block">Returns the state of the ad at index <code>adIndexInAdGroup</code> in the ad group at <code>
adGroupIndex</code>, or <a href="source/ads/AdPlaybackState.html#AD_STATE_UNAVAILABLE"><code>AdPlaybackState.AD_STATE_UNAVAILABLE</code></a> if not yet known.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>adGroupIndex</code> - The ad group index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The state of the ad, or <a href="source/ads/AdPlaybackState.html#AD_STATE_UNAVAILABLE"><code>AdPlaybackState.AD_STATE_UNAVAILABLE</code></a> if not yet
known.</dd>
</dl>
</li>
</ul>
<a id="getAdResumePositionUs()"> <a id="getAdResumePositionUs()">
<!-- --> <!-- -->
</a> </a>
......
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment