Reformat some javadoc
This commit is contained in:
parent
061aac7ab2
commit
38717ce969
@ -260,7 +260,9 @@ public class PlayerActivity extends AppCompatActivity
|
||||
setContentView(R.layout.player_activity);
|
||||
}
|
||||
|
||||
/** @return Whether initialization was successful. */
|
||||
/**
|
||||
* @return Whether initialization was successful.
|
||||
*/
|
||||
protected boolean initializePlayer() {
|
||||
if (player == null) {
|
||||
Intent intent = getIntent();
|
||||
|
@ -31,7 +31,9 @@ import androidx.media3.common.util.Assertions;
|
||||
|
||||
private final TrackGroup trackGroup;
|
||||
|
||||
/** @param trackGroup The {@link TrackGroup} from which the first track will only be selected. */
|
||||
/**
|
||||
* @param trackGroup The {@link TrackGroup} from which the first track will only be selected.
|
||||
*/
|
||||
public CastTrackSelection(TrackGroup trackGroup) {
|
||||
this.trackGroup = trackGroup;
|
||||
}
|
||||
|
@ -97,14 +97,18 @@ public final class AdOverlayInfo {
|
||||
/** An optional, detailed reason that the overlay view is needed. */
|
||||
@Nullable public final String reasonDetail;
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public AdOverlayInfo(View view, @Purpose int purpose) {
|
||||
this(view, purpose, /* detailedReason= */ null);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public AdOverlayInfo(View view, @Purpose int purpose, @Nullable String detailedReason) {
|
||||
|
@ -170,11 +170,17 @@ public final class C {
|
||||
@IntDef({CRYPTO_MODE_UNENCRYPTED, CRYPTO_MODE_AES_CTR, CRYPTO_MODE_AES_CBC})
|
||||
@UnstableApi
|
||||
public @interface CryptoMode {}
|
||||
/** @see MediaCodec#CRYPTO_MODE_UNENCRYPTED */
|
||||
/**
|
||||
* @see MediaCodec#CRYPTO_MODE_UNENCRYPTED
|
||||
*/
|
||||
@UnstableApi public static final int CRYPTO_MODE_UNENCRYPTED = MediaCodec.CRYPTO_MODE_UNENCRYPTED;
|
||||
/** @see MediaCodec#CRYPTO_MODE_AES_CTR */
|
||||
/**
|
||||
* @see MediaCodec#CRYPTO_MODE_AES_CTR
|
||||
*/
|
||||
@UnstableApi public static final int CRYPTO_MODE_AES_CTR = MediaCodec.CRYPTO_MODE_AES_CTR;
|
||||
/** @see MediaCodec#CRYPTO_MODE_AES_CBC */
|
||||
/**
|
||||
* @see MediaCodec#CRYPTO_MODE_AES_CBC
|
||||
*/
|
||||
@UnstableApi public static final int CRYPTO_MODE_AES_CBC = MediaCodec.CRYPTO_MODE_AES_CBC;
|
||||
|
||||
/**
|
||||
@ -243,11 +249,17 @@ public final class C {
|
||||
ENCODING_PCM_FLOAT
|
||||
})
|
||||
public @interface PcmEncoding {}
|
||||
/** @see AudioFormat#ENCODING_INVALID */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_INVALID
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_INVALID = AudioFormat.ENCODING_INVALID;
|
||||
/** @see AudioFormat#ENCODING_PCM_8BIT */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_PCM_8BIT
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_PCM_8BIT = AudioFormat.ENCODING_PCM_8BIT;
|
||||
/** @see AudioFormat#ENCODING_PCM_16BIT */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_PCM_16BIT
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_PCM_16BIT = AudioFormat.ENCODING_PCM_16BIT;
|
||||
/** Like {@link #ENCODING_PCM_16BIT}, but with the bytes in big endian order. */
|
||||
@UnstableApi public static final int ENCODING_PCM_16BIT_BIG_ENDIAN = 0x10000000;
|
||||
@ -255,35 +267,63 @@ public final class C {
|
||||
@UnstableApi public static final int ENCODING_PCM_24BIT = 0x20000000;
|
||||
/** PCM encoding with 32 bits per sample. */
|
||||
@UnstableApi public static final int ENCODING_PCM_32BIT = 0x30000000;
|
||||
/** @see AudioFormat#ENCODING_PCM_FLOAT */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_PCM_FLOAT
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_PCM_FLOAT = AudioFormat.ENCODING_PCM_FLOAT;
|
||||
/** @see AudioFormat#ENCODING_MP3 */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_MP3
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_MP3 = AudioFormat.ENCODING_MP3;
|
||||
/** @see AudioFormat#ENCODING_AAC_LC */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AAC_LC
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AAC_LC = AudioFormat.ENCODING_AAC_LC;
|
||||
/** @see AudioFormat#ENCODING_AAC_HE_V1 */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AAC_HE_V1
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AAC_HE_V1 = AudioFormat.ENCODING_AAC_HE_V1;
|
||||
/** @see AudioFormat#ENCODING_AAC_HE_V2 */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AAC_HE_V2
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AAC_HE_V2 = AudioFormat.ENCODING_AAC_HE_V2;
|
||||
/** @see AudioFormat#ENCODING_AAC_XHE */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AAC_XHE
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AAC_XHE = AudioFormat.ENCODING_AAC_XHE;
|
||||
/** @see AudioFormat#ENCODING_AAC_ELD */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AAC_ELD
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AAC_ELD = AudioFormat.ENCODING_AAC_ELD;
|
||||
/** AAC Error Resilient Bit-Sliced Arithmetic Coding. */
|
||||
@UnstableApi public static final int ENCODING_AAC_ER_BSAC = 0x40000000;
|
||||
/** @see AudioFormat#ENCODING_AC3 */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AC3
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AC3 = AudioFormat.ENCODING_AC3;
|
||||
/** @see AudioFormat#ENCODING_E_AC3 */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_E_AC3
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_E_AC3 = AudioFormat.ENCODING_E_AC3;
|
||||
/** @see AudioFormat#ENCODING_E_AC3_JOC */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_E_AC3_JOC
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_E_AC3_JOC = AudioFormat.ENCODING_E_AC3_JOC;
|
||||
/** @see AudioFormat#ENCODING_AC4 */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_AC4
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_AC4 = AudioFormat.ENCODING_AC4;
|
||||
/** @see AudioFormat#ENCODING_DTS */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_DTS
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_DTS = AudioFormat.ENCODING_DTS;
|
||||
/** @see AudioFormat#ENCODING_DTS_HD */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_DTS_HD
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_DTS_HD = AudioFormat.ENCODING_DTS_HD;
|
||||
/** @see AudioFormat#ENCODING_DOLBY_TRUEHD */
|
||||
/**
|
||||
* @see AudioFormat#ENCODING_DOLBY_TRUEHD
|
||||
*/
|
||||
@UnstableApi public static final int ENCODING_DOLBY_TRUEHD = AudioFormat.ENCODING_DOLBY_TRUEHD;
|
||||
|
||||
/** Represents the behavior affecting whether spatialization will be used. */
|
||||
@ -324,19 +364,33 @@ public final class C {
|
||||
STREAM_TYPE_DEFAULT
|
||||
})
|
||||
public @interface StreamType {}
|
||||
/** @see AudioManager#STREAM_ALARM */
|
||||
/**
|
||||
* @see AudioManager#STREAM_ALARM
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_ALARM = AudioManager.STREAM_ALARM;
|
||||
/** @see AudioManager#STREAM_DTMF */
|
||||
/**
|
||||
* @see AudioManager#STREAM_DTMF
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_DTMF = AudioManager.STREAM_DTMF;
|
||||
/** @see AudioManager#STREAM_MUSIC */
|
||||
/**
|
||||
* @see AudioManager#STREAM_MUSIC
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_MUSIC = AudioManager.STREAM_MUSIC;
|
||||
/** @see AudioManager#STREAM_NOTIFICATION */
|
||||
/**
|
||||
* @see AudioManager#STREAM_NOTIFICATION
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_NOTIFICATION = AudioManager.STREAM_NOTIFICATION;
|
||||
/** @see AudioManager#STREAM_RING */
|
||||
/**
|
||||
* @see AudioManager#STREAM_RING
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_RING = AudioManager.STREAM_RING;
|
||||
/** @see AudioManager#STREAM_SYSTEM */
|
||||
/**
|
||||
* @see AudioManager#STREAM_SYSTEM
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_SYSTEM = AudioManager.STREAM_SYSTEM;
|
||||
/** @see AudioManager#STREAM_VOICE_CALL */
|
||||
/**
|
||||
* @see AudioManager#STREAM_VOICE_CALL
|
||||
*/
|
||||
@UnstableApi public static final int STREAM_TYPE_VOICE_CALL = AudioManager.STREAM_VOICE_CALL;
|
||||
/** The default stream type used by audio renderers. Equal to {@link #STREAM_TYPE_MUSIC}. */
|
||||
@UnstableApi public static final int STREAM_TYPE_DEFAULT = STREAM_TYPE_MUSIC;
|
||||
@ -359,16 +413,26 @@ public final class C {
|
||||
CONTENT_TYPE_UNKNOWN
|
||||
})
|
||||
public @interface AudioContentType {}
|
||||
/** @see android.media.AudioAttributes#CONTENT_TYPE_MOVIE */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#CONTENT_TYPE_MOVIE
|
||||
*/
|
||||
public static final int CONTENT_TYPE_MOVIE = android.media.AudioAttributes.CONTENT_TYPE_MOVIE;
|
||||
/** @see android.media.AudioAttributes#CONTENT_TYPE_MUSIC */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#CONTENT_TYPE_MUSIC
|
||||
*/
|
||||
public static final int CONTENT_TYPE_MUSIC = android.media.AudioAttributes.CONTENT_TYPE_MUSIC;
|
||||
/** @see android.media.AudioAttributes#CONTENT_TYPE_SONIFICATION */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#CONTENT_TYPE_SONIFICATION
|
||||
*/
|
||||
public static final int CONTENT_TYPE_SONIFICATION =
|
||||
android.media.AudioAttributes.CONTENT_TYPE_SONIFICATION;
|
||||
/** @see android.media.AudioAttributes#CONTENT_TYPE_SPEECH */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#CONTENT_TYPE_SPEECH
|
||||
*/
|
||||
public static final int CONTENT_TYPE_SPEECH = android.media.AudioAttributes.CONTENT_TYPE_SPEECH;
|
||||
/** @see android.media.AudioAttributes#CONTENT_TYPE_UNKNOWN */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#CONTENT_TYPE_UNKNOWN
|
||||
*/
|
||||
public static final int CONTENT_TYPE_UNKNOWN = android.media.AudioAttributes.CONTENT_TYPE_UNKNOWN;
|
||||
|
||||
/**
|
||||
@ -386,7 +450,9 @@ public final class C {
|
||||
flag = true,
|
||||
value = {FLAG_AUDIBILITY_ENFORCED})
|
||||
public @interface AudioFlags {}
|
||||
/** @see android.media.AudioAttributes#FLAG_AUDIBILITY_ENFORCED */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#FLAG_AUDIBILITY_ENFORCED
|
||||
*/
|
||||
public static final int FLAG_AUDIBILITY_ENFORCED =
|
||||
android.media.AudioAttributes.FLAG_AUDIBILITY_ENFORCED;
|
||||
|
||||
@ -424,46 +490,78 @@ public final class C {
|
||||
USAGE_VOICE_COMMUNICATION_SIGNALLING
|
||||
})
|
||||
public @interface AudioUsage {}
|
||||
/** @see android.media.AudioAttributes#USAGE_ALARM */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_ALARM
|
||||
*/
|
||||
public static final int USAGE_ALARM = android.media.AudioAttributes.USAGE_ALARM;
|
||||
/** @see android.media.AudioAttributes#USAGE_ASSISTANCE_ACCESSIBILITY */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_ASSISTANCE_ACCESSIBILITY
|
||||
*/
|
||||
public static final int USAGE_ASSISTANCE_ACCESSIBILITY =
|
||||
android.media.AudioAttributes.USAGE_ASSISTANCE_ACCESSIBILITY;
|
||||
/** @see android.media.AudioAttributes#USAGE_ASSISTANCE_NAVIGATION_GUIDANCE */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_ASSISTANCE_NAVIGATION_GUIDANCE
|
||||
*/
|
||||
public static final int USAGE_ASSISTANCE_NAVIGATION_GUIDANCE =
|
||||
android.media.AudioAttributes.USAGE_ASSISTANCE_NAVIGATION_GUIDANCE;
|
||||
/** @see android.media.AudioAttributes#USAGE_ASSISTANCE_SONIFICATION */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_ASSISTANCE_SONIFICATION
|
||||
*/
|
||||
public static final int USAGE_ASSISTANCE_SONIFICATION =
|
||||
android.media.AudioAttributes.USAGE_ASSISTANCE_SONIFICATION;
|
||||
/** @see android.media.AudioAttributes#USAGE_ASSISTANT */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_ASSISTANT
|
||||
*/
|
||||
public static final int USAGE_ASSISTANT = android.media.AudioAttributes.USAGE_ASSISTANT;
|
||||
/** @see android.media.AudioAttributes#USAGE_GAME */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_GAME
|
||||
*/
|
||||
public static final int USAGE_GAME = android.media.AudioAttributes.USAGE_GAME;
|
||||
/** @see android.media.AudioAttributes#USAGE_MEDIA */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_MEDIA
|
||||
*/
|
||||
public static final int USAGE_MEDIA = android.media.AudioAttributes.USAGE_MEDIA;
|
||||
/** @see android.media.AudioAttributes#USAGE_NOTIFICATION */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_NOTIFICATION
|
||||
*/
|
||||
public static final int USAGE_NOTIFICATION = android.media.AudioAttributes.USAGE_NOTIFICATION;
|
||||
/** @see android.media.AudioAttributes#USAGE_NOTIFICATION_COMMUNICATION_DELAYED */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_NOTIFICATION_COMMUNICATION_DELAYED
|
||||
*/
|
||||
public static final int USAGE_NOTIFICATION_COMMUNICATION_DELAYED =
|
||||
android.media.AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_DELAYED;
|
||||
/** @see android.media.AudioAttributes#USAGE_NOTIFICATION_COMMUNICATION_INSTANT */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_NOTIFICATION_COMMUNICATION_INSTANT
|
||||
*/
|
||||
public static final int USAGE_NOTIFICATION_COMMUNICATION_INSTANT =
|
||||
android.media.AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_INSTANT;
|
||||
/** @see android.media.AudioAttributes#USAGE_NOTIFICATION_COMMUNICATION_REQUEST */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_NOTIFICATION_COMMUNICATION_REQUEST
|
||||
*/
|
||||
public static final int USAGE_NOTIFICATION_COMMUNICATION_REQUEST =
|
||||
android.media.AudioAttributes.USAGE_NOTIFICATION_COMMUNICATION_REQUEST;
|
||||
/** @see android.media.AudioAttributes#USAGE_NOTIFICATION_EVENT */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_NOTIFICATION_EVENT
|
||||
*/
|
||||
public static final int USAGE_NOTIFICATION_EVENT =
|
||||
android.media.AudioAttributes.USAGE_NOTIFICATION_EVENT;
|
||||
/** @see android.media.AudioAttributes#USAGE_NOTIFICATION_RINGTONE */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_NOTIFICATION_RINGTONE
|
||||
*/
|
||||
public static final int USAGE_NOTIFICATION_RINGTONE =
|
||||
android.media.AudioAttributes.USAGE_NOTIFICATION_RINGTONE;
|
||||
/** @see android.media.AudioAttributes#USAGE_UNKNOWN */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_UNKNOWN
|
||||
*/
|
||||
public static final int USAGE_UNKNOWN = android.media.AudioAttributes.USAGE_UNKNOWN;
|
||||
/** @see android.media.AudioAttributes#USAGE_VOICE_COMMUNICATION */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_VOICE_COMMUNICATION
|
||||
*/
|
||||
public static final int USAGE_VOICE_COMMUNICATION =
|
||||
android.media.AudioAttributes.USAGE_VOICE_COMMUNICATION;
|
||||
/** @see android.media.AudioAttributes#USAGE_VOICE_COMMUNICATION_SIGNALLING */
|
||||
/**
|
||||
* @see android.media.AudioAttributes#USAGE_VOICE_COMMUNICATION_SIGNALLING
|
||||
*/
|
||||
public static final int USAGE_VOICE_COMMUNICATION_SIGNALLING =
|
||||
android.media.AudioAttributes.USAGE_VOICE_COMMUNICATION_SIGNALLING;
|
||||
|
||||
@ -901,11 +999,17 @@ public final class C {
|
||||
@Target(TYPE_USE)
|
||||
@IntDef({Format.NO_VALUE, COLOR_SPACE_BT709, COLOR_SPACE_BT601, COLOR_SPACE_BT2020})
|
||||
public @interface ColorSpace {}
|
||||
/** @see MediaFormat#COLOR_STANDARD_BT709 */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_STANDARD_BT709
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_SPACE_BT709 = MediaFormat.COLOR_STANDARD_BT709;
|
||||
/** @see MediaFormat#COLOR_STANDARD_BT601_PAL */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_STANDARD_BT601_PAL
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_SPACE_BT601 = MediaFormat.COLOR_STANDARD_BT601_PAL;
|
||||
/** @see MediaFormat#COLOR_STANDARD_BT2020 */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_STANDARD_BT2020
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_SPACE_BT2020 = MediaFormat.COLOR_STANDARD_BT2020;
|
||||
|
||||
/**
|
||||
@ -918,11 +1022,17 @@ public final class C {
|
||||
@Target(TYPE_USE)
|
||||
@IntDef({Format.NO_VALUE, COLOR_TRANSFER_SDR, COLOR_TRANSFER_ST2084, COLOR_TRANSFER_HLG})
|
||||
public @interface ColorTransfer {}
|
||||
/** @see MediaFormat#COLOR_TRANSFER_SDR_VIDEO */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_TRANSFER_SDR_VIDEO
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_TRANSFER_SDR = MediaFormat.COLOR_TRANSFER_SDR_VIDEO;
|
||||
/** @see MediaFormat#COLOR_TRANSFER_ST2084 */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_TRANSFER_ST2084
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_TRANSFER_ST2084 = MediaFormat.COLOR_TRANSFER_ST2084;
|
||||
/** @see MediaFormat#COLOR_TRANSFER_HLG */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_TRANSFER_HLG
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_TRANSFER_HLG = MediaFormat.COLOR_TRANSFER_HLG;
|
||||
|
||||
/**
|
||||
@ -935,9 +1045,13 @@ public final class C {
|
||||
@Target(TYPE_USE)
|
||||
@IntDef({Format.NO_VALUE, COLOR_RANGE_LIMITED, COLOR_RANGE_FULL})
|
||||
public @interface ColorRange {}
|
||||
/** @see MediaFormat#COLOR_RANGE_LIMITED */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_RANGE_LIMITED
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_RANGE_LIMITED = MediaFormat.COLOR_RANGE_LIMITED;
|
||||
/** @see MediaFormat#COLOR_RANGE_FULL */
|
||||
/**
|
||||
* @see MediaFormat#COLOR_RANGE_FULL
|
||||
*/
|
||||
@UnstableApi public static final int COLOR_RANGE_FULL = MediaFormat.COLOR_RANGE_FULL;
|
||||
|
||||
/** Video projection types. */
|
||||
@ -1203,7 +1317,9 @@ public final class C {
|
||||
*/
|
||||
@UnstableApi public static final int FORMAT_UNSUPPORTED_TYPE = 0b000;
|
||||
|
||||
/** @deprecated Use {@link Util#usToMs(long)}. */
|
||||
/**
|
||||
* @deprecated Use {@link Util#usToMs(long)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@InlineMe(
|
||||
replacement = "Util.usToMs(timeUs)",
|
||||
@ -1213,7 +1329,9 @@ public final class C {
|
||||
return Util.usToMs(timeUs);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Util#msToUs(long)}. */
|
||||
/**
|
||||
* @deprecated Use {@link Util#msToUs(long)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@InlineMe(
|
||||
replacement = "Util.msToUs(timeMs)",
|
||||
@ -1223,7 +1341,9 @@ public final class C {
|
||||
return Util.msToUs(timeMs);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Util#generateAudioSessionIdV21(Context)}. */
|
||||
/**
|
||||
* @deprecated Use {@link Util#generateAudioSessionIdV21(Context)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@InlineMe(
|
||||
replacement = "Util.generateAudioSessionIdV21(context)",
|
||||
@ -1234,7 +1354,9 @@ public final class C {
|
||||
return Util.generateAudioSessionIdV21(context);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Util#getFormatSupportString(int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link Util#getFormatSupportString(int)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@InlineMe(
|
||||
replacement = "Util.getFormatSupportString(formatSupport)",
|
||||
@ -1244,7 +1366,9 @@ public final class C {
|
||||
return Util.getFormatSupportString(formatSupport);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Util#getErrorCodeForMediaDrmErrorCode(int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link Util#getErrorCodeForMediaDrmErrorCode(int)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@InlineMe(
|
||||
replacement = "Util.getErrorCodeForMediaDrmErrorCode(mediaDrmErrorCode)",
|
||||
|
@ -92,7 +92,9 @@ public final class DrmInitData implements Comparator<SchemeData>, Parcelable {
|
||||
/** Number of {@link SchemeData}s. */
|
||||
public final int schemeDataCount;
|
||||
|
||||
/** @param schemeDatas Scheme initialization data for possibly multiple DRM schemes. */
|
||||
/**
|
||||
* @param schemeDatas Scheme initialization data for possibly multiple DRM schemes.
|
||||
*/
|
||||
public DrmInitData(List<SchemeData> schemeDatas) {
|
||||
this(null, false, schemeDatas.toArray(new SchemeData[0]));
|
||||
}
|
||||
@ -105,7 +107,9 @@ public final class DrmInitData implements Comparator<SchemeData>, Parcelable {
|
||||
this(schemeType, false, schemeDatas.toArray(new SchemeData[0]));
|
||||
}
|
||||
|
||||
/** @param schemeDatas Scheme initialization data for possibly multiple DRM schemes. */
|
||||
/**
|
||||
* @param schemeDatas Scheme initialization data for possibly multiple DRM schemes.
|
||||
*/
|
||||
public DrmInitData(SchemeData... schemeDatas) {
|
||||
this(null, schemeDatas);
|
||||
}
|
||||
|
@ -769,7 +769,9 @@ public final class Format implements Bundleable {
|
||||
|
||||
// Video.
|
||||
|
||||
/** @deprecated Use {@link Format.Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Format.Builder}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static Format createVideoSampleFormat(
|
||||
@ -798,7 +800,9 @@ public final class Format implements Bundleable {
|
||||
.build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Format.Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Format.Builder}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static Format createVideoSampleFormat(
|
||||
@ -833,7 +837,9 @@ public final class Format implements Bundleable {
|
||||
|
||||
// Audio.
|
||||
|
||||
/** @deprecated Use {@link Format.Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Format.Builder}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static Format createAudioSampleFormat(
|
||||
@ -864,7 +870,9 @@ public final class Format implements Bundleable {
|
||||
.build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Format.Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Format.Builder}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static Format createAudioSampleFormat(
|
||||
@ -899,7 +907,9 @@ public final class Format implements Bundleable {
|
||||
|
||||
// Generic.
|
||||
|
||||
/** @deprecated Use {@link Format.Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Format.Builder}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static Format createContainerFormat(
|
||||
@ -926,7 +936,9 @@ public final class Format implements Bundleable {
|
||||
.build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Format.Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Format.Builder}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static Format createSampleFormat(@Nullable String id, @Nullable String sampleMimeType) {
|
||||
@ -986,28 +998,36 @@ public final class Format implements Bundleable {
|
||||
return new Builder(this);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #buildUpon()} and {@link Builder#setMaxInputSize(int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #buildUpon()} and {@link Builder#setMaxInputSize(int)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithMaxInputSize(int maxInputSize) {
|
||||
return buildUpon().setMaxInputSize(maxInputSize).build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #buildUpon()} and {@link Builder#setSubsampleOffsetUs(long)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #buildUpon()} and {@link Builder#setSubsampleOffsetUs(long)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithSubsampleOffsetUs(long subsampleOffsetUs) {
|
||||
return buildUpon().setSubsampleOffsetUs(subsampleOffsetUs).build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #buildUpon()} and {@link Builder#setLabel(String)} . */
|
||||
/**
|
||||
* @deprecated Use {@link #buildUpon()} and {@link Builder#setLabel(String)} .
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithLabel(@Nullable String label) {
|
||||
return buildUpon().setLabel(label).build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #withManifestFormatInfo(Format)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #withManifestFormatInfo(Format)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithManifestFormatInfo(Format manifestFormat) {
|
||||
@ -1092,21 +1112,27 @@ public final class Format implements Bundleable {
|
||||
return buildUpon().setEncoderDelay(encoderDelay).setEncoderPadding(encoderPadding).build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #buildUpon()} and {@link Builder#setFrameRate(float)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #buildUpon()} and {@link Builder#setFrameRate(float)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithFrameRate(float frameRate) {
|
||||
return buildUpon().setFrameRate(frameRate).build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #buildUpon()} and {@link Builder#setDrmInitData(DrmInitData)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #buildUpon()} and {@link Builder#setDrmInitData(DrmInitData)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithDrmInitData(@Nullable DrmInitData drmInitData) {
|
||||
return buildUpon().setDrmInitData(drmInitData).build();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #buildUpon()} and {@link Builder#setMetadata(Metadata)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #buildUpon()} and {@link Builder#setMetadata(Metadata)}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Format copyWithMetadata(@Nullable Metadata metadata) {
|
||||
|
@ -712,7 +712,9 @@ public final class MediaItem implements Bundleable {
|
||||
/** The UUID of the protection scheme. */
|
||||
public final UUID scheme;
|
||||
|
||||
/** @deprecated Use {@link #scheme} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #scheme} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated public final UUID uuid;
|
||||
|
||||
/**
|
||||
@ -721,7 +723,9 @@ public final class MediaItem implements Bundleable {
|
||||
*/
|
||||
@Nullable public final Uri licenseUri;
|
||||
|
||||
/** @deprecated Use {@link #licenseRequestHeaders} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #licenseRequestHeaders} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated public final ImmutableMap<String, String> requestHeaders;
|
||||
|
||||
/** The headers to attach to requests sent to the DRM license server. */
|
||||
@ -742,7 +746,9 @@ public final class MediaItem implements Bundleable {
|
||||
*/
|
||||
public final boolean forceDefaultLicenseUri;
|
||||
|
||||
/** @deprecated Use {@link #forcedSessionTrackTypes}. */
|
||||
/**
|
||||
* @deprecated Use {@link #forcedSessionTrackTypes}.
|
||||
*/
|
||||
@UnstableApi @Deprecated public final ImmutableList<@C.TrackType Integer> sessionForClearTypes;
|
||||
/**
|
||||
* The types of tracks for which to always use a DRM session even if the content is unencrypted.
|
||||
@ -929,7 +935,9 @@ public final class MediaItem implements Bundleable {
|
||||
|
||||
/** Optional subtitles to be sideloaded. */
|
||||
public final ImmutableList<SubtitleConfiguration> subtitleConfigurations;
|
||||
/** @deprecated Use {@link #subtitleConfigurations} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #subtitleConfigurations} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated public final List<Subtitle> subtitles;
|
||||
|
||||
/**
|
||||
@ -998,7 +1006,9 @@ public final class MediaItem implements Bundleable {
|
||||
}
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link LocalConfiguration}. */
|
||||
/**
|
||||
* @deprecated Use {@link LocalConfiguration}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static final class PlaybackProperties extends LocalConfiguration {
|
||||
@ -1160,7 +1170,9 @@ public final class MediaItem implements Bundleable {
|
||||
builder.maxPlaybackSpeed);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public LiveConfiguration(
|
||||
@ -1427,19 +1439,25 @@ public final class MediaItem implements Bundleable {
|
||||
}
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link MediaItem.SubtitleConfiguration} instead */
|
||||
/**
|
||||
* @deprecated Use {@link MediaItem.SubtitleConfiguration} instead
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static final class Subtitle extends SubtitleConfiguration {
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Subtitle(Uri uri, String mimeType, @Nullable String language) {
|
||||
this(uri, mimeType, language, /* selectionFlags= */ 0);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Subtitle(
|
||||
@ -1447,7 +1465,9 @@ public final class MediaItem implements Bundleable {
|
||||
this(uri, mimeType, language, selectionFlags, /* roleFlags= */ 0, /* label= */ null);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Subtitle(
|
||||
@ -1550,7 +1570,9 @@ public final class MediaItem implements Bundleable {
|
||||
return buildClippingProperties();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #build()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #build()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public ClippingProperties buildClippingProperties() {
|
||||
@ -1680,7 +1702,9 @@ public final class MediaItem implements Bundleable {
|
||||
}
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ClippingConfiguration} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ClippingConfiguration} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public static final class ClippingProperties extends ClippingConfiguration {
|
||||
@ -1709,7 +1733,9 @@ public final class MediaItem implements Bundleable {
|
||||
* boundaries.
|
||||
*/
|
||||
@Nullable public final LocalConfiguration localConfiguration;
|
||||
/** @deprecated Use {@link #localConfiguration} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #localConfiguration} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated @Nullable public final PlaybackProperties playbackProperties;
|
||||
|
||||
/** The live playback configuration. */
|
||||
@ -1720,7 +1746,9 @@ public final class MediaItem implements Bundleable {
|
||||
|
||||
/** The clipping properties. */
|
||||
public final ClippingConfiguration clippingConfiguration;
|
||||
/** @deprecated Use {@link #clippingConfiguration} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #clippingConfiguration} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated public final ClippingProperties clippingProperties;
|
||||
|
||||
// Using PlaybackProperties and ClippingProperties until they're deleted.
|
||||
|
@ -248,7 +248,9 @@ public final class MediaMetadata implements Bundleable {
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #setRecordingYear(Integer)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #setRecordingYear(Integer)} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public Builder setYear(@Nullable Integer year) {
|
||||
@ -654,7 +656,9 @@ public final class MediaMetadata implements Bundleable {
|
||||
@Nullable public final @FolderType Integer folderType;
|
||||
/** Optional boolean for media playability. */
|
||||
@Nullable public final Boolean isPlayable;
|
||||
/** @deprecated Use {@link #recordingYear} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #recordingYear} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated @Nullable public final Integer year;
|
||||
/** Optional year of the recording date. */
|
||||
@Nullable public final Integer recordingYear;
|
||||
|
@ -62,12 +62,16 @@ public final class Metadata implements Parcelable {
|
||||
|
||||
private final Entry[] entries;
|
||||
|
||||
/** @param entries The metadata entries. */
|
||||
/**
|
||||
* @param entries The metadata entries.
|
||||
*/
|
||||
public Metadata(Entry... entries) {
|
||||
this.entries = entries;
|
||||
}
|
||||
|
||||
/** @param entries The metadata entries. */
|
||||
/**
|
||||
* @param entries The metadata entries.
|
||||
*/
|
||||
public Metadata(List<? extends Entry> entries) {
|
||||
this.entries = entries.toArray(new Entry[0]);
|
||||
}
|
||||
|
@ -142,7 +142,9 @@ public interface Player {
|
||||
* The UID of the window, or {@code null} if the timeline is {@link Timeline#isEmpty() empty}.
|
||||
*/
|
||||
@Nullable public final Object windowUid;
|
||||
/** @deprecated Use {@link #mediaItemIndex} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #mediaItemIndex} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated public final int windowIndex;
|
||||
/** The media item index. */
|
||||
public final int mediaItemIndex;
|
||||
@ -732,7 +734,9 @@ public interface Player {
|
||||
*/
|
||||
default void onIsLoadingChanged(boolean isLoading) {}
|
||||
|
||||
/** @deprecated Use {@link #onIsLoadingChanged(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #onIsLoadingChanged(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
default void onLoadingChanged(boolean isLoading) {}
|
||||
@ -1446,24 +1450,32 @@ public interface Player {
|
||||
int COMMAND_SEEK_TO_DEFAULT_POSITION = 4;
|
||||
/** Command to seek anywhere into the current {@link MediaItem}. */
|
||||
int COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM = 5;
|
||||
/** @deprecated Use {@link #COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated int COMMAND_SEEK_IN_CURRENT_WINDOW = COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM;
|
||||
/** Command to seek to the default position of the previous {@link MediaItem}. */
|
||||
int COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM = 6;
|
||||
/** @deprecated Use {@link #COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated
|
||||
int COMMAND_SEEK_TO_PREVIOUS_WINDOW = COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM;
|
||||
/** Command to seek to an earlier position in the current or previous {@link MediaItem}. */
|
||||
int COMMAND_SEEK_TO_PREVIOUS = 7;
|
||||
/** Command to seek to the default position of the next {@link MediaItem}. */
|
||||
int COMMAND_SEEK_TO_NEXT_MEDIA_ITEM = 8;
|
||||
/** @deprecated Use {@link #COMMAND_SEEK_TO_NEXT_MEDIA_ITEM} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #COMMAND_SEEK_TO_NEXT_MEDIA_ITEM} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated int COMMAND_SEEK_TO_NEXT_WINDOW = COMMAND_SEEK_TO_NEXT_MEDIA_ITEM;
|
||||
/** Command to seek to a later position in the current or next {@link MediaItem}. */
|
||||
int COMMAND_SEEK_TO_NEXT = 9;
|
||||
/** Command to seek anywhere in any {@link MediaItem}. */
|
||||
int COMMAND_SEEK_TO_MEDIA_ITEM = 10;
|
||||
/** @deprecated Use {@link #COMMAND_SEEK_TO_MEDIA_ITEM} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #COMMAND_SEEK_TO_MEDIA_ITEM} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated int COMMAND_SEEK_TO_WINDOW = COMMAND_SEEK_TO_MEDIA_ITEM;
|
||||
/** Command to seek back by a fixed increment into the current {@link MediaItem}. */
|
||||
int COMMAND_SEEK_BACK = 11;
|
||||
@ -1889,12 +1901,16 @@ public interface Player {
|
||||
*/
|
||||
void seekForward();
|
||||
|
||||
/** @deprecated Use {@link #hasPreviousMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #hasPreviousMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean hasPrevious();
|
||||
|
||||
/** @deprecated Use {@link #hasPreviousMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #hasPreviousMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean hasPreviousWindow();
|
||||
@ -1909,12 +1925,16 @@ public interface Player {
|
||||
*/
|
||||
boolean hasPreviousMediaItem();
|
||||
|
||||
/** @deprecated Use {@link #seekToPreviousMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #seekToPreviousMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void previous();
|
||||
|
||||
/** @deprecated Use {@link #seekToPreviousMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #seekToPreviousMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void seekToPreviousWindow();
|
||||
@ -1961,12 +1981,16 @@ public interface Player {
|
||||
*/
|
||||
void seekToPrevious();
|
||||
|
||||
/** @deprecated Use {@link #hasNextMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #hasNextMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean hasNext();
|
||||
|
||||
/** @deprecated Use {@link #hasNextMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #hasNextMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean hasNextWindow();
|
||||
@ -1981,12 +2005,16 @@ public interface Player {
|
||||
*/
|
||||
boolean hasNextMediaItem();
|
||||
|
||||
/** @deprecated Use {@link #seekToNextMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #seekToNextMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void next();
|
||||
|
||||
/** @deprecated Use {@link #seekToNextMediaItem()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #seekToNextMediaItem()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void seekToNextWindow();
|
||||
@ -2171,7 +2199,9 @@ public interface Player {
|
||||
/** Returns the index of the period currently being played. */
|
||||
int getCurrentPeriodIndex();
|
||||
|
||||
/** @deprecated Use {@link #getCurrentMediaItemIndex()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #getCurrentMediaItemIndex()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
int getCurrentWindowIndex();
|
||||
@ -2183,7 +2213,9 @@ public interface Player {
|
||||
*/
|
||||
int getCurrentMediaItemIndex();
|
||||
|
||||
/** @deprecated Use {@link #getNextMediaItemIndex()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #getNextMediaItemIndex()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
int getNextWindowIndex();
|
||||
@ -2200,7 +2232,9 @@ public interface Player {
|
||||
*/
|
||||
int getNextMediaItemIndex();
|
||||
|
||||
/** @deprecated Use {@link #getPreviousMediaItemIndex()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #getPreviousMediaItemIndex()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
int getPreviousWindowIndex();
|
||||
@ -2262,7 +2296,9 @@ public interface Player {
|
||||
*/
|
||||
long getTotalBufferedDuration();
|
||||
|
||||
/** @deprecated Use {@link #isCurrentMediaItemDynamic()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #isCurrentMediaItemDynamic()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean isCurrentWindowDynamic();
|
||||
@ -2275,7 +2311,9 @@ public interface Player {
|
||||
*/
|
||||
boolean isCurrentMediaItemDynamic();
|
||||
|
||||
/** @deprecated Use {@link #isCurrentMediaItemLive()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #isCurrentMediaItemLive()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean isCurrentWindowLive();
|
||||
@ -2301,7 +2339,9 @@ public interface Player {
|
||||
*/
|
||||
long getCurrentLiveOffset();
|
||||
|
||||
/** @deprecated Use {@link #isCurrentMediaItemSeekable()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #isCurrentMediaItemSeekable()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
boolean isCurrentWindowSeekable();
|
||||
|
@ -44,7 +44,9 @@ public final class StreamKey implements Comparable<StreamKey>, Parcelable {
|
||||
/** The stream index. */
|
||||
public final int streamIndex;
|
||||
|
||||
/** @deprecated Use {@link #streamIndex}. */
|
||||
/**
|
||||
* @deprecated Use {@link #streamIndex}.
|
||||
*/
|
||||
@Deprecated public final int trackIndex;
|
||||
|
||||
/**
|
||||
|
@ -169,7 +169,9 @@ public abstract class Timeline implements Bundleable {
|
||||
*/
|
||||
public Object uid;
|
||||
|
||||
/** @deprecated Use {@link #mediaItem} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #mediaItem} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated @Nullable public Object tag;
|
||||
|
||||
/** The {@link MediaItem} associated to the window. Not necessarily unique. */
|
||||
@ -212,7 +214,9 @@ public abstract class Timeline implements Bundleable {
|
||||
/** Whether this window may change when the timeline is updated. */
|
||||
public boolean isDynamic;
|
||||
|
||||
/** @deprecated Use {@link #isLive()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #isLive()} instead.
|
||||
*/
|
||||
@UnstableApi @Deprecated public boolean isLive;
|
||||
|
||||
/**
|
||||
@ -1178,7 +1182,9 @@ public abstract class Timeline implements Bundleable {
|
||||
== C.INDEX_UNSET;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #getPeriodPositionUs(Window, Period, int, long)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #getPeriodPositionUs(Window, Period, int, long)} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
@InlineMe(replacement = "this.getPeriodPositionUs(window, period, windowIndex, windowPositionUs)")
|
||||
@ -1186,7 +1192,9 @@ public abstract class Timeline implements Bundleable {
|
||||
Window window, Period period, int windowIndex, long windowPositionUs) {
|
||||
return getPeriodPositionUs(window, period, windowIndex, windowPositionUs);
|
||||
}
|
||||
/** @deprecated Use {@link #getPeriodPositionUs(Window, Period, int, long, long)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #getPeriodPositionUs(Window, Period, int, long, long)} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
@Nullable
|
||||
|
@ -32,7 +32,9 @@ public final class TrackSelectionArray {
|
||||
// Lazily initialized hashcode.
|
||||
private int hashCode;
|
||||
|
||||
/** @param trackSelections The selections. Must not be null, but may contain null elements. */
|
||||
/**
|
||||
* @param trackSelections The selections. Must not be null, but may contain null elements.
|
||||
*/
|
||||
public TrackSelectionArray(@NullableType TrackSelection... trackSelections) {
|
||||
this.trackSelections = trackSelections;
|
||||
this.length = trackSelections.length;
|
||||
|
@ -326,7 +326,9 @@ public final class TracksInfo implements Bundleable {
|
||||
return false;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #containsType(int)} and {@link #isTypeSupported(int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #containsType(int)} and {@link #isTypeSupported(int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
@SuppressWarnings("deprecation")
|
||||
@ -334,7 +336,9 @@ public final class TracksInfo implements Bundleable {
|
||||
return isTypeSupportedOrEmpty(trackType, /* allowExceedsCapabilities= */ false);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #containsType(int)} and {@link #isTypeSupported(int, boolean)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #containsType(int)} and {@link #isTypeSupported(int, boolean)}.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public boolean isTypeSupportedOrEmpty(
|
||||
|
@ -36,10 +36,14 @@ public interface Clock {
|
||||
*/
|
||||
long currentTimeMillis();
|
||||
|
||||
/** @see android.os.SystemClock#elapsedRealtime() */
|
||||
/**
|
||||
* @see android.os.SystemClock#elapsedRealtime()
|
||||
*/
|
||||
long elapsedRealtime();
|
||||
|
||||
/** @see android.os.SystemClock#uptimeMillis() */
|
||||
/**
|
||||
* @see android.os.SystemClock#uptimeMillis()
|
||||
*/
|
||||
long uptimeMillis();
|
||||
|
||||
/**
|
||||
|
@ -27,7 +27,9 @@ public abstract class LibraryLoader {
|
||||
private boolean loadAttempted;
|
||||
private boolean isAvailable;
|
||||
|
||||
/** @param libraries The names of the libraries to load. */
|
||||
/**
|
||||
* @param libraries The names of the libraries to load.
|
||||
*/
|
||||
public LibraryLoader(String... libraries) {
|
||||
nativeLibraries = libraries;
|
||||
}
|
||||
|
@ -82,7 +82,9 @@ public final class Log {
|
||||
Log.logStackTraces = logStackTraces;
|
||||
}
|
||||
|
||||
/** @see android.util.Log#d(String, String) */
|
||||
/**
|
||||
* @see android.util.Log#d(String, String)
|
||||
*/
|
||||
@Pure
|
||||
public static void d(@Size(max = 23) String tag, String message) {
|
||||
if (logLevel == LOG_LEVEL_ALL) {
|
||||
@ -90,13 +92,17 @@ public final class Log {
|
||||
}
|
||||
}
|
||||
|
||||
/** @see android.util.Log#d(String, String, Throwable) */
|
||||
/**
|
||||
* @see android.util.Log#d(String, String, Throwable)
|
||||
*/
|
||||
@Pure
|
||||
public static void d(@Size(max = 23) String tag, String message, @Nullable Throwable throwable) {
|
||||
d(tag, appendThrowableString(message, throwable));
|
||||
}
|
||||
|
||||
/** @see android.util.Log#i(String, String) */
|
||||
/**
|
||||
* @see android.util.Log#i(String, String)
|
||||
*/
|
||||
@Pure
|
||||
public static void i(@Size(max = 23) String tag, String message) {
|
||||
if (logLevel <= LOG_LEVEL_INFO) {
|
||||
@ -104,13 +110,17 @@ public final class Log {
|
||||
}
|
||||
}
|
||||
|
||||
/** @see android.util.Log#i(String, String, Throwable) */
|
||||
/**
|
||||
* @see android.util.Log#i(String, String, Throwable)
|
||||
*/
|
||||
@Pure
|
||||
public static void i(@Size(max = 23) String tag, String message, @Nullable Throwable throwable) {
|
||||
i(tag, appendThrowableString(message, throwable));
|
||||
}
|
||||
|
||||
/** @see android.util.Log#w(String, String) */
|
||||
/**
|
||||
* @see android.util.Log#w(String, String)
|
||||
*/
|
||||
@Pure
|
||||
public static void w(@Size(max = 23) String tag, String message) {
|
||||
if (logLevel <= LOG_LEVEL_WARNING) {
|
||||
@ -118,13 +128,17 @@ public final class Log {
|
||||
}
|
||||
}
|
||||
|
||||
/** @see android.util.Log#w(String, String, Throwable) */
|
||||
/**
|
||||
* @see android.util.Log#w(String, String, Throwable)
|
||||
*/
|
||||
@Pure
|
||||
public static void w(@Size(max = 23) String tag, String message, @Nullable Throwable throwable) {
|
||||
w(tag, appendThrowableString(message, throwable));
|
||||
}
|
||||
|
||||
/** @see android.util.Log#e(String, String) */
|
||||
/**
|
||||
* @see android.util.Log#e(String, String)
|
||||
*/
|
||||
@Pure
|
||||
public static void e(@Size(max = 23) String tag, String message) {
|
||||
if (logLevel <= LOG_LEVEL_ERROR) {
|
||||
@ -132,7 +146,9 @@ public final class Log {
|
||||
}
|
||||
}
|
||||
|
||||
/** @see android.util.Log#e(String, String, Throwable) */
|
||||
/**
|
||||
* @see android.util.Log#e(String, String, Throwable)
|
||||
*/
|
||||
@Pure
|
||||
public static void e(@Size(max = 23) String tag, String message, @Nullable Throwable throwable) {
|
||||
e(tag, appendThrowableString(message, throwable));
|
||||
|
@ -30,7 +30,9 @@ public final class LongArray {
|
||||
this(DEFAULT_INITIAL_CAPACITY);
|
||||
}
|
||||
|
||||
/** @param initialCapacity The initial capacity of the array. */
|
||||
/**
|
||||
* @param initialCapacity The initial capacity of the array.
|
||||
*/
|
||||
public LongArray(int initialCapacity) {
|
||||
values = new long[initialCapacity];
|
||||
}
|
||||
|
@ -54,17 +54,29 @@ public final class NotificationUtil {
|
||||
IMPORTANCE_HIGH
|
||||
})
|
||||
public @interface Importance {}
|
||||
/** @see NotificationManager#IMPORTANCE_UNSPECIFIED */
|
||||
/**
|
||||
* @see NotificationManager#IMPORTANCE_UNSPECIFIED
|
||||
*/
|
||||
public static final int IMPORTANCE_UNSPECIFIED = NotificationManager.IMPORTANCE_UNSPECIFIED;
|
||||
/** @see NotificationManager#IMPORTANCE_NONE */
|
||||
/**
|
||||
* @see NotificationManager#IMPORTANCE_NONE
|
||||
*/
|
||||
public static final int IMPORTANCE_NONE = NotificationManager.IMPORTANCE_NONE;
|
||||
/** @see NotificationManager#IMPORTANCE_MIN */
|
||||
/**
|
||||
* @see NotificationManager#IMPORTANCE_MIN
|
||||
*/
|
||||
public static final int IMPORTANCE_MIN = NotificationManager.IMPORTANCE_MIN;
|
||||
/** @see NotificationManager#IMPORTANCE_LOW */
|
||||
/**
|
||||
* @see NotificationManager#IMPORTANCE_LOW
|
||||
*/
|
||||
public static final int IMPORTANCE_LOW = NotificationManager.IMPORTANCE_LOW;
|
||||
/** @see NotificationManager#IMPORTANCE_DEFAULT */
|
||||
/**
|
||||
* @see NotificationManager#IMPORTANCE_DEFAULT
|
||||
*/
|
||||
public static final int IMPORTANCE_DEFAULT = NotificationManager.IMPORTANCE_DEFAULT;
|
||||
/** @see NotificationManager#IMPORTANCE_HIGH */
|
||||
/**
|
||||
* @see NotificationManager#IMPORTANCE_HIGH
|
||||
*/
|
||||
public static final int IMPORTANCE_HIGH = NotificationManager.IMPORTANCE_HIGH;
|
||||
|
||||
/**
|
||||
|
@ -18,7 +18,9 @@ package androidx.media3.database;
|
||||
import android.content.Context;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
|
||||
/** @deprecated Use {@link StandaloneDatabaseProvider}. */
|
||||
/**
|
||||
* @deprecated Use {@link StandaloneDatabaseProvider}.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public final class ExoDatabaseProvider extends StandaloneDatabaseProvider {
|
||||
|
@ -37,7 +37,9 @@ public final class AssetDataSource extends BaseDataSource {
|
||||
/** Thrown when an {@link IOException} is encountered reading a local asset. */
|
||||
public static final class AssetDataSourceException extends DataSourceException {
|
||||
|
||||
/** @deprecated Use {@link #AssetDataSourceException(Throwable, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #AssetDataSourceException(Throwable, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public AssetDataSourceException(IOException cause) {
|
||||
super(cause, PlaybackException.ERROR_CODE_IO_UNSPECIFIED);
|
||||
@ -62,7 +64,9 @@ public final class AssetDataSource extends BaseDataSource {
|
||||
private long bytesRemaining;
|
||||
private boolean opened;
|
||||
|
||||
/** @param context A context. */
|
||||
/**
|
||||
* @param context A context.
|
||||
*/
|
||||
public AssetDataSource(Context context) {
|
||||
super(/* isNetwork= */ false);
|
||||
this.assetManager = context.getAssets();
|
||||
|
@ -36,7 +36,9 @@ public final class ByteArrayDataSource extends BaseDataSource {
|
||||
private int bytesRemaining;
|
||||
private boolean opened;
|
||||
|
||||
/** @param data The data to be read. */
|
||||
/**
|
||||
* @param data The data to be read.
|
||||
*/
|
||||
public ByteArrayDataSource(byte[] data) {
|
||||
super(/* isNetwork= */ false);
|
||||
Assertions.checkNotNull(data);
|
||||
|
@ -46,7 +46,9 @@ public final class ContentDataSource extends BaseDataSource {
|
||||
/** Thrown when an {@link IOException} is encountered reading from a content URI. */
|
||||
public static class ContentDataSourceException extends DataSourceException {
|
||||
|
||||
/** @deprecated Use {@link #ContentDataSourceException(IOException, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #ContentDataSourceException(IOException, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public ContentDataSourceException(IOException cause) {
|
||||
this(cause, PlaybackException.ERROR_CODE_IO_UNSPECIFIED);
|
||||
@ -67,7 +69,9 @@ public final class ContentDataSource extends BaseDataSource {
|
||||
private long bytesRemaining;
|
||||
private boolean opened;
|
||||
|
||||
/** @param context A context. */
|
||||
/**
|
||||
* @param context A context.
|
||||
*/
|
||||
public ContentDataSource(Context context) {
|
||||
super(/* isNetwork= */ false);
|
||||
this.resolver = context.getContentResolver();
|
||||
|
@ -20,7 +20,9 @@ import androidx.annotation.Nullable;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
import androidx.media3.datasource.DataSource.Factory;
|
||||
|
||||
/** @deprecated Use {@link DefaultDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link DefaultDataSource.Factory} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public final class DefaultDataSourceFactory implements Factory {
|
||||
|
@ -229,21 +229,27 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou
|
||||
private long bytesToRead;
|
||||
private long bytesRead;
|
||||
|
||||
/** @deprecated Use {@link DefaultHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link DefaultHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Deprecated
|
||||
public DefaultHttpDataSource() {
|
||||
this(/* userAgent= */ null, DEFAULT_CONNECT_TIMEOUT_MILLIS, DEFAULT_READ_TIMEOUT_MILLIS);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link DefaultHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link DefaultHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Deprecated
|
||||
public DefaultHttpDataSource(@Nullable String userAgent) {
|
||||
this(userAgent, DEFAULT_CONNECT_TIMEOUT_MILLIS, DEFAULT_READ_TIMEOUT_MILLIS);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link DefaultHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link DefaultHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Deprecated
|
||||
public DefaultHttpDataSource(
|
||||
@ -256,7 +262,9 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou
|
||||
/* defaultRequestProperties= */ null);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link DefaultHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link DefaultHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public DefaultHttpDataSource(
|
||||
@Nullable String userAgent,
|
||||
|
@ -41,13 +41,17 @@ public final class FileDataSource extends BaseDataSource {
|
||||
/** Thrown when a {@link FileDataSource} encounters an error reading a file. */
|
||||
public static class FileDataSourceException extends DataSourceException {
|
||||
|
||||
/** @deprecated Use {@link #FileDataSourceException(Throwable, int)} */
|
||||
/**
|
||||
* @deprecated Use {@link #FileDataSourceException(Throwable, int)}
|
||||
*/
|
||||
@Deprecated
|
||||
public FileDataSourceException(Exception cause) {
|
||||
super(cause, PlaybackException.ERROR_CODE_IO_UNSPECIFIED);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #FileDataSourceException(String, Throwable, int)} */
|
||||
/**
|
||||
* @deprecated Use {@link #FileDataSourceException(String, Throwable, int)}
|
||||
*/
|
||||
@Deprecated
|
||||
public FileDataSourceException(String message, IOException cause) {
|
||||
super(message, cause, PlaybackException.ERROR_CODE_IO_UNSPECIFIED);
|
||||
|
@ -19,7 +19,9 @@ import androidx.media3.common.PriorityTaskManager;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
import androidx.media3.datasource.DataSource.Factory;
|
||||
|
||||
/** @deprecated Use {@link PriorityDataSource.Factory}. */
|
||||
/**
|
||||
* @deprecated Use {@link PriorityDataSource.Factory}.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public final class PriorityDataSourceFactory implements Factory {
|
||||
|
@ -58,13 +58,17 @@ public final class RawResourceDataSource extends BaseDataSource {
|
||||
|
||||
/** Thrown when an {@link IOException} is encountered reading from a raw resource. */
|
||||
public static class RawResourceDataSourceException extends DataSourceException {
|
||||
/** @deprecated Use {@link #RawResourceDataSourceException(String, Throwable, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #RawResourceDataSourceException(String, Throwable, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public RawResourceDataSourceException(String message) {
|
||||
super(message, /* cause= */ null, PlaybackException.ERROR_CODE_IO_UNSPECIFIED);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #RawResourceDataSourceException(String, Throwable, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #RawResourceDataSourceException(String, Throwable, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public RawResourceDataSourceException(Throwable cause) {
|
||||
super(cause, PlaybackException.ERROR_CODE_IO_UNSPECIFIED);
|
||||
@ -101,7 +105,9 @@ public final class RawResourceDataSource extends BaseDataSource {
|
||||
private long bytesRemaining;
|
||||
private boolean opened;
|
||||
|
||||
/** @param context A context. */
|
||||
/**
|
||||
* @param context A context.
|
||||
*/
|
||||
public RawResourceDataSource(Context context) {
|
||||
super(/* isNetwork= */ false);
|
||||
this.resources = context.getResources();
|
||||
|
@ -94,7 +94,9 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||
}
|
||||
}
|
||||
|
||||
/** @param databaseProvider Provides the database in which the index is stored. */
|
||||
/**
|
||||
* @param databaseProvider Provides the database in which the index is stored.
|
||||
*/
|
||||
public CacheFileMetadataIndex(DatabaseProvider databaseProvider) {
|
||||
this.databaseProvider = databaseProvider;
|
||||
}
|
||||
|
@ -43,7 +43,9 @@ public final class DefaultContentMetadata implements ContentMetadata {
|
||||
this(Collections.emptyMap());
|
||||
}
|
||||
|
||||
/** @param metadata The metadata entries in their raw byte array form. */
|
||||
/**
|
||||
* @param metadata The metadata entries in their raw byte array form.
|
||||
*/
|
||||
public DefaultContentMetadata(Map<String, byte[]> metadata) {
|
||||
this.metadata = Collections.unmodifiableMap(metadata);
|
||||
}
|
||||
|
@ -345,7 +345,9 @@ public class CronetDataSource extends BaseDataSource implements HttpDataSource {
|
||||
*/
|
||||
public final int cronetConnectionStatus;
|
||||
|
||||
/** @deprecated Use {@link #OpenException(IOException, DataSpec, int, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #OpenException(IOException, DataSpec, int, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public OpenException(IOException cause, DataSpec dataSpec, int cronetConnectionStatus) {
|
||||
super(cause, dataSpec, PlaybackException.ERROR_CODE_IO_UNSPECIFIED, TYPE_OPEN);
|
||||
@ -361,7 +363,9 @@ public class CronetDataSource extends BaseDataSource implements HttpDataSource {
|
||||
this.cronetConnectionStatus = cronetConnectionStatus;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #OpenException(String, DataSpec, int, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #OpenException(String, DataSpec, int, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public OpenException(String errorMessage, DataSpec dataSpec, int cronetConnectionStatus) {
|
||||
super(errorMessage, dataSpec, PlaybackException.ERROR_CODE_IO_UNSPECIFIED, TYPE_OPEN);
|
||||
|
@ -26,7 +26,9 @@ import androidx.media3.datasource.TransferListener;
|
||||
import java.util.concurrent.Executor;
|
||||
import org.chromium.net.CronetEngine;
|
||||
|
||||
/** @deprecated Use {@link CronetDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link CronetDataSource.Factory} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public final class CronetDataSourceFactory extends BaseFactory {
|
||||
|
@ -181,21 +181,27 @@ public class OkHttpDataSource extends BaseDataSource implements HttpDataSource {
|
||||
private long bytesToRead;
|
||||
private long bytesRead;
|
||||
|
||||
/** @deprecated Use {@link OkHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link OkHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Deprecated
|
||||
public OkHttpDataSource(Call.Factory callFactory) {
|
||||
this(callFactory, /* userAgent= */ null);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link OkHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link OkHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Deprecated
|
||||
public OkHttpDataSource(Call.Factory callFactory, @Nullable String userAgent) {
|
||||
this(callFactory, userAgent, /* cacheControl= */ null, /* defaultRequestProperties= */ null);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link OkHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link OkHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public OkHttpDataSource(
|
||||
Call.Factory callFactory,
|
||||
|
@ -23,7 +23,9 @@ import androidx.media3.datasource.TransferListener;
|
||||
import okhttp3.CacheControl;
|
||||
import okhttp3.Call;
|
||||
|
||||
/** @deprecated Use {@link OkHttpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link OkHttpDataSource.Factory} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public final class OkHttpDataSourceFactory extends BaseFactory {
|
||||
|
@ -20,7 +20,9 @@ import androidx.media3.common.util.UnstableApi;
|
||||
import androidx.media3.datasource.DataSource;
|
||||
import androidx.media3.datasource.TransferListener;
|
||||
|
||||
/** @deprecated Use {@link RtmpDataSource.Factory} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link RtmpDataSource.Factory} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public final class RtmpDataSourceFactory implements DataSource.Factory {
|
||||
@ -31,7 +33,9 @@ public final class RtmpDataSourceFactory implements DataSource.Factory {
|
||||
this(null);
|
||||
}
|
||||
|
||||
/** @param listener An optional listener. */
|
||||
/**
|
||||
* @param listener An optional listener.
|
||||
*/
|
||||
public RtmpDataSourceFactory(@Nullable TransferListener listener) {
|
||||
this.listener = listener;
|
||||
}
|
||||
|
@ -69,9 +69,13 @@ public final class CryptoInfo {
|
||||
* @see android.media.MediaCodec.CryptoInfo#numSubSamples
|
||||
*/
|
||||
public int numSubSamples;
|
||||
/** @see android.media.MediaCodec.CryptoInfo.Pattern */
|
||||
/**
|
||||
* @see android.media.MediaCodec.CryptoInfo.Pattern
|
||||
*/
|
||||
public int encryptedBlocks;
|
||||
/** @see android.media.MediaCodec.CryptoInfo.Pattern */
|
||||
/**
|
||||
* @see android.media.MediaCodec.CryptoInfo.Pattern
|
||||
*/
|
||||
public int clearBlocks;
|
||||
|
||||
private final android.media.MediaCodec.CryptoInfo frameworkCryptoInfo;
|
||||
@ -82,7 +86,9 @@ public final class CryptoInfo {
|
||||
patternHolder = Util.SDK_INT >= 24 ? new PatternHolderV24(frameworkCryptoInfo) : null;
|
||||
}
|
||||
|
||||
/** @see android.media.MediaCodec.CryptoInfo#set(int, int[], int[], byte[], byte[], int) */
|
||||
/**
|
||||
* @see android.media.MediaCodec.CryptoInfo#set(int, int[], int[], byte[], byte[], int)
|
||||
*/
|
||||
public void set(
|
||||
int numSubSamples,
|
||||
int[] numBytesOfClearData,
|
||||
|
@ -114,17 +114,27 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
||||
AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE
|
||||
})
|
||||
private @interface AudioFocusGain {}
|
||||
/** @see AudioManager#AUDIOFOCUS_NONE */
|
||||
/**
|
||||
* @see AudioManager#AUDIOFOCUS_NONE
|
||||
*/
|
||||
@SuppressWarnings("InlinedApi")
|
||||
private static final int AUDIOFOCUS_NONE = AudioManager.AUDIOFOCUS_NONE;
|
||||
/** @see AudioManager#AUDIOFOCUS_GAIN */
|
||||
/**
|
||||
* @see AudioManager#AUDIOFOCUS_GAIN
|
||||
*/
|
||||
private static final int AUDIOFOCUS_GAIN = AudioManager.AUDIOFOCUS_GAIN;
|
||||
/** @see AudioManager#AUDIOFOCUS_GAIN_TRANSIENT */
|
||||
/**
|
||||
* @see AudioManager#AUDIOFOCUS_GAIN_TRANSIENT
|
||||
*/
|
||||
private static final int AUDIOFOCUS_GAIN_TRANSIENT = AudioManager.AUDIOFOCUS_GAIN_TRANSIENT;
|
||||
/** @see AudioManager#AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK */
|
||||
/**
|
||||
* @see AudioManager#AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK
|
||||
*/
|
||||
private static final int AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK =
|
||||
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK;
|
||||
/** @see AudioManager#AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE */
|
||||
/**
|
||||
* @see AudioManager#AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE
|
||||
*/
|
||||
@SuppressWarnings("InlinedApi")
|
||||
private static final int AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE =
|
||||
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE;
|
||||
|
@ -224,7 +224,9 @@ public class DefaultLoadControl implements LoadControl {
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated use {@link #build} instead. */
|
||||
/**
|
||||
* @deprecated use {@link #build} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public DefaultLoadControl createDefaultLoadControl() {
|
||||
return build();
|
||||
|
@ -103,7 +103,9 @@ public class DefaultRenderersFactory implements RenderersFactory {
|
||||
private boolean enableAudioTrackPlaybackParams;
|
||||
private boolean enableOffload;
|
||||
|
||||
/** @param context A {@link Context}. */
|
||||
/**
|
||||
* @param context A {@link Context}.
|
||||
*/
|
||||
public DefaultRenderersFactory(Context context) {
|
||||
this.context = context;
|
||||
codecAdapterFactory = new DefaultMediaCodecAdapterFactory();
|
||||
|
@ -160,43 +160,63 @@ public interface ExoPlayer extends Player {
|
||||
@Deprecated
|
||||
interface AudioComponent {
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setAudioAttributes(AudioAttributes, boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setAudioAttributes(AudioAttributes, boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setAudioAttributes(AudioAttributes audioAttributes, boolean handleAudioFocus);
|
||||
|
||||
/** @deprecated Use {@link Player#getAudioAttributes()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#getAudioAttributes()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
AudioAttributes getAudioAttributes();
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setAudioSessionId(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setAudioSessionId(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setAudioSessionId(int audioSessionId);
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#getAudioSessionId()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#getAudioSessionId()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
int getAudioSessionId();
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setAuxEffectInfo(AuxEffectInfo)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setAuxEffectInfo(AuxEffectInfo)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setAuxEffectInfo(AuxEffectInfo auxEffectInfo);
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#clearAuxEffectInfo()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#clearAuxEffectInfo()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void clearAuxEffectInfo();
|
||||
|
||||
/** @deprecated Use {@link Player#setVolume(float)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setVolume(float)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVolume(float audioVolume);
|
||||
|
||||
/** @deprecated Use {@link Player#getVolume()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#getVolume()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
float getVolume();
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setSkipSilenceEnabled(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setSkipSilenceEnabled(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setSkipSilenceEnabled(boolean skipSilenceEnabled);
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#getSkipSilenceEnabled()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#getSkipSilenceEnabled()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
boolean getSkipSilenceEnabled();
|
||||
}
|
||||
@ -209,21 +229,29 @@ public interface ExoPlayer extends Player {
|
||||
@Deprecated
|
||||
interface VideoComponent {
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setVideoScalingMode(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setVideoScalingMode(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVideoScalingMode(@C.VideoScalingMode int videoScalingMode);
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#getVideoScalingMode()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#getVideoScalingMode()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@C.VideoScalingMode
|
||||
int getVideoScalingMode();
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setVideoChangeFrameRateStrategy(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setVideoChangeFrameRateStrategy(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVideoChangeFrameRateStrategy(
|
||||
@C.VideoChangeFrameRateStrategy int videoChangeFrameRateStrategy);
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#getVideoChangeFrameRateStrategy()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#getVideoChangeFrameRateStrategy()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@C.VideoChangeFrameRateStrategy
|
||||
int getVideoChangeFrameRateStrategy();
|
||||
@ -242,7 +270,9 @@ public interface ExoPlayer extends Player {
|
||||
@Deprecated
|
||||
void clearVideoFrameMetadataListener(VideoFrameMetadataListener listener);
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer#setCameraMotionListener(CameraMotionListener)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer#setCameraMotionListener(CameraMotionListener)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setCameraMotionListener(CameraMotionListener listener);
|
||||
|
||||
@ -252,43 +282,63 @@ public interface ExoPlayer extends Player {
|
||||
@Deprecated
|
||||
void clearCameraMotionListener(CameraMotionListener listener);
|
||||
|
||||
/** @deprecated Use {@link Player#clearVideoSurface()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#clearVideoSurface()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void clearVideoSurface();
|
||||
|
||||
/** @deprecated Use {@link Player#clearVideoSurface(Surface)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#clearVideoSurface(Surface)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void clearVideoSurface(@Nullable Surface surface);
|
||||
|
||||
/** @deprecated Use {@link Player#setVideoSurface(Surface)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setVideoSurface(Surface)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVideoSurface(@Nullable Surface surface);
|
||||
|
||||
/** @deprecated Use {@link Player#setVideoSurfaceHolder(SurfaceHolder)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setVideoSurfaceHolder(SurfaceHolder)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVideoSurfaceHolder(@Nullable SurfaceHolder surfaceHolder);
|
||||
|
||||
/** @deprecated Use {@link Player#clearVideoSurfaceHolder(SurfaceHolder)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#clearVideoSurfaceHolder(SurfaceHolder)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void clearVideoSurfaceHolder(@Nullable SurfaceHolder surfaceHolder);
|
||||
|
||||
/** @deprecated Use {@link Player#setVideoSurfaceView(SurfaceView)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setVideoSurfaceView(SurfaceView)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVideoSurfaceView(@Nullable SurfaceView surfaceView);
|
||||
|
||||
/** @deprecated Use {@link Player#clearVideoSurfaceView(SurfaceView)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#clearVideoSurfaceView(SurfaceView)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void clearVideoSurfaceView(@Nullable SurfaceView surfaceView);
|
||||
|
||||
/** @deprecated Use {@link Player#setVideoTextureView(TextureView)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setVideoTextureView(TextureView)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setVideoTextureView(@Nullable TextureView textureView);
|
||||
|
||||
/** @deprecated Use {@link Player#clearVideoTextureView(TextureView)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#clearVideoTextureView(TextureView)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void clearVideoTextureView(@Nullable TextureView textureView);
|
||||
|
||||
/** @deprecated Use {@link Player#getVideoSize()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#getVideoSize()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
VideoSize getVideoSize();
|
||||
}
|
||||
@ -301,7 +351,9 @@ public interface ExoPlayer extends Player {
|
||||
@Deprecated
|
||||
interface TextComponent {
|
||||
|
||||
/** @deprecated Use {@link Player#getCurrentCues()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#getCurrentCues()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
List<Cue> getCurrentCues();
|
||||
}
|
||||
@ -314,31 +366,45 @@ public interface ExoPlayer extends Player {
|
||||
@Deprecated
|
||||
interface DeviceComponent {
|
||||
|
||||
/** @deprecated Use {@link Player#getDeviceInfo()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#getDeviceInfo()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
DeviceInfo getDeviceInfo();
|
||||
|
||||
/** @deprecated Use {@link Player#getDeviceVolume()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#getDeviceVolume()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
int getDeviceVolume();
|
||||
|
||||
/** @deprecated Use {@link Player#isDeviceMuted()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#isDeviceMuted()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
boolean isDeviceMuted();
|
||||
|
||||
/** @deprecated Use {@link Player#setDeviceVolume(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setDeviceVolume(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setDeviceVolume(int volume);
|
||||
|
||||
/** @deprecated Use {@link Player#increaseDeviceVolume()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#increaseDeviceVolume()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void increaseDeviceVolume();
|
||||
|
||||
/** @deprecated Use {@link Player#decreaseDeviceVolume()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#decreaseDeviceVolume()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void decreaseDeviceVolume();
|
||||
|
||||
/** @deprecated Use {@link Player#setDeviceMuted(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Player#setDeviceMuted(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
void setDeviceMuted(boolean muted);
|
||||
}
|
||||
@ -1158,12 +1224,16 @@ public interface ExoPlayer extends Player {
|
||||
@UnstableApi
|
||||
Clock getClock();
|
||||
|
||||
/** @deprecated Use {@link #prepare()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #prepare()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void retry();
|
||||
|
||||
/** @deprecated Use {@link #setMediaSource(MediaSource)} and {@link #prepare()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #setMediaSource(MediaSource)} and {@link #prepare()} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void prepare(MediaSource mediaSource);
|
||||
@ -1522,7 +1592,9 @@ public interface ExoPlayer extends Player {
|
||||
*/
|
||||
void setHandleAudioBecomingNoisy(boolean handleAudioBecomingNoisy);
|
||||
|
||||
/** @deprecated Use {@link #setWakeMode(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #setWakeMode(int)} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
void setHandleWakeLock(boolean handleWakeLock);
|
||||
|
@ -155,7 +155,9 @@ public final class PlayerMessage {
|
||||
return payload;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #setLooper(Looper)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #setLooper(Looper)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public PlayerMessage setHandler(Handler handler) {
|
||||
return setLooper(handler.getLooper());
|
||||
|
@ -31,7 +31,9 @@ import java.lang.annotation.Target;
|
||||
@UnstableApi
|
||||
public interface RendererCapabilities {
|
||||
|
||||
/** @deprecated Use {@link C.FormatSupport} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link C.FormatSupport} instead.
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Documented
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@ -47,15 +49,25 @@ public interface RendererCapabilities {
|
||||
@interface FormatSupport {}
|
||||
/** A mask to apply to {@link Capabilities} to obtain the {@link C.FormatSupport} only. */
|
||||
int FORMAT_SUPPORT_MASK = 0b111;
|
||||
/** @deprecated Use {@link C#FORMAT_HANDLED} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link C#FORMAT_HANDLED} instead.
|
||||
*/
|
||||
@Deprecated int FORMAT_HANDLED = C.FORMAT_HANDLED;
|
||||
/** @deprecated Use {@link C#FORMAT_EXCEEDS_CAPABILITIES} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link C#FORMAT_EXCEEDS_CAPABILITIES} instead.
|
||||
*/
|
||||
@Deprecated int FORMAT_EXCEEDS_CAPABILITIES = C.FORMAT_EXCEEDS_CAPABILITIES;
|
||||
/** @deprecated Use {@link C#FORMAT_UNSUPPORTED_DRM} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link C#FORMAT_UNSUPPORTED_DRM} instead.
|
||||
*/
|
||||
@Deprecated int FORMAT_UNSUPPORTED_DRM = C.FORMAT_UNSUPPORTED_DRM;
|
||||
/** @deprecated Use {@link C#FORMAT_UNSUPPORTED_SUBTYPE} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link C#FORMAT_UNSUPPORTED_SUBTYPE} instead.
|
||||
*/
|
||||
@Deprecated int FORMAT_UNSUPPORTED_SUBTYPE = C.FORMAT_UNSUPPORTED_SUBTYPE;
|
||||
/** @deprecated Use {@link C#FORMAT_UNSUPPORTED_TYPE} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link C#FORMAT_UNSUPPORTED_TYPE} instead.
|
||||
*/
|
||||
@Deprecated int FORMAT_UNSUPPORTED_TYPE = C.FORMAT_UNSUPPORTED_TYPE;
|
||||
|
||||
/**
|
||||
|
@ -29,7 +29,9 @@ public final class RendererConfiguration {
|
||||
/** Whether to enable tunneling. */
|
||||
public final boolean tunneling;
|
||||
|
||||
/** @param tunneling Whether to enable tunneling. */
|
||||
/**
|
||||
* @param tunneling Whether to enable tunneling.
|
||||
*/
|
||||
public RendererConfiguration(boolean tunneling) {
|
||||
this.tunneling = tunneling;
|
||||
}
|
||||
|
@ -56,7 +56,9 @@ import androidx.media3.exoplayer.video.spherical.CameraMotionListener;
|
||||
import androidx.media3.extractor.ExtractorsFactory;
|
||||
import java.util.List;
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public class SimpleExoPlayer extends BasePlayer
|
||||
@ -66,20 +68,26 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
ExoPlayer.TextComponent,
|
||||
ExoPlayer.DeviceComponent {
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@SuppressWarnings("deprecation")
|
||||
public static final class Builder {
|
||||
|
||||
private final ExoPlayer.Builder wrappedBuilder;
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#Builder(Context)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#Builder(Context)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder(Context context) {
|
||||
wrappedBuilder = new ExoPlayer.Builder(context);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#Builder(Context, RenderersFactory)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#Builder(Context, RenderersFactory)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder(Context context, RenderersFactory renderersFactory) {
|
||||
wrappedBuilder = new ExoPlayer.Builder(context, renderersFactory);
|
||||
@ -143,7 +151,9 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setTrackSelector(TrackSelector)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setTrackSelector(TrackSelector)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setTrackSelector(TrackSelector trackSelector) {
|
||||
wrappedBuilder.setTrackSelector(trackSelector);
|
||||
@ -159,21 +169,27 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setLoadControl(LoadControl)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setLoadControl(LoadControl)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setLoadControl(LoadControl loadControl) {
|
||||
wrappedBuilder.setLoadControl(loadControl);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setBandwidthMeter(BandwidthMeter)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setBandwidthMeter(BandwidthMeter)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setBandwidthMeter(BandwidthMeter bandwidthMeter) {
|
||||
wrappedBuilder.setBandwidthMeter(bandwidthMeter);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setLooper(Looper)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setLooper(Looper)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setLooper(Looper looper) {
|
||||
wrappedBuilder.setLooper(looper);
|
||||
@ -209,35 +225,45 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setWakeMode(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setWakeMode(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setWakeMode(@C.WakeMode int wakeMode) {
|
||||
wrappedBuilder.setWakeMode(wakeMode);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setHandleAudioBecomingNoisy(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setHandleAudioBecomingNoisy(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setHandleAudioBecomingNoisy(boolean handleAudioBecomingNoisy) {
|
||||
wrappedBuilder.setHandleAudioBecomingNoisy(handleAudioBecomingNoisy);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setSkipSilenceEnabled(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setSkipSilenceEnabled(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setSkipSilenceEnabled(boolean skipSilenceEnabled) {
|
||||
wrappedBuilder.setSkipSilenceEnabled(skipSilenceEnabled);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setVideoScalingMode(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setVideoScalingMode(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setVideoScalingMode(@C.VideoScalingMode int videoScalingMode) {
|
||||
wrappedBuilder.setVideoScalingMode(videoScalingMode);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setVideoChangeFrameRateStrategy(int)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setVideoChangeFrameRateStrategy(int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setVideoChangeFrameRateStrategy(
|
||||
@C.VideoChangeFrameRateStrategy int videoChangeFrameRateStrategy) {
|
||||
@ -245,49 +271,63 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setUseLazyPreparation(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setUseLazyPreparation(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setUseLazyPreparation(boolean useLazyPreparation) {
|
||||
wrappedBuilder.setUseLazyPreparation(useLazyPreparation);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setSeekParameters(SeekParameters)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setSeekParameters(SeekParameters)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setSeekParameters(SeekParameters seekParameters) {
|
||||
wrappedBuilder.setSeekParameters(seekParameters);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setSeekBackIncrementMs(long)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setSeekBackIncrementMs(long)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setSeekBackIncrementMs(@IntRange(from = 1) long seekBackIncrementMs) {
|
||||
wrappedBuilder.setSeekBackIncrementMs(seekBackIncrementMs);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setSeekForwardIncrementMs(long)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setSeekForwardIncrementMs(long)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setSeekForwardIncrementMs(@IntRange(from = 1) long seekForwardIncrementMs) {
|
||||
wrappedBuilder.setSeekForwardIncrementMs(seekForwardIncrementMs);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setReleaseTimeoutMs(long)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setReleaseTimeoutMs(long)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setReleaseTimeoutMs(long releaseTimeoutMs) {
|
||||
wrappedBuilder.setReleaseTimeoutMs(releaseTimeoutMs);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setDetachSurfaceTimeoutMs(long)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setDetachSurfaceTimeoutMs(long)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setDetachSurfaceTimeoutMs(long detachSurfaceTimeoutMs) {
|
||||
wrappedBuilder.setDetachSurfaceTimeoutMs(detachSurfaceTimeoutMs);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setPauseAtEndOfMediaItems(boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setPauseAtEndOfMediaItems(boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setPauseAtEndOfMediaItems(boolean pauseAtEndOfMediaItems) {
|
||||
wrappedBuilder.setPauseAtEndOfMediaItems(pauseAtEndOfMediaItems);
|
||||
@ -304,7 +344,9 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#setClock(Clock)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#setClock(Clock)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@VisibleForTesting
|
||||
public Builder setClock(Clock clock) {
|
||||
@ -312,7 +354,9 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link ExoPlayer.Builder#build()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link ExoPlayer.Builder#build()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public SimpleExoPlayer build() {
|
||||
return wrappedBuilder.buildSimpleExoPlayer();
|
||||
@ -322,7 +366,9 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
private final ExoPlayerImpl player;
|
||||
private final ConditionVariable constructorFinished;
|
||||
|
||||
/** @deprecated Use the {@link ExoPlayer.Builder}. */
|
||||
/**
|
||||
* @deprecated Use the {@link ExoPlayer.Builder}.
|
||||
*/
|
||||
@Deprecated
|
||||
protected SimpleExoPlayer(
|
||||
Context context,
|
||||
@ -349,12 +395,16 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
.setLooper(applicationLooper));
|
||||
}
|
||||
|
||||
/** @param builder The {@link Builder} to obtain all construction parameters. */
|
||||
/**
|
||||
* @param builder The {@link Builder} to obtain all construction parameters.
|
||||
*/
|
||||
protected SimpleExoPlayer(Builder builder) {
|
||||
this(builder.wrappedBuilder);
|
||||
}
|
||||
|
||||
/** @param builder The {@link ExoPlayer.Builder} to obtain all construction parameters. */
|
||||
/**
|
||||
* @param builder The {@link ExoPlayer.Builder} to obtain all construction parameters.
|
||||
*/
|
||||
/* package */ SimpleExoPlayer(ExoPlayer.Builder builder) {
|
||||
constructorFinished = new ConditionVariable();
|
||||
try {
|
||||
@ -696,7 +746,9 @@ public class SimpleExoPlayer extends BasePlayer
|
||||
return player.getPlayerError();
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #prepare()} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #prepare()} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@Override
|
||||
@SuppressWarnings("deprecation") // Calling deprecated method.
|
||||
|
@ -669,7 +669,9 @@ public interface AnalyticsListener {
|
||||
*/
|
||||
default void onIsLoadingChanged(EventTime eventTime, boolean isLoading) {}
|
||||
|
||||
/** @deprecated Use {@link #onIsLoadingChanged(EventTime, boolean)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #onIsLoadingChanged(EventTime, boolean)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onLoadingChanged(EventTime eventTime, boolean isLoading) {}
|
||||
|
||||
@ -840,7 +842,9 @@ public interface AnalyticsListener {
|
||||
*/
|
||||
default void onCues(EventTime eventTime, List<Cue> cues) {}
|
||||
|
||||
/** @deprecated Use {@link #onAudioEnabled} and {@link #onVideoEnabled} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #onAudioEnabled} and {@link #onVideoEnabled} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onDecoderEnabled(
|
||||
EventTime eventTime, int trackType, DecoderCounters decoderCounters) {}
|
||||
@ -860,7 +864,9 @@ public interface AnalyticsListener {
|
||||
@Deprecated
|
||||
default void onDecoderInputFormatChanged(EventTime eventTime, int trackType, Format format) {}
|
||||
|
||||
/** @deprecated Use {@link #onAudioDisabled} and {@link #onVideoDisabled} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #onAudioDisabled} and {@link #onVideoDisabled} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onDecoderDisabled(
|
||||
EventTime eventTime, int trackType, DecoderCounters decoderCounters) {}
|
||||
@ -889,7 +895,9 @@ public interface AnalyticsListener {
|
||||
long initializedTimestampMs,
|
||||
long initializationDurationMs) {}
|
||||
|
||||
/** @deprecated Use {@link #onAudioDecoderInitialized(EventTime, String, long, long)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #onAudioDecoderInitialized(EventTime, String, long, long)}.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onAudioDecoderInitialized(
|
||||
EventTime eventTime, String decoderName, long initializationDurationMs) {}
|
||||
@ -1058,7 +1066,9 @@ public interface AnalyticsListener {
|
||||
long initializedTimestampMs,
|
||||
long initializationDurationMs) {}
|
||||
|
||||
/** @deprecated Use {@link #onVideoDecoderInitialized(EventTime, String, long, long)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #onVideoDecoderInitialized(EventTime, String, long, long)}.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onVideoDecoderInitialized(
|
||||
EventTime eventTime, String decoderName, long initializationDurationMs) {}
|
||||
@ -1164,7 +1174,9 @@ public interface AnalyticsListener {
|
||||
*/
|
||||
default void onVideoSizeChanged(EventTime eventTime, VideoSize videoSize) {}
|
||||
|
||||
/** @deprecated Implement {@link #onVideoSizeChanged(EventTime eventTime, VideoSize)} instead. */
|
||||
/**
|
||||
* @deprecated Implement {@link #onVideoSizeChanged(EventTime eventTime, VideoSize)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onVideoSizeChanged(
|
||||
EventTime eventTime,
|
||||
@ -1184,7 +1196,9 @@ public interface AnalyticsListener {
|
||||
*/
|
||||
default void onSurfaceSizeChanged(EventTime eventTime, int width, int height) {}
|
||||
|
||||
/** @deprecated Implement {@link #onDrmSessionAcquired(EventTime, int)} instead. */
|
||||
/**
|
||||
* @deprecated Implement {@link #onDrmSessionAcquired(EventTime, int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onDrmSessionAcquired(EventTime eventTime) {}
|
||||
|
||||
|
@ -59,7 +59,9 @@ public interface AudioRendererEventListener {
|
||||
default void onAudioDecoderInitialized(
|
||||
String decoderName, long initializedTimestampMs, long initializationDurationMs) {}
|
||||
|
||||
/** @deprecated Use {@link #onAudioInputFormatChanged(Format, DecoderReuseEvaluation)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #onAudioInputFormatChanged(Format, DecoderReuseEvaluation)}.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onAudioInputFormatChanged(Format format) {}
|
||||
|
||||
|
@ -116,11 +116,17 @@ import java.lang.reflect.Method;
|
||||
@Target(TYPE_USE)
|
||||
@IntDef({PLAYSTATE_STOPPED, PLAYSTATE_PAUSED, PLAYSTATE_PLAYING})
|
||||
private @interface PlayState {}
|
||||
/** @see AudioTrack#PLAYSTATE_STOPPED */
|
||||
/**
|
||||
* @see AudioTrack#PLAYSTATE_STOPPED
|
||||
*/
|
||||
private static final int PLAYSTATE_STOPPED = AudioTrack.PLAYSTATE_STOPPED;
|
||||
/** @see AudioTrack#PLAYSTATE_PAUSED */
|
||||
/**
|
||||
* @see AudioTrack#PLAYSTATE_PAUSED
|
||||
*/
|
||||
private static final int PLAYSTATE_PAUSED = AudioTrack.PLAYSTATE_PAUSED;
|
||||
/** @see AudioTrack#PLAYSTATE_PLAYING */
|
||||
/**
|
||||
* @see AudioTrack#PLAYSTATE_PLAYING
|
||||
*/
|
||||
private static final int PLAYSTATE_PLAYING = AudioTrack.PLAYSTATE_PLAYING;
|
||||
|
||||
/**
|
||||
|
@ -533,7 +533,9 @@ public final class DefaultAudioSink implements AudioSink {
|
||||
private boolean offloadDisabledUntilNextConfiguration;
|
||||
private boolean isWaitingForOffloadEndOfStreamHandled;
|
||||
|
||||
/** @deprecated Use {@link Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder}.
|
||||
*/
|
||||
@Deprecated
|
||||
@InlineMeValidationDisabled("Migrate constructor to Builder")
|
||||
@InlineMe(
|
||||
@ -551,7 +553,9 @@ public final class DefaultAudioSink implements AudioSink {
|
||||
.setAudioProcessors(audioProcessors));
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder}.
|
||||
*/
|
||||
@Deprecated
|
||||
@InlineMeValidationDisabled("Migrate constructor to Builder")
|
||||
@InlineMe(
|
||||
@ -573,7 +577,9 @@ public final class DefaultAudioSink implements AudioSink {
|
||||
.setEnableFloatOutput(enableFloatOutput));
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder}. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder}.
|
||||
*/
|
||||
@Deprecated
|
||||
@InlineMeValidationDisabled("Migrate constructor to Builder")
|
||||
@InlineMe(
|
||||
|
@ -30,7 +30,9 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
||||
@UnstableApi
|
||||
public interface DrmSessionEventListener {
|
||||
|
||||
/** @deprecated Implement {@link #onDrmSessionAcquired(int, MediaPeriodId, int)} instead. */
|
||||
/**
|
||||
* @deprecated Implement {@link #onDrmSessionAcquired(int, MediaPeriodId, int)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onDrmSessionAcquired(int windowIndex, @Nullable MediaPeriodId mediaPeriodId) {}
|
||||
|
||||
|
@ -32,7 +32,9 @@ public final class LocalMediaDrmCallback implements MediaDrmCallback {
|
||||
|
||||
private final byte[] keyResponse;
|
||||
|
||||
/** @param keyResponse The fixed response for all key requests. */
|
||||
/**
|
||||
* @param keyResponse The fixed response for all key requests.
|
||||
*/
|
||||
public LocalMediaDrmCallback(byte[] keyResponse) {
|
||||
this.keyResponse = Assertions.checkNotNull(keyResponse);
|
||||
}
|
||||
|
@ -51,7 +51,9 @@ public final class UnsupportedDrmException extends Exception {
|
||||
/** Either {@link #REASON_UNSUPPORTED_SCHEME} or {@link #REASON_INSTANTIATION_ERROR}. */
|
||||
public final @Reason int reason;
|
||||
|
||||
/** @param reason {@link #REASON_UNSUPPORTED_SCHEME} or {@link #REASON_INSTANTIATION_ERROR}. */
|
||||
/**
|
||||
* @param reason {@link #REASON_UNSUPPORTED_SCHEME} or {@link #REASON_INSTANTIATION_ERROR}.
|
||||
*/
|
||||
public UnsupportedDrmException(@Reason int reason) {
|
||||
this.reason = reason;
|
||||
}
|
||||
|
@ -22,12 +22,16 @@ import java.io.IOException;
|
||||
@UnstableApi
|
||||
public final class DownloadException extends IOException {
|
||||
|
||||
/** @param message The message for the exception. */
|
||||
/**
|
||||
* @param message The message for the exception.
|
||||
*/
|
||||
public DownloadException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
/** @param cause The cause for the exception. */
|
||||
/**
|
||||
* @param cause The cause for the exception.
|
||||
*/
|
||||
public DownloadException(Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
|
@ -173,13 +173,17 @@ public final class DownloadHelper {
|
||||
return capabilities;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #forMediaItem(Context, MediaItem)} */
|
||||
/**
|
||||
* @deprecated Use {@link #forMediaItem(Context, MediaItem)}
|
||||
*/
|
||||
@Deprecated
|
||||
public static DownloadHelper forProgressive(Context context, Uri uri) {
|
||||
return forMediaItem(context, new MediaItem.Builder().setUri(uri).build());
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #forMediaItem(Context, MediaItem)} */
|
||||
/**
|
||||
* @deprecated Use {@link #forMediaItem(Context, MediaItem)}
|
||||
*/
|
||||
@Deprecated
|
||||
public static DownloadHelper forProgressive(Context context, Uri uri, @Nullable String cacheKey) {
|
||||
return forMediaItem(
|
||||
|
@ -225,7 +225,9 @@ public abstract class DownloadService extends Service {
|
||||
/* channelDescriptionResourceId= */ 0);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #DownloadService(int, long, String, int, int)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #DownloadService(int, long, String, int, int)}.
|
||||
*/
|
||||
@Deprecated
|
||||
protected DownloadService(
|
||||
int foregroundNotificationId,
|
||||
|
@ -76,7 +76,9 @@ public final class Requirements implements Parcelable {
|
||||
|
||||
private final @RequirementFlags int requirements;
|
||||
|
||||
/** @param requirements A combination of requirement flags. */
|
||||
/**
|
||||
* @param requirements A combination of requirement flags.
|
||||
*/
|
||||
public Requirements(@RequirementFlags int requirements) {
|
||||
if ((requirements & NETWORK_UNMETERED) != 0) {
|
||||
// Make sure network requirement flags are consistent.
|
||||
|
@ -65,7 +65,9 @@ public final class ClippingMediaSource extends CompositeMediaSource<Void> {
|
||||
/** The reason clipping failed. */
|
||||
public final @Reason int reason;
|
||||
|
||||
/** @param reason The reason clipping failed. */
|
||||
/**
|
||||
* @param reason The reason clipping failed.
|
||||
*/
|
||||
public IllegalClippingException(@Reason int reason) {
|
||||
super("Illegal clipping: " + getReasonDescription(reason));
|
||||
this.reason = reason;
|
||||
|
@ -97,7 +97,9 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
||||
@SuppressWarnings("deprecation") // Implement deprecated type for backwards compatibility.
|
||||
public final class DefaultMediaSourceFactory implements MediaSourceFactory {
|
||||
|
||||
/** @deprecated Use {@link AdsLoader.Provider} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link AdsLoader.Provider} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public interface AdsLoaderProvider extends AdsLoader.Provider {}
|
||||
|
@ -22,7 +22,9 @@ import androidx.media3.common.util.UnstableApi;
|
||||
import androidx.media3.exoplayer.drm.DrmSessionManagerProvider;
|
||||
import androidx.media3.exoplayer.upstream.LoadErrorHandlingPolicy;
|
||||
|
||||
/** @deprecated Use {@link MediaSource.Factory}. */
|
||||
/**
|
||||
* @deprecated Use {@link MediaSource.Factory}.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public interface MediaSourceFactory extends MediaSource.Factory {
|
||||
|
@ -63,7 +63,9 @@ public final class MergingMediaSource extends CompositeMediaSource<Integer> {
|
||||
/** The reason the merge failed. */
|
||||
public final @Reason int reason;
|
||||
|
||||
/** @param reason The reason the merge failed. */
|
||||
/**
|
||||
* @param reason The reason the merge failed.
|
||||
*/
|
||||
public IllegalMergeException(@Reason int reason) {
|
||||
this.reason = reason;
|
||||
}
|
||||
|
@ -1484,19 +1484,25 @@ public class DefaultTrackSelector extends MappingTrackSelector {
|
||||
private final ExoTrackSelection.Factory trackSelectionFactory;
|
||||
private final AtomicReference<Parameters> parametersReference;
|
||||
|
||||
/** @deprecated Use {@link #DefaultTrackSelector(Context)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #DefaultTrackSelector(Context)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public DefaultTrackSelector() {
|
||||
this(Parameters.DEFAULT_WITHOUT_CONTEXT, new AdaptiveTrackSelection.Factory());
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #DefaultTrackSelector(Context, ExoTrackSelection.Factory)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #DefaultTrackSelector(Context, ExoTrackSelection.Factory)}.
|
||||
*/
|
||||
@Deprecated
|
||||
public DefaultTrackSelector(ExoTrackSelection.Factory trackSelectionFactory) {
|
||||
this(Parameters.DEFAULT_WITHOUT_CONTEXT, trackSelectionFactory);
|
||||
}
|
||||
|
||||
/** @param context Any {@link Context}. */
|
||||
/**
|
||||
* @param context Any {@link Context}.
|
||||
*/
|
||||
public DefaultTrackSelector(Context context) {
|
||||
this(context, new AdaptiveTrackSelection.Factory());
|
||||
}
|
||||
|
@ -42,7 +42,9 @@ public final class RandomTrackSelection extends BaseTrackSelection {
|
||||
random = new Random();
|
||||
}
|
||||
|
||||
/** @param seed A seed for the {@link Random} instance used by the factory. */
|
||||
/**
|
||||
* @param seed A seed for the {@link Random} instance used by the factory.
|
||||
*/
|
||||
public Factory(int seed) {
|
||||
random = new Random(seed);
|
||||
}
|
||||
|
@ -290,7 +290,9 @@ public final class DefaultBandwidthMeter implements BandwidthMeter, TransferList
|
||||
private boolean networkTypeOverrideSet;
|
||||
private @C.NetworkType int networkTypeOverride;
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public DefaultBandwidthMeter() {
|
||||
this(
|
||||
|
@ -41,7 +41,9 @@ public class DefaultLoadErrorHandlingPolicy implements LoadErrorHandlingPolicy {
|
||||
public static final int DEFAULT_MIN_LOADABLE_RETRY_COUNT_PROGRESSIVE_LIVE = 6;
|
||||
/** The default duration for which a track is excluded in milliseconds. */
|
||||
public static final long DEFAULT_TRACK_EXCLUSION_MS = 60_000;
|
||||
/** @deprecated Use {@link #DEFAULT_TRACK_EXCLUSION_MS} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #DEFAULT_TRACK_EXCLUSION_MS} instead.
|
||||
*/
|
||||
@Deprecated public static final long DEFAULT_TRACK_BLACKLIST_MS = DEFAULT_TRACK_EXCLUSION_MS;
|
||||
/** The default duration for which a location is excluded in milliseconds. */
|
||||
public static final long DEFAULT_LOCATION_EXCLUSION_MS = 5 * 60_000;
|
||||
|
@ -57,7 +57,9 @@ public class SlidingPercentile {
|
||||
private int totalWeight;
|
||||
private int recycledSampleCount;
|
||||
|
||||
/** @param maxWeight The maximum weight. */
|
||||
/**
|
||||
* @param maxWeight The maximum weight.
|
||||
*/
|
||||
public SlidingPercentile(int maxWeight) {
|
||||
this.maxWeight = maxWeight;
|
||||
recycledSamples = new Sample[MAX_RECYCLED_SAMPLES];
|
||||
|
@ -50,7 +50,9 @@ public final class VideoDecoderGLSurfaceView extends GLSurfaceView
|
||||
|
||||
private final Renderer renderer;
|
||||
|
||||
/** @param context A {@link Context}. */
|
||||
/**
|
||||
* @param context A {@link Context}.
|
||||
*/
|
||||
public VideoDecoderGLSurfaceView(Context context) {
|
||||
this(context, /* attrs= */ null);
|
||||
}
|
||||
@ -74,7 +76,9 @@ public final class VideoDecoderGLSurfaceView extends GLSurfaceView
|
||||
renderer.setOutputBuffer(outputBuffer);
|
||||
}
|
||||
|
||||
/** @deprecated This class implements {@link VideoDecoderOutputBufferRenderer} directly. */
|
||||
/**
|
||||
* @deprecated This class implements {@link VideoDecoderOutputBufferRenderer} directly.
|
||||
*/
|
||||
@Deprecated
|
||||
public VideoDecoderOutputBufferRenderer getVideoDecoderOutputBufferRenderer() {
|
||||
return this;
|
||||
|
@ -59,7 +59,9 @@ public interface VideoRendererEventListener {
|
||||
default void onVideoDecoderInitialized(
|
||||
String decoderName, long initializedTimestampMs, long initializationDurationMs) {}
|
||||
|
||||
/** @deprecated Use {@link #onVideoInputFormatChanged(Format, DecoderReuseEvaluation)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #onVideoInputFormatChanged(Format, DecoderReuseEvaluation)}.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onVideoInputFormatChanged(Format format) {}
|
||||
|
||||
|
@ -301,7 +301,9 @@ public final class DashMediaSource extends BaseMediaSource {
|
||||
* if no value is defined in the {@link MediaItem} or the manifest.
|
||||
*/
|
||||
public static final long DEFAULT_FALLBACK_TARGET_LIVE_OFFSET_MS = 30_000;
|
||||
/** @deprecated Use {@link #DEFAULT_FALLBACK_TARGET_LIVE_OFFSET_MS} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #DEFAULT_FALLBACK_TARGET_LIVE_OFFSET_MS} instead.
|
||||
*/
|
||||
@Deprecated public static final long DEFAULT_LIVE_PRESENTATION_DELAY_MS = 30_000;
|
||||
/** The media id used by media items of dash media sources without a manifest URI. */
|
||||
public static final String DEFAULT_MEDIA_ID = "DashMediaSource";
|
||||
|
@ -23,7 +23,9 @@ import androidx.media3.exoplayer.dash.DashSegmentIndex;
|
||||
|
||||
private final RangedUri uri;
|
||||
|
||||
/** @param uri A {@link RangedUri} defining the location of the segment data. */
|
||||
/**
|
||||
* @param uri A {@link RangedUri} defining the location of the segment data.
|
||||
*/
|
||||
public SingleSegmentIndex(RangedUri uri) {
|
||||
this.uri = uri;
|
||||
}
|
||||
|
@ -24,7 +24,9 @@ public final class DefaultHlsDataSourceFactory implements HlsDataSourceFactory {
|
||||
|
||||
private final DataSource.Factory dataSourceFactory;
|
||||
|
||||
/** @param dataSourceFactory The {@link DataSource.Factory} to use for all data types. */
|
||||
/**
|
||||
* @param dataSourceFactory The {@link DataSource.Factory} to use for all data types.
|
||||
*/
|
||||
public DefaultHlsDataSourceFactory(DataSource.Factory dataSourceFactory) {
|
||||
this.dataSourceFactory = dataSourceFactory;
|
||||
}
|
||||
|
@ -24,7 +24,9 @@ import androidx.media3.exoplayer.hls.playlist.HlsMultivariantPlaylist;
|
||||
@UnstableApi
|
||||
public final class HlsManifest {
|
||||
|
||||
/** @deprecated Use {@link #multivariantPlaylist} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #multivariantPlaylist} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@SuppressWarnings("deprecation") // Keeping deprecated field with deprecated class.
|
||||
public final HlsMasterPlaylist masterPlaylist;
|
||||
|
@ -25,7 +25,9 @@ import java.io.IOException;
|
||||
@UnstableApi
|
||||
public final class SampleQueueMappingException extends IOException {
|
||||
|
||||
/** @param mimeType The mime type of the track group whose mapping failed. */
|
||||
/**
|
||||
* @param mimeType The mime type of the track group whose mapping failed.
|
||||
*/
|
||||
public SampleQueueMappingException(@Nullable String mimeType) {
|
||||
super("Unable to bind a sample queue to TrackGroup with mime type " + mimeType + ".");
|
||||
}
|
||||
|
@ -22,7 +22,9 @@ import androidx.media3.common.util.UnstableApi;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/** @deprecated Use {@link HlsMultivariantPlaylist} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link HlsMultivariantPlaylist} instead.
|
||||
*/
|
||||
@UnstableApi
|
||||
@Deprecated
|
||||
public final class HlsMasterPlaylist extends HlsMultivariantPlaylist {
|
||||
|
@ -225,17 +225,23 @@ public class SsManifestParser implements ParsingLoadable.Parser<SsManifest> {
|
||||
// Do nothing.
|
||||
}
|
||||
|
||||
/** @param xmlParser The underlying {@link XmlPullParser} */
|
||||
/**
|
||||
* @param xmlParser The underlying {@link XmlPullParser}
|
||||
*/
|
||||
protected void parseText(XmlPullParser xmlParser) {
|
||||
// Do nothing.
|
||||
}
|
||||
|
||||
/** @param xmlParser The underlying {@link XmlPullParser} */
|
||||
/**
|
||||
* @param xmlParser The underlying {@link XmlPullParser}
|
||||
*/
|
||||
protected void parseEndTag(XmlPullParser xmlParser) {
|
||||
// Do nothing.
|
||||
}
|
||||
|
||||
/** @param parsedChild A parsed child object. */
|
||||
/**
|
||||
* @param parsedChild A parsed child object.
|
||||
*/
|
||||
protected void addChild(Object parsedChild) {
|
||||
// Do nothing.
|
||||
}
|
||||
|
@ -56,7 +56,9 @@ public final class WorkManagerScheduler implements Scheduler {
|
||||
private final WorkManager workManager;
|
||||
private final String workName;
|
||||
|
||||
/** @deprecated Call {@link #WorkManagerScheduler(Context, String)} instead. */
|
||||
/**
|
||||
* @deprecated Call {@link #WorkManagerScheduler(Context, String)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@SuppressWarnings("deprecation")
|
||||
public WorkManagerScheduler(String workName) {
|
||||
|
@ -534,7 +534,9 @@ public abstract class BinarySearchSeeker {
|
||||
return durationUs;
|
||||
}
|
||||
|
||||
/** @see SeekTimestampConverter#timeUsToTargetTime(long) */
|
||||
/**
|
||||
* @see SeekTimestampConverter#timeUsToTargetTime(long)
|
||||
*/
|
||||
public long timeUsToTargetTime(long timeUs) {
|
||||
return seekTimestampConverter.timeUsToTargetTime(timeUs);
|
||||
}
|
||||
|
@ -75,7 +75,9 @@ public interface SeekMap {
|
||||
/** The second seek point, or {@link #first} if there's only one seek point. */
|
||||
public final SeekPoint second;
|
||||
|
||||
/** @param point The single seek point. */
|
||||
/**
|
||||
* @param point The single seek point.
|
||||
*/
|
||||
public SeekPoints(SeekPoint point) {
|
||||
this(point, point);
|
||||
}
|
||||
|
@ -171,7 +171,9 @@ public final class AmrExtractor implements Extractor {
|
||||
this(/* flags= */ 0);
|
||||
}
|
||||
|
||||
/** @param flags Flags that control the extractor's behavior. */
|
||||
/**
|
||||
* @param flags Flags that control the extractor's behavior.
|
||||
*/
|
||||
public AmrExtractor(@Flags int flags) {
|
||||
if ((flags & FLAG_ENABLE_CONSTANT_BITRATE_SEEKING_ALWAYS) != 0) {
|
||||
flags |= FLAG_ENABLE_CONSTANT_BITRATE_SEEKING;
|
||||
|
@ -33,7 +33,9 @@ import androidx.media3.extractor.TrackOutput;
|
||||
|
||||
protected final TrackOutput output;
|
||||
|
||||
/** @param output A {@link TrackOutput} to which samples should be written. */
|
||||
/**
|
||||
* @param output A {@link TrackOutput} to which samples should be written.
|
||||
*/
|
||||
protected TagPayloadReader(TrackOutput output) {
|
||||
this.output = output;
|
||||
}
|
||||
|
@ -48,7 +48,9 @@ import androidx.media3.extractor.TrackOutput;
|
||||
private boolean hasOutputKeyframe;
|
||||
private int frameType;
|
||||
|
||||
/** @param output A {@link TrackOutput} to which samples should be written. */
|
||||
/**
|
||||
* @param output A {@link TrackOutput} to which samples should be written.
|
||||
*/
|
||||
public VideoTagPayloadReader(TrackOutput output) {
|
||||
super(output);
|
||||
nalStartCode = new ParsableByteArray(NalUnitUtil.NAL_START_CODE);
|
||||
|
@ -24,7 +24,9 @@ import androidx.media3.common.MediaMetadata;
|
||||
import androidx.media3.common.Metadata;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
|
||||
/** @deprecated Use {@link androidx.media3.extractor.metadata.vorbis.VorbisComment} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link androidx.media3.extractor.metadata.vorbis.VorbisComment} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
@UnstableApi
|
||||
public class VorbisComment implements Metadata.Entry {
|
||||
|
@ -171,7 +171,9 @@ public final class Mp3Extractor implements Extractor {
|
||||
this(0);
|
||||
}
|
||||
|
||||
/** @param flags Flags that control the extractor's behavior. */
|
||||
/**
|
||||
* @param flags Flags that control the extractor's behavior.
|
||||
*/
|
||||
public Mp3Extractor(@Flags int flags) {
|
||||
this(flags, C.TIME_UNSET);
|
||||
}
|
||||
|
@ -188,7 +188,9 @@ public class FragmentedMp4Extractor implements Extractor {
|
||||
this(0);
|
||||
}
|
||||
|
||||
/** @param flags Flags that control the extractor's behavior. */
|
||||
/**
|
||||
* @param flags Flags that control the extractor's behavior.
|
||||
*/
|
||||
public FragmentedMp4Extractor(@Flags int flags) {
|
||||
this(flags, /* timestampAdjuster= */ null);
|
||||
}
|
||||
|
@ -90,7 +90,9 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
||||
currentGranule = 0;
|
||||
}
|
||||
|
||||
/** @see Extractor#seek(long, long) */
|
||||
/**
|
||||
* @see Extractor#seek(long, long)
|
||||
*/
|
||||
final void seek(long position, long timeUs) {
|
||||
oggPacket.reset();
|
||||
if (position == 0) {
|
||||
@ -104,7 +106,9 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
|
||||
}
|
||||
}
|
||||
|
||||
/** @see Extractor#read(ExtractorInput, PositionHolder) */
|
||||
/**
|
||||
* @see Extractor#read(ExtractorInput, PositionHolder)
|
||||
*/
|
||||
final int read(ExtractorInput input, PositionHolder seekPosition) throws IOException {
|
||||
assertInitialized();
|
||||
switch (state) {
|
||||
|
@ -30,7 +30,9 @@ public abstract class SimpleSubtitleDecoder
|
||||
|
||||
private final String name;
|
||||
|
||||
/** @param name The name of the decoder. */
|
||||
/**
|
||||
* @param name The name of the decoder.
|
||||
*/
|
||||
@SuppressWarnings("nullness:method.invocation")
|
||||
protected SimpleSubtitleDecoder(String name) {
|
||||
super(new SubtitleInputBuffer[2], new SubtitleOutputBuffer[2]);
|
||||
|
@ -23,12 +23,16 @@ import androidx.media3.decoder.DecoderException;
|
||||
@UnstableApi
|
||||
public class SubtitleDecoderException extends DecoderException {
|
||||
|
||||
/** @param message The detail message for this exception. */
|
||||
/**
|
||||
* @param message The detail message for this exception.
|
||||
*/
|
||||
public SubtitleDecoderException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
/** @param cause The cause of this exception, or {@code null}. */
|
||||
/**
|
||||
* @param cause The cause of this exception, or {@code null}.
|
||||
*/
|
||||
public SubtitleDecoderException(@Nullable Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
|
@ -27,7 +27,9 @@ import java.util.List;
|
||||
|
||||
private final List<Cue> cues;
|
||||
|
||||
/** @param cues The subtitle cues. */
|
||||
/**
|
||||
* @param cues The subtitle cues.
|
||||
*/
|
||||
public CeaSubtitle(List<Cue> cues) {
|
||||
this.cues = cues;
|
||||
}
|
||||
|
@ -100,7 +100,9 @@ public final class AdtsReader implements ElementaryStreamReader {
|
||||
private @MonotonicNonNull TrackOutput currentOutput;
|
||||
private long currentSampleDuration;
|
||||
|
||||
/** @param exposeId3 True if the reader should expose ID3 information. */
|
||||
/**
|
||||
* @param exposeId3 True if the reader should expose ID3 information.
|
||||
*/
|
||||
public AdtsReader(boolean exposeId3) {
|
||||
this(exposeId3, null);
|
||||
}
|
||||
|
@ -41,7 +41,9 @@ public final class DvbSubtitleReader implements ElementaryStreamReader {
|
||||
private int sampleBytesWritten;
|
||||
private long sampleTimeUs;
|
||||
|
||||
/** @param subtitleInfos Information about the DVB subtitles associated to the stream. */
|
||||
/**
|
||||
* @param subtitleInfos Information about the DVB subtitles associated to the stream.
|
||||
*/
|
||||
public DvbSubtitleReader(List<DvbSubtitleInfo> subtitleInfos) {
|
||||
this.subtitleInfos = subtitleInfos;
|
||||
outputs = new TrackOutput[subtitleInfos.size()];
|
||||
|
@ -78,7 +78,9 @@ public final class H265Reader implements ElementaryStreamReader {
|
||||
// Scratch variables to avoid allocations.
|
||||
private final ParsableByteArray seiWrapper;
|
||||
|
||||
/** @param seiReader An SEI reader for consuming closed caption channels. */
|
||||
/**
|
||||
* @param seiReader An SEI reader for consuming closed caption channels.
|
||||
*/
|
||||
public H265Reader(SeiReader seiReader) {
|
||||
this.seiReader = seiReader;
|
||||
prefixFlags = new boolean[3];
|
||||
|
@ -75,7 +75,9 @@ public final class LatmReader implements ElementaryStreamReader {
|
||||
private int channelCount;
|
||||
@Nullable private String codecs;
|
||||
|
||||
/** @param language Track language. */
|
||||
/**
|
||||
* @param language Track language.
|
||||
*/
|
||||
public LatmReader(@Nullable String language) {
|
||||
this.language = language;
|
||||
sampleDataBuffer = new ParsableByteArray(INITIAL_BUFFER_SIZE);
|
||||
|
@ -35,7 +35,9 @@ public final class SeiReader {
|
||||
private final List<Format> closedCaptionFormats;
|
||||
private final TrackOutput[] outputs;
|
||||
|
||||
/** @param closedCaptionFormats A list of formats for the closed caption channels to expose. */
|
||||
/**
|
||||
* @param closedCaptionFormats A list of formats for the closed caption channels to expose.
|
||||
*/
|
||||
public SeiReader(List<Format> closedCaptionFormats) {
|
||||
this.closedCaptionFormats = closedCaptionFormats;
|
||||
outputs = new TrackOutput[closedCaptionFormats.size()];
|
||||
|
@ -30,7 +30,9 @@ public abstract class PollingCheck {
|
||||
|
||||
/** The condition that the PollingCheck should use to proceed successfully. */
|
||||
public interface PollingCheckCondition {
|
||||
/** @return Whether the polling condition has been met. */
|
||||
/**
|
||||
* @return Whether the polling condition has been met.
|
||||
*/
|
||||
boolean canProceed() throws Exception;
|
||||
}
|
||||
|
||||
|
@ -323,7 +323,9 @@ public abstract class Action {
|
||||
/** Calls {@link ExoPlayer#clearMediaItems()}}. */
|
||||
public static class ClearMediaItems extends Action {
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public ClearMediaItems(String tag) {
|
||||
super(tag, "ClearMediaItems");
|
||||
}
|
||||
@ -426,7 +428,9 @@ public abstract class Action {
|
||||
/** Calls {@link ExoPlayer#clearVideoSurface()}. */
|
||||
public static final class ClearVideoSurface extends Action {
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public ClearVideoSurface(String tag) {
|
||||
super(tag, "ClearVideoSurface");
|
||||
}
|
||||
@ -441,7 +445,9 @@ public abstract class Action {
|
||||
/** Calls {@link ExoPlayer#setVideoSurface(Surface)}. */
|
||||
public static final class SetVideoSurface extends Action {
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public SetVideoSurface(String tag) {
|
||||
super(tag, "SetVideoSurface");
|
||||
}
|
||||
@ -480,7 +486,9 @@ public abstract class Action {
|
||||
|
||||
/** Calls {@link ExoPlayer#prepare()}. */
|
||||
public static final class Prepare extends Action {
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public Prepare(String tag) {
|
||||
super(tag, "Prepare");
|
||||
}
|
||||
@ -817,7 +825,9 @@ public abstract class Action {
|
||||
*/
|
||||
public static final class WaitForPositionDiscontinuity extends Action {
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public WaitForPositionDiscontinuity(String tag) {
|
||||
super(tag, "WaitForPositionDiscontinuity");
|
||||
}
|
||||
@ -1046,7 +1056,9 @@ public abstract class Action {
|
||||
/** Waits until the player acknowledged all pending player commands. */
|
||||
public static final class WaitForPendingPlayerCommands extends Action {
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public WaitForPendingPlayerCommands(String tag) {
|
||||
super(tag, "WaitForPendingPlayerCommands");
|
||||
}
|
||||
@ -1083,7 +1095,9 @@ public abstract class Action {
|
||||
|
||||
private final Runnable runnable;
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public ExecuteRunnable(@Size(max = 23) String tag, Runnable runnable) {
|
||||
super(tag, "ExecuteRunnable");
|
||||
this.runnable = runnable;
|
||||
|
@ -114,7 +114,9 @@ public final class ActionSchedule {
|
||||
private long currentDelayMs;
|
||||
private ActionNode previousNode;
|
||||
|
||||
/** @param tag A tag to use for logging. */
|
||||
/**
|
||||
* @param tag A tag to use for logging.
|
||||
*/
|
||||
public Builder(String tag) {
|
||||
this.tag = tag;
|
||||
rootNode = new ActionNode(new RootAction(tag), 0);
|
||||
|
@ -108,91 +108,121 @@ public final class DownloadBuilder {
|
||||
this.progress = new DownloadProgress();
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#uri */
|
||||
/**
|
||||
* @see DownloadRequest#uri
|
||||
*/
|
||||
public DownloadBuilder setUri(String uri) {
|
||||
this.uri = Uri.parse(uri);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#uri */
|
||||
/**
|
||||
* @see DownloadRequest#uri
|
||||
*/
|
||||
public DownloadBuilder setUri(Uri uri) {
|
||||
this.uri = uri;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#mimeType */
|
||||
/**
|
||||
* @see DownloadRequest#mimeType
|
||||
*/
|
||||
public DownloadBuilder setMimeType(String mimeType) {
|
||||
this.mimeType = mimeType;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#keySetId */
|
||||
/**
|
||||
* @see DownloadRequest#keySetId
|
||||
*/
|
||||
public DownloadBuilder setKeySetId(byte[] keySetId) {
|
||||
this.keySetId = keySetId;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#customCacheKey */
|
||||
/**
|
||||
* @see DownloadRequest#customCacheKey
|
||||
*/
|
||||
public DownloadBuilder setCacheKey(@Nullable String cacheKey) {
|
||||
this.cacheKey = cacheKey;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see Download#state */
|
||||
/**
|
||||
* @see Download#state
|
||||
*/
|
||||
public DownloadBuilder setState(@Download.State int state) {
|
||||
this.state = state;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadProgress#percentDownloaded */
|
||||
/**
|
||||
* @see DownloadProgress#percentDownloaded
|
||||
*/
|
||||
public DownloadBuilder setPercentDownloaded(float percentDownloaded) {
|
||||
progress.percentDownloaded = percentDownloaded;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadProgress#bytesDownloaded */
|
||||
/**
|
||||
* @see DownloadProgress#bytesDownloaded
|
||||
*/
|
||||
public DownloadBuilder setBytesDownloaded(long bytesDownloaded) {
|
||||
progress.bytesDownloaded = bytesDownloaded;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see Download#contentLength */
|
||||
/**
|
||||
* @see Download#contentLength
|
||||
*/
|
||||
public DownloadBuilder setContentLength(long contentLength) {
|
||||
this.contentLength = contentLength;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see Download#failureReason */
|
||||
/**
|
||||
* @see Download#failureReason
|
||||
*/
|
||||
public DownloadBuilder setFailureReason(int failureReason) {
|
||||
this.failureReason = failureReason;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see Download#stopReason */
|
||||
/**
|
||||
* @see Download#stopReason
|
||||
*/
|
||||
public DownloadBuilder setStopReason(int stopReason) {
|
||||
this.stopReason = stopReason;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see Download#startTimeMs */
|
||||
/**
|
||||
* @see Download#startTimeMs
|
||||
*/
|
||||
public DownloadBuilder setStartTimeMs(long startTimeMs) {
|
||||
this.startTimeMs = startTimeMs;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see Download#updateTimeMs */
|
||||
/**
|
||||
* @see Download#updateTimeMs
|
||||
*/
|
||||
public DownloadBuilder setUpdateTimeMs(long updateTimeMs) {
|
||||
this.updateTimeMs = updateTimeMs;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#streamKeys */
|
||||
/**
|
||||
* @see DownloadRequest#streamKeys
|
||||
*/
|
||||
public DownloadBuilder setStreamKeys(StreamKey... streamKeys) {
|
||||
this.streamKeys = Arrays.asList(streamKeys);
|
||||
return this;
|
||||
}
|
||||
|
||||
/** @see DownloadRequest#data */
|
||||
/**
|
||||
* @see DownloadRequest#data
|
||||
*/
|
||||
public DownloadBuilder setCustomMetadata(byte[] customMetadata) {
|
||||
this.customMetadata = customMetadata;
|
||||
return this;
|
||||
|
@ -173,13 +173,17 @@ public final class FakeExoMediaDrm implements ExoMediaDrm {
|
||||
private int referenceCount;
|
||||
@Nullable private OnEventListener onEventListener;
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public FakeExoMediaDrm() {
|
||||
this(/* maxConcurrentSessions= */ Integer.MAX_VALUE);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link Builder} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link Builder} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public FakeExoMediaDrm(int maxConcurrentSessions) {
|
||||
this(
|
||||
|
@ -108,7 +108,9 @@ public final class Transformer {
|
||||
private Clock clock;
|
||||
private Codec.EncoderFactory encoderFactory;
|
||||
|
||||
/** @deprecated Use {@link #Builder(Context)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #Builder(Context)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder() {
|
||||
muxerFactory = new FrameworkMuxer.Factory();
|
||||
@ -154,7 +156,9 @@ public final class Transformer {
|
||||
this.clock = transformer.clock;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #Builder(Context)} instead. */
|
||||
/**
|
||||
* @deprecated Use {@link #Builder(Context)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public Builder setContext(Context context) {
|
||||
this.context = context.getApplicationContext();
|
||||
@ -427,7 +431,9 @@ public final class Transformer {
|
||||
onTransformationCompleted(inputMediaItem);
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #onTransformationError(MediaItem, TransformationException)}. */
|
||||
/**
|
||||
* @deprecated Use {@link #onTransformationError(MediaItem, TransformationException)}.
|
||||
*/
|
||||
@Deprecated
|
||||
default void onTransformationError(MediaItem inputMediaItem, Exception exception) {
|
||||
onTransformationError(inputMediaItem, (TransformationException) exception);
|
||||
|
@ -32,7 +32,9 @@ public class DefaultTrackNameProvider implements TrackNameProvider {
|
||||
|
||||
private final Resources resources;
|
||||
|
||||
/** @param resources Resources from which to obtain strings. */
|
||||
/**
|
||||
* @param resources Resources from which to obtain strings.
|
||||
*/
|
||||
public DefaultTrackNameProvider(Resources resources) {
|
||||
this.resources = Assertions.checkNotNull(resources);
|
||||
}
|
||||
|
@ -40,7 +40,9 @@ public interface TimeBar {
|
||||
*/
|
||||
void removeListener(OnScrubListener listener);
|
||||
|
||||
/** @see View#isEnabled() */
|
||||
/**
|
||||
* @see View#isEnabled()
|
||||
*/
|
||||
void setEnabled(boolean enabled);
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user