Mark all non-public IntDefs as only TYPE_USE
This only changes IntDefs that cannot be used by apps because they're either private or package-private. A follow-up change will fix the positions of existing usages to match this new config. #minor-release PiperOrigin-RevId: 426372273
This commit is contained in:
parent
f6baffc490
commit
8149ac8922
@ -18,6 +18,7 @@ package androidx.media3.common;
|
|||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -30,6 +31,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import org.checkerframework.checker.nullness.compatqual.NullableType;
|
import org.checkerframework.checker.nullness.compatqual.NullableType;
|
||||||
@ -343,6 +345,7 @@ public final class AdPlaybackState implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TIME_US,
|
FIELD_TIME_US,
|
||||||
FIELD_COUNT,
|
FIELD_COUNT,
|
||||||
@ -913,6 +916,7 @@ public final class AdPlaybackState implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_AD_GROUPS,
|
FIELD_AD_GROUPS,
|
||||||
FIELD_AD_RESUME_POSITION_US,
|
FIELD_AD_RESUME_POSITION_US,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.DoNotInline;
|
import androidx.annotation.DoNotInline;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -25,6 +27,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -180,6 +183,7 @@ public final class AudioAttributes implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_CONTENT_TYPE,
|
FIELD_CONTENT_TYPE,
|
||||||
FIELD_FLAGS,
|
FIELD_FLAGS,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -22,6 +24,7 @@ import androidx.media3.common.util.UnstableApi;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import org.checkerframework.dataflow.qual.Pure;
|
import org.checkerframework.dataflow.qual.Pure;
|
||||||
|
|
||||||
@ -163,6 +166,7 @@ public final class ColorInfo implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_COLOR_SPACE,
|
FIELD_COLOR_SPACE,
|
||||||
FIELD_COLOR_RANGE,
|
FIELD_COLOR_RANGE,
|
||||||
|
@ -89,6 +89,7 @@ public final class DeviceInfo implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_PLAYBACK_TYPE, FIELD_MIN_VOLUME, FIELD_MAX_VOLUME})
|
@IntDef({FIELD_PLAYBACK_TYPE, FIELD_MIN_VOLUME, FIELD_MAX_VOLUME})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -25,6 +27,7 @@ import com.google.common.base.Joiner;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -1417,6 +1420,7 @@ public final class Format implements Bundleable {
|
|||||||
// Bundleable implementation.
|
// Bundleable implementation.
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_ID,
|
FIELD_ID,
|
||||||
FIELD_LABEL,
|
FIELD_LABEL,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -25,6 +26,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A rating expressed as "heart" or "no heart". It can be used to indicate whether the content is a
|
* A rating expressed as "heart" or "no heart". It can be used to indicate whether the content is a
|
||||||
@ -81,6 +83,7 @@ public final class HeartRating extends Rating {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_RATING_TYPE, FIELD_RATED, FIELD_IS_HEART})
|
@IntDef({FIELD_RATING_TYPE, FIELD_RATED, FIELD_IS_HEART})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ package androidx.media3.common;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -31,6 +32,7 @@ import com.google.common.collect.ImmutableMap;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -1210,6 +1212,7 @@ public final class MediaItem implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TARGET_OFFSET_MS,
|
FIELD_TARGET_OFFSET_MS,
|
||||||
FIELD_MIN_OFFSET_MS,
|
FIELD_MIN_OFFSET_MS,
|
||||||
@ -1625,6 +1628,7 @@ public final class MediaItem implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_START_POSITION_MS,
|
FIELD_START_POSITION_MS,
|
||||||
FIELD_END_POSITION_MS,
|
FIELD_END_POSITION_MS,
|
||||||
@ -1773,6 +1777,7 @@ public final class MediaItem implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_MEDIA_ID,
|
FIELD_MEDIA_ID,
|
||||||
FIELD_LIVE_CONFIGURATION,
|
FIELD_LIVE_CONFIGURATION,
|
||||||
|
@ -833,6 +833,7 @@ public final class MediaMetadata implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TITLE,
|
FIELD_TITLE,
|
||||||
FIELD_ARTIST,
|
FIELD_ARTIST,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.FloatRange;
|
import androidx.annotation.FloatRange;
|
||||||
@ -26,6 +27,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** A rating expressed as a percentage. */
|
/** A rating expressed as a percentage. */
|
||||||
public final class PercentageRating extends Rating {
|
public final class PercentageRating extends Rating {
|
||||||
@ -79,6 +81,7 @@ public final class PercentageRating extends Rating {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_RATING_TYPE, FIELD_PERCENT})
|
@IntDef({FIELD_RATING_TYPE, FIELD_PERCENT})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.CheckResult;
|
import androidx.annotation.CheckResult;
|
||||||
import androidx.annotation.FloatRange;
|
import androidx.annotation.FloatRange;
|
||||||
@ -26,6 +28,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** Parameters that apply to playback, including speed setting. */
|
/** Parameters that apply to playback, including speed setting. */
|
||||||
public final class PlaybackParameters implements Bundleable {
|
public final class PlaybackParameters implements Bundleable {
|
||||||
@ -121,6 +124,7 @@ public final class PlaybackParameters implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_SPEED, FIELD_PITCH})
|
@IntDef({FIELD_SPEED, FIELD_PITCH})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -598,6 +598,7 @@ public interface Player {
|
|||||||
// Bundleable implementation.
|
// Bundleable implementation.
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_MEDIA_ITEM_INDEX,
|
FIELD_MEDIA_ITEM_INDEX,
|
||||||
FIELD_MEDIA_ITEM,
|
FIELD_MEDIA_ITEM,
|
||||||
@ -895,6 +896,7 @@ public interface Player {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_COMMANDS})
|
@IntDef({FIELD_COMMANDS})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -15,12 +15,15 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.util.UnstableApi;
|
import androidx.media3.common.util.UnstableApi;
|
||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A rating for media content. The style of a rating can be one of {@link HeartRating}, {@link
|
* A rating for media content. The style of a rating can be one of {@link HeartRating}, {@link
|
||||||
@ -41,6 +44,7 @@ public abstract class Rating implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
RATING_TYPE_UNSET,
|
RATING_TYPE_UNSET,
|
||||||
RATING_TYPE_HEART,
|
RATING_TYPE_HEART,
|
||||||
@ -58,6 +62,7 @@ public abstract class Rating implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_RATING_TYPE})
|
@IntDef({FIELD_RATING_TYPE})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.FloatRange;
|
import androidx.annotation.FloatRange;
|
||||||
@ -27,6 +28,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** A rating expressed as a fractional number of stars. */
|
/** A rating expressed as a fractional number of stars. */
|
||||||
public final class StarRating extends Rating {
|
public final class StarRating extends Rating {
|
||||||
@ -106,6 +108,7 @@ public final class StarRating extends Rating {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_RATING_TYPE, FIELD_MAX_STARS, FIELD_STAR_RATING})
|
@IntDef({FIELD_RATING_TYPE, FIELD_MAX_STARS, FIELD_STAR_RATING})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -25,6 +26,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** A rating expressed as "thumbs up" or "thumbs down". */
|
/** A rating expressed as "thumbs up" or "thumbs down". */
|
||||||
public final class ThumbRating extends Rating {
|
public final class ThumbRating extends Rating {
|
||||||
@ -78,6 +80,7 @@ public final class ThumbRating extends Rating {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_RATING_TYPE, FIELD_RATED, FIELD_IS_THUMBS_UP})
|
@IntDef({FIELD_RATING_TYPE, FIELD_RATED, FIELD_IS_THUMBS_UP})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -20,6 +20,7 @@ import static androidx.media3.common.util.Assertions.checkArgument;
|
|||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -37,6 +38,7 @@ import com.google.errorprone.annotations.InlineMe;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -414,6 +416,7 @@ public abstract class Timeline implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_MEDIA_ITEM,
|
FIELD_MEDIA_ITEM,
|
||||||
FIELD_PRESENTATION_START_TIME_MS,
|
FIELD_PRESENTATION_START_TIME_MS,
|
||||||
@ -903,6 +906,7 @@ public abstract class Timeline implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_WINDOW_INDEX,
|
FIELD_WINDOW_INDEX,
|
||||||
FIELD_DURATION_US,
|
FIELD_DURATION_US,
|
||||||
@ -1362,6 +1366,7 @@ public abstract class Timeline implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_WINDOWS,
|
FIELD_WINDOWS,
|
||||||
FIELD_PERIODS,
|
FIELD_PERIODS,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.CheckResult;
|
import androidx.annotation.CheckResult;
|
||||||
@ -29,6 +30,7 @@ import com.google.common.collect.Lists;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -139,6 +141,7 @@ public final class TrackGroup implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_FORMATS, FIELD_ID})
|
@IntDef({FIELD_FORMATS, FIELD_ID})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -25,6 +27,7 @@ import com.google.common.collect.ImmutableList;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/** An immutable array of {@link TrackGroup}s. */
|
/** An immutable array of {@link TrackGroup}s. */
|
||||||
@ -105,6 +108,7 @@ public final class TrackGroupArray implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TRACK_GROUPS,
|
FIELD_TRACK_GROUPS,
|
||||||
})
|
})
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.common;
|
|||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.BundleableUtil.fromBundleNullableList;
|
import static androidx.media3.common.util.BundleableUtil.fromBundleNullableList;
|
||||||
import static androidx.media3.common.util.BundleableUtil.toBundleArrayList;
|
import static androidx.media3.common.util.BundleableUtil.toBundleArrayList;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
import static java.util.Collections.max;
|
import static java.util.Collections.max;
|
||||||
import static java.util.Collections.min;
|
import static java.util.Collections.min;
|
||||||
|
|
||||||
@ -31,6 +32,7 @@ import com.google.common.primitives.Ints;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -181,6 +183,7 @@ public final class TrackSelectionOverrides implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TRACK_GROUP,
|
FIELD_TRACK_GROUP,
|
||||||
FIELD_TRACKS,
|
FIELD_TRACKS,
|
||||||
@ -269,6 +272,7 @@ public final class TrackSelectionOverrides implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_OVERRIDES,
|
FIELD_OVERRIDES,
|
||||||
})
|
})
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.common;
|
|||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.BundleableUtil.fromNullableBundle;
|
import static androidx.media3.common.util.BundleableUtil.fromNullableBundle;
|
||||||
import static com.google.common.base.MoreObjects.firstNonNull;
|
import static com.google.common.base.MoreObjects.firstNonNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Point;
|
import android.graphics.Point;
|
||||||
@ -35,6 +36,7 @@ import com.google.common.primitives.Ints;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import org.checkerframework.checker.initialization.qual.UnknownInitialization;
|
import org.checkerframework.checker.initialization.qual.UnknownInitialization;
|
||||||
@ -984,6 +986,7 @@ public class TrackSelectionParameters implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_PREFERRED_AUDIO_LANGUAGES,
|
FIELD_PREFERRED_AUDIO_LANGUAGES,
|
||||||
FIELD_PREFERRED_AUDIO_ROLE_FLAGS,
|
FIELD_PREFERRED_AUDIO_ROLE_FLAGS,
|
||||||
|
@ -20,6 +20,7 @@ import static androidx.media3.common.util.Assertions.checkNotNull;
|
|||||||
import static androidx.media3.common.util.BundleableUtil.fromBundleNullableList;
|
import static androidx.media3.common.util.BundleableUtil.fromBundleNullableList;
|
||||||
import static androidx.media3.common.util.BundleableUtil.fromNullableBundle;
|
import static androidx.media3.common.util.BundleableUtil.fromNullableBundle;
|
||||||
import static androidx.media3.common.util.BundleableUtil.toBundleArrayList;
|
import static androidx.media3.common.util.BundleableUtil.toBundleArrayList;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -31,6 +32,7 @@ import com.google.common.primitives.Booleans;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -195,6 +197,7 @@ public final class TracksInfo implements Bundleable {
|
|||||||
// Bundleable implementation.
|
// Bundleable implementation.
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TRACK_GROUP,
|
FIELD_TRACK_GROUP,
|
||||||
FIELD_TRACK_SUPPORT,
|
FIELD_TRACK_SUPPORT,
|
||||||
@ -330,6 +333,7 @@ public final class TracksInfo implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TRACK_GROUP_INFOS,
|
FIELD_TRACK_GROUP_INFOS,
|
||||||
})
|
})
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.common;
|
package androidx.media3.common;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.FloatRange;
|
import androidx.annotation.FloatRange;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -24,6 +26,7 @@ import androidx.media3.common.util.UnstableApi;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** Represents the video size. */
|
/** Represents the video size. */
|
||||||
public final class VideoSize implements Bundleable {
|
public final class VideoSize implements Bundleable {
|
||||||
@ -131,6 +134,7 @@ public final class VideoSize implements Bundleable {
|
|||||||
// Bundleable implementation.
|
// Bundleable implementation.
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_WIDTH,
|
FIELD_WIDTH,
|
||||||
FIELD_HEIGHT,
|
FIELD_HEIGHT,
|
||||||
|
@ -968,6 +968,7 @@ public final class Cue implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_TEXT,
|
FIELD_TEXT,
|
||||||
FIELD_TEXT_ALIGNMENT,
|
FIELD_TEXT_ALIGNMENT,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.database;
|
package androidx.media3.database;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.ContentValues;
|
import android.content.ContentValues;
|
||||||
import android.database.Cursor;
|
import android.database.Cursor;
|
||||||
import android.database.SQLException;
|
import android.database.SQLException;
|
||||||
@ -26,6 +28,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Utility methods for accessing versions of media library database components. This allows them to
|
* Utility methods for accessing versions of media library database components. This allows them to
|
||||||
@ -75,6 +78,7 @@ public final class VersionTable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FEATURE_OFFLINE,
|
FEATURE_OFFLINE,
|
||||||
FEATURE_CACHE_CONTENT_METADATA,
|
FEATURE_CACHE_CONTENT_METADATA,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.exoplayer;
|
package androidx.media3.exoplayer;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.media.AudioFocusRequest;
|
import android.media.AudioFocusRequest;
|
||||||
@ -34,6 +35,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
|
|
||||||
/** Manages requesting and responding to changes in audio focus. */
|
/** Manages requesting and responding to changes in audio focus. */
|
||||||
@ -78,6 +80,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
|||||||
/** Audio focus state. */
|
/** Audio focus state. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
AUDIO_FOCUS_STATE_NO_FOCUS,
|
AUDIO_FOCUS_STATE_NO_FOCUS,
|
||||||
AUDIO_FOCUS_STATE_HAVE_FOCUS,
|
AUDIO_FOCUS_STATE_HAVE_FOCUS,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.exoplayer.audio;
|
package androidx.media3.exoplayer.audio;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.annotation.TargetApi;
|
import android.annotation.TargetApi;
|
||||||
import android.media.AudioTimestamp;
|
import android.media.AudioTimestamp;
|
||||||
import android.media.AudioTrack;
|
import android.media.AudioTrack;
|
||||||
@ -26,6 +28,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Polls the {@link AudioTrack} timestamp, if the platform supports it, taking care of polling at
|
* Polls the {@link AudioTrack} timestamp, if the platform supports it, taking care of polling at
|
||||||
@ -49,6 +52,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
/** Timestamp polling states. */
|
/** Timestamp polling states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_INITIALIZING,
|
STATE_INITIALIZING,
|
||||||
STATE_TIMESTAMP,
|
STATE_TIMESTAMP,
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.exoplayer.audio;
|
|||||||
import static androidx.media3.common.util.Util.castNonNull;
|
import static androidx.media3.common.util.Util.castNonNull;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.media.AudioTimestamp;
|
import android.media.AudioTimestamp;
|
||||||
import android.media.AudioTrack;
|
import android.media.AudioTrack;
|
||||||
@ -30,6 +31,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -111,6 +113,7 @@ import java.lang.reflect.Method;
|
|||||||
/** {@link AudioTrack} playback states. */
|
/** {@link AudioTrack} playback states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({PLAYSTATE_STOPPED, PLAYSTATE_PAUSED, PLAYSTATE_PLAYING})
|
@IntDef({PLAYSTATE_STOPPED, PLAYSTATE_PAUSED, PLAYSTATE_PLAYING})
|
||||||
private @interface PlayState {}
|
private @interface PlayState {}
|
||||||
/** @see AudioTrack#PLAYSTATE_STOPPED */
|
/** @see AudioTrack#PLAYSTATE_STOPPED */
|
||||||
|
@ -21,6 +21,7 @@ import static androidx.media3.exoplayer.DecoderReuseEvaluation.REUSE_RESULT_NO;
|
|||||||
import static androidx.media3.exoplayer.source.SampleStream.FLAG_REQUIRE_FORMAT;
|
import static androidx.media3.exoplayer.source.SampleStream.FLAG_REQUIRE_FORMAT;
|
||||||
import static com.google.common.base.MoreObjects.firstNonNull;
|
import static com.google.common.base.MoreObjects.firstNonNull;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
@ -97,6 +98,7 @@ public abstract class DecoderAudioRenderer<
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@java.lang.annotation.Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
REINITIALIZATION_STATE_NONE,
|
REINITIALIZATION_STATE_NONE,
|
||||||
REINITIALIZATION_STATE_SIGNAL_END_OF_STREAM,
|
REINITIALIZATION_STATE_SIGNAL_END_OF_STREAM,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.exoplayer.audio;
|
package androidx.media3.exoplayer.audio;
|
||||||
|
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
@ -25,6 +26,7 @@ import androidx.media3.common.util.Util;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -53,6 +55,7 @@ public final class SilenceSkippingAudioProcessor extends BaseAudioProcessor {
|
|||||||
/** Trimming states. */
|
/** Trimming states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_NOISY,
|
STATE_NOISY,
|
||||||
STATE_MAYBE_SILENT,
|
STATE_MAYBE_SILENT,
|
||||||
|
@ -16,6 +16,8 @@
|
|||||||
|
|
||||||
package androidx.media3.exoplayer.mediacodec;
|
package androidx.media3.exoplayer.mediacodec;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.media.MediaCodec;
|
import android.media.MediaCodec;
|
||||||
import android.media.MediaCrypto;
|
import android.media.MediaCrypto;
|
||||||
import android.media.MediaFormat;
|
import android.media.MediaFormat;
|
||||||
@ -36,6 +38,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -124,6 +127,7 @@ import java.nio.ByteBuffer;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({STATE_CREATED, STATE_INITIALIZED, STATE_SHUT_DOWN})
|
@IntDef({STATE_CREATED, STATE_INITIALIZED, STATE_SHUT_DOWN})
|
||||||
private @interface State {}
|
private @interface State {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.exoplayer.mediacodec;
|
package androidx.media3.exoplayer.mediacodec;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.media.MediaCodec;
|
import android.media.MediaCodec;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.MimeTypes;
|
import androidx.media3.common.MimeTypes;
|
||||||
@ -22,8 +24,10 @@ import androidx.media3.common.util.Log;
|
|||||||
import androidx.media3.common.util.UnstableApi;
|
import androidx.media3.common.util.UnstableApi;
|
||||||
import androidx.media3.common.util.Util;
|
import androidx.media3.common.util.Util;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The default {@link MediaCodecAdapter.Factory}.
|
* The default {@link MediaCodecAdapter.Factory}.
|
||||||
@ -37,7 +41,9 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
@UnstableApi
|
@UnstableApi
|
||||||
public final class DefaultMediaCodecAdapterFactory implements MediaCodecAdapter.Factory {
|
public final class DefaultMediaCodecAdapterFactory implements MediaCodecAdapter.Factory {
|
||||||
|
|
||||||
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({MODE_DEFAULT, MODE_ENABLED, MODE_DISABLED})
|
@IntDef({MODE_DEFAULT, MODE_ENABLED, MODE_DISABLED})
|
||||||
private @interface Mode {}
|
private @interface Mode {}
|
||||||
|
|
||||||
|
@ -29,6 +29,7 @@ import static androidx.media3.exoplayer.source.SampleStream.FLAG_OMIT_SAMPLE_DAT
|
|||||||
import static androidx.media3.exoplayer.source.SampleStream.FLAG_PEEK;
|
import static androidx.media3.exoplayer.source.SampleStream.FLAG_PEEK;
|
||||||
import static androidx.media3.exoplayer.source.SampleStream.FLAG_REQUIRE_FORMAT;
|
import static androidx.media3.exoplayer.source.SampleStream.FLAG_REQUIRE_FORMAT;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.annotation.TargetApi;
|
import android.annotation.TargetApi;
|
||||||
import android.media.MediaCodec;
|
import android.media.MediaCodec;
|
||||||
@ -78,6 +79,7 @@ import androidx.media3.extractor.NalUnitUtil;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.nio.ByteOrder;
|
import java.nio.ByteOrder;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
@ -212,6 +214,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
RECONFIGURATION_STATE_NONE,
|
RECONFIGURATION_STATE_NONE,
|
||||||
RECONFIGURATION_STATE_WRITE_PENDING,
|
RECONFIGURATION_STATE_WRITE_PENDING,
|
||||||
@ -230,6 +233,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({DRAIN_STATE_NONE, DRAIN_STATE_SIGNAL_END_OF_STREAM, DRAIN_STATE_WAIT_END_OF_STREAM})
|
@IntDef({DRAIN_STATE_NONE, DRAIN_STATE_SIGNAL_END_OF_STREAM, DRAIN_STATE_WAIT_END_OF_STREAM})
|
||||||
private @interface DrainState {}
|
private @interface DrainState {}
|
||||||
/** The codec is not being drained. */
|
/** The codec is not being drained. */
|
||||||
@ -241,6 +245,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
DRAIN_ACTION_NONE,
|
DRAIN_ACTION_NONE,
|
||||||
DRAIN_ACTION_FLUSH,
|
DRAIN_ACTION_FLUSH,
|
||||||
@ -259,6 +264,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
ADAPTATION_WORKAROUND_MODE_NEVER,
|
ADAPTATION_WORKAROUND_MODE_NEVER,
|
||||||
ADAPTATION_WORKAROUND_MODE_SAME_RESOLUTION,
|
ADAPTATION_WORKAROUND_MODE_SAME_RESOLUTION,
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.exoplayer.text;
|
|||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -32,8 +33,10 @@ import androidx.media3.extractor.text.SubtitleDecoderException;
|
|||||||
import androidx.media3.extractor.text.SubtitleInputBuffer;
|
import androidx.media3.extractor.text.SubtitleInputBuffer;
|
||||||
import androidx.media3.extractor.text.SubtitleOutputBuffer;
|
import androidx.media3.extractor.text.SubtitleOutputBuffer;
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
import java.util.Deque;
|
import java.util.Deque;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -44,6 +47,8 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@UnstableApi
|
@UnstableApi
|
||||||
public final class ExoplayerCuesDecoder implements SubtitleDecoder {
|
public final class ExoplayerCuesDecoder implements SubtitleDecoder {
|
||||||
|
@Documented
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef(value = {INPUT_BUFFER_AVAILABLE, INPUT_BUFFER_DEQUEUED, INPUT_BUFFER_QUEUED})
|
@IntDef(value = {INPUT_BUFFER_AVAILABLE, INPUT_BUFFER_DEQUEUED, INPUT_BUFFER_QUEUED})
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
private @interface InputBufferState {}
|
private @interface InputBufferState {}
|
||||||
|
@ -17,6 +17,7 @@ package androidx.media3.exoplayer.text;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Handler.Callback;
|
import android.os.Handler.Callback;
|
||||||
@ -43,6 +44,7 @@ import androidx.media3.extractor.text.SubtitleOutputBuffer;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -60,6 +62,7 @@ public final class TextRenderer extends BaseRenderer implements Callback {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
REPLACEMENT_STATE_NONE,
|
REPLACEMENT_STATE_NONE,
|
||||||
REPLACEMENT_STATE_SIGNAL_END_OF_STREAM,
|
REPLACEMENT_STATE_SIGNAL_END_OF_STREAM,
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.exoplayer.trackselection;
|
package androidx.media3.exoplayer.trackselection;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
import static java.util.Collections.max;
|
import static java.util.Collections.max;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
@ -58,6 +59,7 @@ import com.google.common.primitives.Ints;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
@ -1118,6 +1120,7 @@ public class DefaultTrackSelector extends MappingTrackSelector {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_EXCEED_VIDEO_CONSTRAINTS_IF_NECESSARY,
|
FIELD_EXCEED_VIDEO_CONSTRAINTS_IF_NECESSARY,
|
||||||
FIELD_ALLOW_VIDEO_MIXED_MIME_TYPE_ADAPTIVENESS,
|
FIELD_ALLOW_VIDEO_MIXED_MIME_TYPE_ADAPTIVENESS,
|
||||||
@ -1379,6 +1382,7 @@ public class DefaultTrackSelector extends MappingTrackSelector {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_GROUP_INDEX,
|
FIELD_GROUP_INDEX,
|
||||||
FIELD_TRACKS,
|
FIELD_TRACKS,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.exoplayer.upstream;
|
package androidx.media3.exoplayer.upstream;
|
||||||
|
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
@ -34,6 +35,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
|
||||||
@ -145,6 +147,7 @@ public final class Loader implements LoaderErrorThrower {
|
|||||||
/** Types of action that can be taken in response to a load error. */
|
/** Types of action that can be taken in response to a load error. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
ACTION_TYPE_RETRY,
|
ACTION_TYPE_RETRY,
|
||||||
ACTION_TYPE_RETRY_AND_RESET_ERROR_COUNT,
|
ACTION_TYPE_RETRY_AND_RESET_ERROR_COUNT,
|
||||||
|
@ -20,6 +20,7 @@ import static androidx.media3.exoplayer.DecoderReuseEvaluation.DISCARD_REASON_RE
|
|||||||
import static androidx.media3.exoplayer.DecoderReuseEvaluation.REUSE_RESULT_NO;
|
import static androidx.media3.exoplayer.DecoderReuseEvaluation.REUSE_RESULT_NO;
|
||||||
import static androidx.media3.exoplayer.source.SampleStream.FLAG_REQUIRE_FORMAT;
|
import static androidx.media3.exoplayer.source.SampleStream.FLAG_REQUIRE_FORMAT;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
@ -49,7 +50,7 @@ import androidx.media3.exoplayer.DecoderReuseEvaluation;
|
|||||||
import androidx.media3.exoplayer.ExoPlaybackException;
|
import androidx.media3.exoplayer.ExoPlaybackException;
|
||||||
import androidx.media3.exoplayer.ExoPlayer;
|
import androidx.media3.exoplayer.ExoPlayer;
|
||||||
import androidx.media3.exoplayer.FormatHolder;
|
import androidx.media3.exoplayer.FormatHolder;
|
||||||
import androidx.media3.exoplayer.PlayerMessage.Target;
|
import androidx.media3.exoplayer.PlayerMessage;
|
||||||
import androidx.media3.exoplayer.drm.DrmSession;
|
import androidx.media3.exoplayer.drm.DrmSession;
|
||||||
import androidx.media3.exoplayer.drm.DrmSession.DrmSessionException;
|
import androidx.media3.exoplayer.drm.DrmSession.DrmSessionException;
|
||||||
import androidx.media3.exoplayer.source.SampleStream.ReadDataResult;
|
import androidx.media3.exoplayer.source.SampleStream.ReadDataResult;
|
||||||
@ -57,12 +58,13 @@ import androidx.media3.exoplayer.video.VideoRendererEventListener.EventDispatche
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Decodes and renders video using a {@link Decoder}.
|
* Decodes and renders video using a {@link Decoder}.
|
||||||
*
|
*
|
||||||
* <p>This renderer accepts the following messages sent via {@link ExoPlayer#createMessage(Target)}
|
* <p>This renderer accepts the following messages sent via {@link
|
||||||
* on the playback thread:
|
* ExoPlayer#createMessage(PlayerMessage.Target)} on the playback thread:
|
||||||
*
|
*
|
||||||
* <ul>
|
* <ul>
|
||||||
* <li>Message with type {@link #MSG_SET_VIDEO_OUTPUT} to set the output surface. The message
|
* <li>Message with type {@link #MSG_SET_VIDEO_OUTPUT} to set the output surface. The message
|
||||||
@ -81,6 +83,7 @@ public abstract class DecoderVideoRenderer extends BaseRenderer {
|
|||||||
/** Decoder reinitialization states. */
|
/** Decoder reinitialization states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
REINITIALIZATION_STATE_NONE,
|
REINITIALIZATION_STATE_NONE,
|
||||||
REINITIALIZATION_STATE_SIGNAL_END_OF_STREAM,
|
REINITIALIZATION_STATE_SIGNAL_END_OF_STREAM,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.exoplayer.video.spherical;
|
package androidx.media3.exoplayer.video.spherical;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
import androidx.media3.common.C.StereoMode;
|
import androidx.media3.common.C.StereoMode;
|
||||||
@ -22,6 +24,7 @@ import androidx.media3.common.util.Assertions;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** The projection mesh used with 360/VR videos. */
|
/** The projection mesh used with 360/VR videos. */
|
||||||
/* package */ final class Projection {
|
/* package */ final class Projection {
|
||||||
@ -29,6 +32,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
/** Enforces allowed (sub) mesh draw modes. */
|
/** Enforces allowed (sub) mesh draw modes. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({DRAW_MODE_TRIANGLES, DRAW_MODE_TRIANGLES_STRIP, DRAW_MODE_TRIANGLES_FAN})
|
@IntDef({DRAW_MODE_TRIANGLES, DRAW_MODE_TRIANGLES_STRIP, DRAW_MODE_TRIANGLES_FAN})
|
||||||
public @interface DrawMode {}
|
public @interface DrawMode {}
|
||||||
/** Triangle draw mode. */
|
/** Triangle draw mode. */
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.exoplayer.dash;
|
package androidx.media3.exoplayer.dash;
|
||||||
|
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
import android.util.SparseArray;
|
import android.util.SparseArray;
|
||||||
@ -60,6 +61,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.IdentityHashMap;
|
import java.util.IdentityHashMap;
|
||||||
@ -911,6 +913,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({CATEGORY_PRIMARY, CATEGORY_EMBEDDED, CATEGORY_MANIFEST_EVENTS})
|
@IntDef({CATEGORY_PRIMARY, CATEGORY_EMBEDDED, CATEGORY_MANIFEST_EVENTS})
|
||||||
public @interface TrackGroupCategory {}
|
public @interface TrackGroupCategory {}
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ package androidx.media3.exoplayer.hls;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
@ -50,8 +51,10 @@ import com.google.common.collect.ImmutableList;
|
|||||||
import com.google.common.collect.Iterables;
|
import com.google.common.collect.Iterables;
|
||||||
import com.google.common.primitives.Ints;
|
import com.google.common.primitives.Ints;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -89,6 +92,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
|||||||
* Chunk publication state. One of {@link #CHUNK_PUBLICATION_STATE_PRELOAD}, {@link
|
* Chunk publication state. One of {@link #CHUNK_PUBLICATION_STATE_PRELOAD}, {@link
|
||||||
* #CHUNK_PUBLICATION_STATE_PUBLISHED}, {@link #CHUNK_PUBLICATION_STATE_REMOVED}.
|
* #CHUNK_PUBLICATION_STATE_PUBLISHED}, {@link #CHUNK_PUBLICATION_STATE_REMOVED}.
|
||||||
*/
|
*/
|
||||||
|
@Documented
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
CHUNK_PUBLICATION_STATE_PRELOAD,
|
CHUNK_PUBLICATION_STATE_PRELOAD,
|
||||||
CHUNK_PUBLICATION_STATE_PUBLISHED,
|
CHUNK_PUBLICATION_STATE_PUBLISHED,
|
||||||
|
@ -23,6 +23,7 @@ import static androidx.media3.exoplayer.ima.ImaUtil.TIMEOUT_UNSET;
|
|||||||
import static androidx.media3.exoplayer.ima.ImaUtil.getAdGroupTimesUsForCuePoints;
|
import static androidx.media3.exoplayer.ima.ImaUtil.getAdGroupTimesUsForCuePoints;
|
||||||
import static androidx.media3.exoplayer.ima.ImaUtil.getImaLooper;
|
import static androidx.media3.exoplayer.ima.ImaUtil.getImaLooper;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
@ -69,6 +70,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@ -108,6 +110,7 @@ import java.util.Map;
|
|||||||
/** The state of ad playback. */
|
/** The state of ad playback. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({IMA_AD_STATE_NONE, IMA_AD_STATE_PLAYING, IMA_AD_STATE_PAUSED})
|
@IntDef({IMA_AD_STATE_NONE, IMA_AD_STATE_PLAYING, IMA_AD_STATE_PAUSED})
|
||||||
private @interface ImaAdState {}
|
private @interface ImaAdState {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.exoplayer.rtsp;
|
package androidx.media3.exoplayer.rtsp;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.util.Base64;
|
import android.util.Base64;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -22,8 +24,10 @@ import androidx.media3.common.ParserException;
|
|||||||
import androidx.media3.common.util.UnstableApi;
|
import androidx.media3.common.util.UnstableApi;
|
||||||
import androidx.media3.common.util.Util;
|
import androidx.media3.common.util.Util;
|
||||||
import androidx.media3.exoplayer.rtsp.RtspMessageUtil.RtspAuthUserInfo;
|
import androidx.media3.exoplayer.rtsp.RtspMessageUtil.RtspAuthUserInfo;
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.security.MessageDigest;
|
import java.security.MessageDigest;
|
||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
|
|
||||||
@ -32,7 +36,9 @@ import java.security.NoSuchAlgorithmException;
|
|||||||
/* package */ final class RtspAuthenticationInfo {
|
/* package */ final class RtspAuthenticationInfo {
|
||||||
|
|
||||||
/** The supported authentication methods. */
|
/** The supported authentication methods. */
|
||||||
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({BASIC, DIGEST})
|
@IntDef({BASIC, DIGEST})
|
||||||
@interface AuthenticationMechanism {}
|
@interface AuthenticationMechanism {}
|
||||||
|
|
||||||
|
@ -35,6 +35,7 @@ import static androidx.media3.exoplayer.rtsp.RtspRequest.METHOD_TEARDOWN;
|
|||||||
import static androidx.media3.exoplayer.rtsp.RtspRequest.METHOD_UNSET;
|
import static androidx.media3.exoplayer.rtsp.RtspRequest.METHOD_UNSET;
|
||||||
import static com.google.common.base.Strings.nullToEmpty;
|
import static com.google.common.base.Strings.nullToEmpty;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
@ -61,6 +62,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.net.Socket;
|
import java.net.Socket;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
@ -78,6 +80,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
|||||||
*/
|
*/
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({RTSP_STATE_UNINITIALIZED, RTSP_STATE_INIT, RTSP_STATE_READY, RTSP_STATE_PLAYING})
|
@IntDef({RTSP_STATE_UNINITIALIZED, RTSP_STATE_INIT, RTSP_STATE_READY, RTSP_STATE_PLAYING})
|
||||||
public @interface RtspState {}
|
public @interface RtspState {}
|
||||||
/** RTSP uninitialized state, the state before sending any SETUP request. */
|
/** RTSP uninitialized state, the state before sending any SETUP request. */
|
||||||
|
@ -19,6 +19,7 @@ import static androidx.media3.common.util.Assertions.checkArgument;
|
|||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
import static androidx.media3.common.util.Assertions.checkStateNotNull;
|
import static androidx.media3.common.util.Assertions.checkStateNotNull;
|
||||||
import static androidx.media3.exoplayer.rtsp.RtspMessageUtil.isRtspStartLine;
|
import static androidx.media3.exoplayer.rtsp.RtspMessageUtil.isRtspStartLine;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.HandlerThread;
|
import android.os.HandlerThread;
|
||||||
@ -43,6 +44,7 @@ import java.io.OutputStream;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.net.Socket;
|
import java.net.Socket;
|
||||||
import java.nio.charset.Charset;
|
import java.nio.charset.Charset;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@ -341,6 +343,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({STATE_READING_FIRST_LINE, STATE_READING_HEADER, STATE_READING_BODY})
|
@IntDef({STATE_READING_FIRST_LINE, STATE_READING_HEADER, STATE_READING_BODY})
|
||||||
@interface ReadingState {}
|
@interface ReadingState {}
|
||||||
|
|
||||||
|
@ -16,12 +16,15 @@
|
|||||||
|
|
||||||
package androidx.media3.exoplayer.rtsp;
|
package androidx.media3.exoplayer.rtsp;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.util.UnstableApi;
|
import androidx.media3.common.util.UnstableApi;
|
||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** Represents an RTSP request. */
|
/** Represents an RTSP request. */
|
||||||
@UnstableApi
|
@UnstableApi
|
||||||
@ -49,6 +52,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
*/
|
*/
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef(
|
@IntDef(
|
||||||
value = {
|
value = {
|
||||||
METHOD_UNSET,
|
METHOD_UNSET,
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.extractor.flac;
|
|||||||
import static androidx.media3.common.util.Util.castNonNull;
|
import static androidx.media3.common.util.Util.castNonNull;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -42,6 +43,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -79,6 +81,7 @@ public final class FlacExtractor implements Extractor {
|
|||||||
/** Parser state. */
|
/** Parser state. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_READ_ID3_METADATA,
|
STATE_READ_ID3_METADATA,
|
||||||
STATE_GET_STREAM_MARKER_AND_INFO_BLOCK_BYTES,
|
STATE_GET_STREAM_MARKER_AND_INFO_BLOCK_BYTES,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.extractor.flv;
|
package androidx.media3.extractor.flv;
|
||||||
|
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
@ -33,6 +34,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
||||||
|
|
||||||
@ -46,6 +48,7 @@ public final class FlvExtractor implements Extractor {
|
|||||||
/** Extractor states. */
|
/** Extractor states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_READING_FLV_HEADER,
|
STATE_READING_FLV_HEADER,
|
||||||
STATE_SKIPPING_TO_TAG_HEADER,
|
STATE_SKIPPING_TO_TAG_HEADER,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.extractor.jpeg;
|
package androidx.media3.extractor.jpeg;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -37,6 +38,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
|
|
||||||
/** Extracts JPEG image using the Exif format. */
|
/** Extracts JPEG image using the Exif format. */
|
||||||
@ -46,6 +48,7 @@ public final class JpegExtractor implements Extractor {
|
|||||||
/** Parser states. */
|
/** Parser states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_READING_MARKER,
|
STATE_READING_MARKER,
|
||||||
STATE_READING_SEGMENT_LENGTH,
|
STATE_READING_SEGMENT_LENGTH,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.extractor.mkv;
|
package androidx.media3.extractor.mkv;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
import androidx.media3.common.ParserException;
|
import androidx.media3.common.ParserException;
|
||||||
@ -25,6 +27,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
||||||
@ -34,6 +37,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({ELEMENT_STATE_READ_ID, ELEMENT_STATE_READ_CONTENT_SIZE, ELEMENT_STATE_READ_CONTENT})
|
@IntDef({ELEMENT_STATE_READ_ID, ELEMENT_STATE_READ_CONTENT_SIZE, ELEMENT_STATE_READ_CONTENT})
|
||||||
private @interface ElementState {}
|
private @interface ElementState {}
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@ import static androidx.media3.extractor.mp4.Sniffer.BRAND_HEIC;
|
|||||||
import static androidx.media3.extractor.mp4.Sniffer.BRAND_QUICKTIME;
|
import static androidx.media3.extractor.mp4.Sniffer.BRAND_QUICKTIME;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -54,6 +55,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -101,6 +103,7 @@ public final class Mp4Extractor implements Extractor, SeekMap {
|
|||||||
/** Parser states. */
|
/** Parser states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_READING_ATOM_HEADER,
|
STATE_READING_ATOM_HEADER,
|
||||||
STATE_READING_ATOM_PAYLOAD,
|
STATE_READING_ATOM_PAYLOAD,
|
||||||
@ -117,6 +120,7 @@ public final class Mp4Extractor implements Extractor, SeekMap {
|
|||||||
/** Supported file types. */
|
/** Supported file types. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FILE_TYPE_MP4, FILE_TYPE_QUICKTIME, FILE_TYPE_HEIC})
|
@IntDef({FILE_TYPE_MP4, FILE_TYPE_QUICKTIME, FILE_TYPE_HEIC})
|
||||||
private @interface FileType {}
|
private @interface FileType {}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.extractor.mp4;
|
package androidx.media3.extractor.mp4;
|
||||||
|
|
||||||
import static androidx.media3.extractor.Extractor.RESULT_SEEK;
|
import static androidx.media3.extractor.Extractor.RESULT_SEEK;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
@ -31,6 +32,7 @@ import java.io.IOException;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -44,6 +46,7 @@ import java.util.List;
|
|||||||
/** Reader states. */
|
/** Reader states. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_SHOULD_CHECK_FOR_SEF,
|
STATE_SHOULD_CHECK_FOR_SEF,
|
||||||
STATE_CHECKING_FOR_SEF,
|
STATE_CHECKING_FOR_SEF,
|
||||||
@ -60,6 +63,7 @@ import java.util.List;
|
|||||||
/** Supported data types. */
|
/** Supported data types. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
TYPE_SLOW_MOTION_DATA,
|
TYPE_SLOW_MOTION_DATA,
|
||||||
TYPE_SUPER_SLOW_MOTION_DATA,
|
TYPE_SUPER_SLOW_MOTION_DATA,
|
||||||
|
@ -17,6 +17,7 @@ package androidx.media3.extractor.text;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
import static androidx.media3.common.util.Assertions.checkStateNotNull;
|
import static androidx.media3.common.util.Assertions.checkStateNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -37,8 +38,10 @@ import androidx.media3.extractor.TrackOutput;
|
|||||||
import com.google.common.primitives.Ints;
|
import com.google.common.primitives.Ints;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InterruptedIOException;
|
import java.io.InterruptedIOException;
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
@ -46,7 +49,9 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
|||||||
/** Generic extractor for extracting subtitles from various subtitle formats. */
|
/** Generic extractor for extracting subtitles from various subtitle formats. */
|
||||||
@UnstableApi
|
@UnstableApi
|
||||||
public class SubtitleExtractor implements Extractor {
|
public class SubtitleExtractor implements Extractor {
|
||||||
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_CREATED,
|
STATE_CREATED,
|
||||||
STATE_INITIALIZED,
|
STATE_INITIALIZED,
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.extractor.text.ssa;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.extractor.text.ssa.SsaDecoder.STYLE_LINE_PREFIX;
|
import static androidx.media3.extractor.text.ssa.SsaDecoder.STYLE_LINE_PREFIX;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
||||||
|
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
@ -35,6 +36,7 @@ import com.google.common.base.Ascii;
|
|||||||
import com.google.common.primitives.Ints;
|
import com.google.common.primitives.Ints;
|
||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
@ -61,6 +63,7 @@ import java.util.regex.Pattern;
|
|||||||
* <li>{@link #SSA_ALIGNMENT_TOP_RIGHT}
|
* <li>{@link #SSA_ALIGNMENT_TOP_RIGHT}
|
||||||
* </ul>
|
* </ul>
|
||||||
*/
|
*/
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
SSA_ALIGNMENT_UNKNOWN,
|
SSA_ALIGNMENT_UNKNOWN,
|
||||||
SSA_ALIGNMENT_BOTTOM_LEFT,
|
SSA_ALIGNMENT_BOTTOM_LEFT,
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.extractor.text.ttml;
|
package androidx.media3.extractor.text.ttml;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
||||||
|
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
@ -29,6 +30,7 @@ import com.google.common.collect.Iterables;
|
|||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
@ -41,6 +43,7 @@ import java.util.regex.Pattern;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(SOURCE)
|
@Retention(SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
TextEmphasisSpan.MARK_SHAPE_NONE,
|
TextEmphasisSpan.MARK_SHAPE_NONE,
|
||||||
TextEmphasisSpan.MARK_SHAPE_CIRCLE,
|
TextEmphasisSpan.MARK_SHAPE_CIRCLE,
|
||||||
@ -58,6 +61,7 @@ import java.util.regex.Pattern;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(SOURCE)
|
@Retention(SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
TextAnnotation.POSITION_UNKNOWN,
|
TextAnnotation.POSITION_UNKNOWN,
|
||||||
TextAnnotation.POSITION_BEFORE,
|
TextAnnotation.POSITION_BEFORE,
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.extractor.text.ttml;
|
package androidx.media3.extractor.text.ttml;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.graphics.Typeface;
|
import android.graphics.Typeface;
|
||||||
import android.text.Layout;
|
import android.text.Layout;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -23,6 +25,7 @@ import androidx.media3.common.text.TextAnnotation;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/** Style object of a <code>TtmlNode</code> */
|
/** Style object of a <code>TtmlNode</code> */
|
||||||
/* package */ final class TtmlStyle {
|
/* package */ final class TtmlStyle {
|
||||||
@ -32,6 +35,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef(
|
@IntDef(
|
||||||
flag = true,
|
flag = true,
|
||||||
value = {UNSPECIFIED, STYLE_NORMAL, STYLE_BOLD, STYLE_ITALIC, STYLE_BOLD_ITALIC})
|
value = {UNSPECIFIED, STYLE_NORMAL, STYLE_BOLD, STYLE_ITALIC, STYLE_BOLD_ITALIC})
|
||||||
@ -44,6 +48,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({UNSPECIFIED, FONT_SIZE_UNIT_PIXEL, FONT_SIZE_UNIT_EM, FONT_SIZE_UNIT_PERCENT})
|
@IntDef({UNSPECIFIED, FONT_SIZE_UNIT_PIXEL, FONT_SIZE_UNIT_EM, FONT_SIZE_UNIT_PERCENT})
|
||||||
public @interface FontSizeUnit {}
|
public @interface FontSizeUnit {}
|
||||||
|
|
||||||
@ -53,6 +58,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({UNSPECIFIED, OFF, ON})
|
@IntDef({UNSPECIFIED, OFF, ON})
|
||||||
private @interface OptionalBoolean {}
|
private @interface OptionalBoolean {}
|
||||||
|
|
||||||
@ -61,6 +67,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({UNSPECIFIED, RUBY_TYPE_CONTAINER, RUBY_TYPE_BASE, RUBY_TYPE_TEXT, RUBY_TYPE_DELIMITER})
|
@IntDef({UNSPECIFIED, RUBY_TYPE_CONTAINER, RUBY_TYPE_BASE, RUBY_TYPE_TEXT, RUBY_TYPE_DELIMITER})
|
||||||
public @interface RubyType {}
|
public @interface RubyType {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.extractor.text.webvtt;
|
package androidx.media3.extractor.text.webvtt;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.graphics.Typeface;
|
import android.graphics.Typeface;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import androidx.annotation.ColorInt;
|
import androidx.annotation.ColorInt;
|
||||||
@ -26,6 +28,7 @@ import com.google.common.base.Ascii;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
@ -73,6 +76,7 @@ public final class WebvttCssStyle {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({UNSPECIFIED, OFF, ON})
|
@IntDef({UNSPECIFIED, OFF, ON})
|
||||||
private @interface OptionalBoolean {}
|
private @interface OptionalBoolean {}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.extractor.text.webvtt;
|
package androidx.media3.extractor.text.webvtt;
|
||||||
|
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
||||||
|
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
@ -47,6 +48,7 @@ import androidx.media3.common.util.UnstableApi;
|
|||||||
import androidx.media3.common.util.Util;
|
import androidx.media3.common.util.Util;
|
||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -76,6 +78,7 @@ public final class WebvttCueParser {
|
|||||||
*/
|
*/
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(SOURCE)
|
@Retention(SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
TEXT_ALIGNMENT_START,
|
TEXT_ALIGNMENT_START,
|
||||||
TEXT_ALIGNMENT_CENTER,
|
TEXT_ALIGNMENT_CENTER,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.extractor.ts;
|
package androidx.media3.extractor.ts;
|
||||||
|
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -34,6 +35,7 @@ import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
||||||
|
|
||||||
@ -43,6 +45,7 @@ public final class Ac3Reader implements ElementaryStreamReader {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({STATE_FINDING_SYNC, STATE_READING_HEADER, STATE_READING_SAMPLE})
|
@IntDef({STATE_FINDING_SYNC, STATE_READING_HEADER, STATE_READING_SAMPLE})
|
||||||
private @interface State {}
|
private @interface State {}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.extractor.ts;
|
package androidx.media3.extractor.ts;
|
||||||
|
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -34,6 +35,7 @@ import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
||||||
|
|
||||||
@ -43,6 +45,7 @@ public final class Ac4Reader implements ElementaryStreamReader {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({STATE_FINDING_SYNC, STATE_READING_HEADER, STATE_READING_SAMPLE})
|
@IntDef({STATE_FINDING_SYNC, STATE_READING_HEADER, STATE_READING_SAMPLE})
|
||||||
private @interface State {}
|
private @interface State {}
|
||||||
|
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.extractor.ts;
|
|||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.Assertions.checkStateNotNull;
|
import static androidx.media3.common.util.Assertions.checkStateNotNull;
|
||||||
import static androidx.media3.common.util.Util.castNonNull;
|
import static androidx.media3.common.util.Util.castNonNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -32,8 +33,10 @@ import androidx.media3.extractor.ExtractorOutput;
|
|||||||
import androidx.media3.extractor.NalUnitUtil;
|
import androidx.media3.extractor.NalUnitUtil;
|
||||||
import androidx.media3.extractor.TrackOutput;
|
import androidx.media3.extractor.TrackOutput;
|
||||||
import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator;
|
import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator;
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||||
@ -313,7 +316,9 @@ public final class H263Reader implements ElementaryStreamReader {
|
|||||||
|
|
||||||
private static final byte[] START_CODE = new byte[] {0, 0, 1};
|
private static final byte[] START_CODE = new byte[] {0, 0, 1};
|
||||||
|
|
||||||
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
STATE_SKIP_TO_VISUAL_OBJECT_SEQUENCE_START,
|
STATE_SKIP_TO_VISUAL_OBJECT_SEQUENCE_START,
|
||||||
STATE_EXPECT_VISUAL_OBJECT_START,
|
STATE_EXPECT_VISUAL_OBJECT_START,
|
||||||
|
@ -17,6 +17,7 @@ package androidx.media3.session;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.DrawableRes;
|
import androidx.annotation.DrawableRes;
|
||||||
@ -29,6 +30,7 @@ import androidx.media3.common.util.UnstableApi;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -195,6 +197,7 @@ public final class CommandButton implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_SESSION_COMMAND,
|
FIELD_SESSION_COMMAND,
|
||||||
FIELD_PLAYER_COMMAND,
|
FIELD_PLAYER_COMMAND,
|
||||||
|
@ -17,6 +17,7 @@ package androidx.media3.session;
|
|||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -26,6 +27,7 @@ import androidx.media3.common.MediaLibraryInfo;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by {@link MediaController} to send its state to the {@link MediaSession} to request to
|
* Created by {@link MediaController} to send its state to the {@link MediaSession} to request to
|
||||||
@ -56,6 +58,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_VERSION, FIELD_PACKAGE_NAME, FIELD_PID, FIELD_CONNECTION_HINTS})
|
@IntDef({FIELD_VERSION, FIELD_PACKAGE_NAME, FIELD_PID, FIELD_CONNECTION_HINTS})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.session;
|
package androidx.media3.session;
|
||||||
|
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.app.PendingIntent;
|
import android.app.PendingIntent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -29,6 +30,7 @@ import androidx.media3.common.util.BundleableUtil;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by {@link MediaSession} to send its state to the {@link MediaController} when the
|
* Created by {@link MediaSession} to send its state to the {@link MediaController} when the
|
||||||
@ -75,6 +77,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_VERSION,
|
FIELD_VERSION,
|
||||||
FIELD_SESSION_BINDER,
|
FIELD_SESSION_BINDER,
|
||||||
|
@ -250,6 +250,7 @@ public final class LibraryResult<V> implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_RESULT_CODE,
|
FIELD_RESULT_CODE,
|
||||||
FIELD_COMPLETION_TIME_MS,
|
FIELD_COMPLETION_TIME_MS,
|
||||||
|
@ -19,6 +19,7 @@ import static androidx.media3.common.util.Assertions.checkArgument;
|
|||||||
import static androidx.media3.common.util.Assertions.checkNotEmpty;
|
import static androidx.media3.common.util.Assertions.checkNotEmpty;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.session.LibraryResult.RESULT_ERROR_NOT_SUPPORTED;
|
import static androidx.media3.session.LibraryResult.RESULT_ERROR_NOT_SUPPORTED;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.app.PendingIntent;
|
import android.app.PendingIntent;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@ -41,6 +42,7 @@ import com.google.common.util.concurrent.ListenableFuture;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Superclass to be extended by services hosting {@link MediaLibrarySession media library sessions}.
|
* Superclass to be extended by services hosting {@link MediaLibrarySession media library sessions}.
|
||||||
@ -650,6 +652,7 @@ public abstract class MediaLibraryService extends MediaSessionService {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_EXTRAS,
|
FIELD_EXTRAS,
|
||||||
FIELD_RECENT,
|
FIELD_RECENT,
|
||||||
|
@ -20,6 +20,7 @@ import static androidx.media3.common.Player.MEDIA_ITEM_TRANSITION_REASON_REPEAT;
|
|||||||
import static androidx.media3.common.Player.PLAYBACK_SUPPRESSION_REASON_NONE;
|
import static androidx.media3.common.Player.PLAYBACK_SUPPRESSION_REASON_NONE;
|
||||||
import static androidx.media3.common.Player.PLAY_WHEN_READY_CHANGE_REASON_USER_REQUEST;
|
import static androidx.media3.common.Player.PLAY_WHEN_READY_CHANGE_REASON_USER_REQUEST;
|
||||||
import static androidx.media3.common.Player.STATE_IDLE;
|
import static androidx.media3.common.Player.STATE_IDLE;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
@ -48,6 +49,7 @@ import com.google.common.collect.ImmutableList;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -649,6 +651,7 @@ import java.util.List;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_PLAYBACK_PARAMETERS,
|
FIELD_PLAYBACK_PARAMETERS,
|
||||||
FIELD_REPEAT_MODE,
|
FIELD_REPEAT_MODE,
|
||||||
|
@ -172,6 +172,7 @@ public final class SessionCommand implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_COMMAND_CODE, FIELD_CUSTOM_ACTION, FIELD_CUSTOM_EXTRAS})
|
@IntDef({FIELD_COMMAND_CODE, FIELD_CUSTOM_ACTION, FIELD_CUSTOM_EXTRAS})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.session;
|
|||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.session.SessionCommand.COMMAND_CODE_CUSTOM;
|
import static androidx.media3.session.SessionCommand.COMMAND_CODE_CUSTOM;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -31,6 +32,7 @@ import com.google.common.collect.ImmutableSet;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
@ -227,6 +229,7 @@ public final class SessionCommands implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_SESSION_COMMANDS})
|
@IntDef({FIELD_SESSION_COMMANDS})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.session;
|
package androidx.media3.session;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
@ -26,6 +28,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Position information to be shared between session and controller.
|
* Position information to be shared between session and controller.
|
||||||
@ -160,6 +163,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_POSITION_INFO,
|
FIELD_POSITION_INFO,
|
||||||
FIELD_IS_PLAYING_AD,
|
FIELD_IS_PLAYING_AD,
|
||||||
|
@ -177,6 +177,7 @@ public final class SessionResult implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_RESULT_CODE, FIELD_EXTRAS, FIELD_COMPLETION_TIME_MS})
|
@IntDef({FIELD_RESULT_CODE, FIELD_EXTRAS, FIELD_COMPLETION_TIME_MS})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
|
@ -424,6 +424,7 @@ public final class SessionToken implements Bundleable {
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({FIELD_IMPL_TYPE, FIELD_IMPL})
|
@IntDef({FIELD_IMPL_TYPE, FIELD_IMPL})
|
||||||
private @interface FieldNumber {}
|
private @interface FieldNumber {}
|
||||||
|
|
||||||
@ -433,6 +434,7 @@ public final class SessionToken implements Bundleable {
|
|||||||
/** Types of {@link SessionTokenImpl} */
|
/** Types of {@link SessionTokenImpl} */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({IMPL_TYPE_BASE, IMPL_TYPE_LEGACY})
|
@IntDef({IMPL_TYPE_BASE, IMPL_TYPE_LEGACY})
|
||||||
private @interface SessionTokenImplType {}
|
private @interface SessionTokenImplType {}
|
||||||
|
|
||||||
|
@ -18,6 +18,7 @@ package androidx.media3.session;
|
|||||||
import static androidx.media3.common.util.Assertions.checkArgument;
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotEmpty;
|
import static androidx.media3.common.util.Assertions.checkNotEmpty;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.ComponentName;
|
import android.content.ComponentName;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -31,6 +32,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/* package */ final class SessionTokenImplBase implements SessionToken.SessionTokenImpl {
|
/* package */ final class SessionTokenImplBase implements SessionToken.SessionTokenImpl {
|
||||||
|
|
||||||
@ -184,6 +186,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_UID,
|
FIELD_UID,
|
||||||
FIELD_TYPE,
|
FIELD_TYPE,
|
||||||
|
@ -22,6 +22,7 @@ import static androidx.media3.session.SessionToken.TYPE_BROWSER_SERVICE_LEGACY;
|
|||||||
import static androidx.media3.session.SessionToken.TYPE_LIBRARY_SERVICE;
|
import static androidx.media3.session.SessionToken.TYPE_LIBRARY_SERVICE;
|
||||||
import static androidx.media3.session.SessionToken.TYPE_SESSION;
|
import static androidx.media3.session.SessionToken.TYPE_SESSION;
|
||||||
import static androidx.media3.session.SessionToken.TYPE_SESSION_LEGACY;
|
import static androidx.media3.session.SessionToken.TYPE_SESSION_LEGACY;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.ComponentName;
|
import android.content.ComponentName;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@ -34,6 +35,7 @@ import com.google.common.base.Objects;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/* package */ final class SessionTokenImplLegacy implements SessionTokenImpl {
|
/* package */ final class SessionTokenImplLegacy implements SessionTokenImpl {
|
||||||
|
|
||||||
@ -169,6 +171,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
|
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({
|
@IntDef({
|
||||||
FIELD_LEGACY_TOKEN,
|
FIELD_LEGACY_TOKEN,
|
||||||
FIELD_UID,
|
FIELD_UID,
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
package androidx.media3.test.utils;
|
package androidx.media3.test.utils;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertWithMessage;
|
import static com.google.common.truth.Truth.assertWithMessage;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -29,6 +30,7 @@ import java.io.PrintWriter;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper class to enable assertions based on golden-data dump files.
|
* Helper class to enable assertions based on golden-data dump files.
|
||||||
@ -53,6 +55,7 @@ public class DumpFileAsserts {
|
|||||||
/** Possible actions to take with the dumps passed to {@link #assertOutput}. */
|
/** Possible actions to take with the dumps passed to {@link #assertOutput}. */
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef(
|
@IntDef(
|
||||||
flag = true,
|
flag = true,
|
||||||
value = {COMPARE_WITH_EXISTING, WRITE_TO_LOCAL, WRITE_TO_DEVICE})
|
value = {COMPARE_WITH_EXISTING, WRITE_TO_LOCAL, WRITE_TO_DEVICE})
|
||||||
|
@ -21,6 +21,7 @@ import static androidx.media3.test.utils.WebServerDispatcher.Resource.GZIP_SUPPO
|
|||||||
import static androidx.media3.test.utils.WebServerDispatcher.Resource.GZIP_SUPPORT_FORCED;
|
import static androidx.media3.test.utils.WebServerDispatcher.Resource.GZIP_SUPPORT_FORCED;
|
||||||
import static java.lang.Math.max;
|
import static java.lang.Math.max;
|
||||||
import static java.lang.Math.min;
|
import static java.lang.Math.min;
|
||||||
|
import static java.lang.annotation.ElementType.TYPE_USE;
|
||||||
|
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
@ -34,6 +35,7 @@ import com.google.common.collect.Maps;
|
|||||||
import java.lang.annotation.Documented;
|
import java.lang.annotation.Documented;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
@ -68,6 +70,7 @@ public class WebServerDispatcher extends Dispatcher {
|
|||||||
*/
|
*/
|
||||||
@Documented
|
@Documented
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
|
@Target(TYPE_USE)
|
||||||
@IntDef({GZIP_SUPPORT_DISABLED, GZIP_SUPPORT_ENABLED, GZIP_SUPPORT_FORCED})
|
@IntDef({GZIP_SUPPORT_DISABLED, GZIP_SUPPORT_ENABLED, GZIP_SUPPORT_FORCED})
|
||||||
private @interface GzipSupport {}
|
private @interface GzipSupport {}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user