From 17050e8b591a353eafa71e390fd0cfa8dada01f5 Mon Sep 17 00:00:00 2001 From: tonihei Date: Tue, 8 Feb 2022 09:46:14 +0000 Subject: [PATCH] Fix the position of IntDefs to match TYPE_USE #minor-release PiperOrigin-RevId: 427131569 --- .../exoplayer2/ext/av1/Gav1Decoder.java | 2 +- .../ext/av1/Libgav1VideoRenderer.java | 3 +- .../exoplayer2/ext/cast/CastPlayer.java | 14 +++----- .../ext/ffmpeg/FfmpegAudioDecoder.java | 5 ++- .../ext/ffmpeg/FfmpegAudioRenderer.java | 6 ++-- .../ext/ffmpeg/FfmpegVideoRenderer.java | 3 +- .../ext/flac/LibflacAudioRenderer.java | 3 +- .../exoplayer2/ext/ima/AdTagLoader.java | 2 +- .../ServerSideAdInsertionStreamRequest.java | 4 +-- .../exoplayer2/ext/ima/FakeExoPlayer.java | 8 ++--- .../RepeatModeActionProvider.java | 5 ++- .../ext/opus/LibopusAudioRenderer.java | 3 +- .../ext/vp9/LibvpxVideoRenderer.java | 3 +- .../exoplayer2/ext/vp9/VpxDecoder.java | 2 +- .../google/android/exoplayer2/BasePlayer.java | 3 +- .../java/com/google/android/exoplayer2/C.java | 4 +-- .../com/google/android/exoplayer2/Format.java | 12 +++---- .../android/exoplayer2/HeartRating.java | 2 +- .../android/exoplayer2/MediaMetadata.java | 4 +-- .../android/exoplayer2/PercentageRating.java | 2 +- .../com/google/android/exoplayer2/Player.java | 3 +- .../google/android/exoplayer2/StarRating.java | 2 +- .../android/exoplayer2/ThumbRating.java | 2 +- .../google/android/exoplayer2/TracksInfo.java | 8 ++--- .../android/exoplayer2/drm/DrmInitData.java | 3 +- .../android/exoplayer2/source/TrackGroup.java | 3 +- .../source/ads/AdPlaybackState.java | 2 +- .../google/android/exoplayer2/text/Cue.java | 17 ++++----- .../exoplayer2/text/span/RubySpan.java | 2 +- .../text/span/TextEmphasisSpan.java | 6 ++-- .../android/exoplayer2/util/FileTypes.java | 10 +++--- .../android/exoplayer2/util/MimeTypes.java | 6 ++-- .../exoplayer2/util/NetworkTypeObserver.java | 12 +++---- .../google/android/exoplayer2/util/Util.java | 36 +++++++++---------- .../exoplayer2/util/XmlPullParserUtil.java | 7 ++-- .../android/exoplayer2/video/ColorInfo.java | 13 ++++--- .../exoplayer2/StreamVolumeManagerTest.java | 2 +- .../android/exoplayer2/AudioFocusManager.java | 9 +++-- .../android/exoplayer2/BaseRenderer.java | 6 ++-- .../exoplayer2/DefaultRenderersFactory.java | 2 +- .../exoplayer2/ExoPlaybackException.java | 4 +-- .../android/exoplayer2/ExoPlayerImpl.java | 33 +++++++---------- .../exoplayer2/ExoPlayerImplInternal.java | 9 ++--- .../exoplayer2/ExoTimeoutException.java | 2 +- .../android/exoplayer2/NoSampleRenderer.java | 6 ++-- .../android/exoplayer2/PlaybackInfo.java | 4 +-- .../exoplayer2/RendererCapabilities.java | 25 +++++-------- .../android/exoplayer2/SimpleExoPlayer.java | 12 +++---- .../exoplayer2/StreamVolumeManager.java | 2 +- .../analytics/AnalyticsListener.java | 3 +- .../analytics/MediaMetricsListener.java | 4 +-- .../analytics/PlaybackStatsListener.java | 2 +- .../exoplayer2/audio/AudioProcessor.java | 2 +- .../audio/DecoderAudioRenderer.java | 11 +++--- .../exoplayer2/audio/DefaultAudioSink.java | 15 ++++---- .../exoplayer2/audio/ForwardingAudioSink.java | 3 +- .../audio/MediaCodecAudioRenderer.java | 3 +- .../audio/SilenceSkippingAudioProcessor.java | 2 +- .../exoplayer2/audio/SpatializerDelegate.java | 3 +- .../exoplayer2/audio/TeeAudioProcessor.java | 2 +- .../audio/TrimmingAudioProcessor.java | 2 +- .../decoder/DecoderReuseEvaluation.java | 4 +-- .../exoplayer2/drm/DefaultDrmSession.java | 3 +- .../drm/DefaultDrmSessionManager.java | 5 ++- .../android/exoplayer2/drm/DrmSession.java | 2 +- .../exoplayer2/drm/DrmSessionManager.java | 3 +- .../android/exoplayer2/drm/DrmUtil.java | 7 ++-- .../exoplayer2/drm/DummyExoMediaDrm.java | 3 +- .../android/exoplayer2/drm/ExoMediaDrm.java | 5 ++- .../exoplayer2/drm/FrameworkMediaDrm.java | 3 +- .../drm/UnsupportedDrmException.java | 2 +- .../android/exoplayer2/drm/WidevineUtil.java | 3 +- .../AsynchronousMediaCodecAdapter.java | 2 +- .../DefaultMediaCodecAdapterFactory.java | 2 +- .../mediacodec/MediaCodecRenderer.java | 19 +++++----- .../exoplayer2/metadata/MetadataRenderer.java | 3 +- .../android/exoplayer2/offline/Download.java | 4 +-- .../exoplayer2/offline/DownloadHelper.java | 3 +- .../exoplayer2/offline/DownloadManager.java | 5 ++- .../exoplayer2/scheduler/Requirements.java | 11 +++--- .../scheduler/RequirementsWatcher.java | 5 ++- .../source/ClippingMediaSource.java | 2 +- .../source/DefaultMediaSourceFactory.java | 3 +- .../exoplayer2/source/MediaLoadData.java | 2 +- .../exoplayer2/source/MediaSourceFactory.java | 3 +- .../exoplayer2/source/MergingMediaSource.java | 2 +- .../source/ProgressiveMediaPeriod.java | 2 +- .../exoplayer2/source/SilenceMediaSource.java | 2 +- .../ads/ServerSideAdInsertionMediaSource.java | 6 ++-- .../exoplayer2/source/chunk/Chunk.java | 4 +-- .../mediaparser/OutputConsumerAdapterV30.java | 3 +- .../exoplayer2/text/ExoplayerCuesDecoder.java | 2 +- .../android/exoplayer2/text/TextRenderer.java | 5 ++- .../trackselection/DefaultTrackSelector.java | 28 ++++++--------- .../trackselection/MappingTrackSelector.java | 31 +++++++--------- .../upstream/DefaultBandwidthMeter.java | 4 +-- .../upstream/LoadErrorHandlingPolicy.java | 2 +- .../exoplayer2/upstream/ParsingLoadable.java | 2 +- .../video/DecoderVideoRenderer.java | 4 +-- .../exoplayer2/video/DummySurface.java | 3 +- .../video/MediaCodecVideoRenderer.java | 5 ++- .../video/VideoFrameReleaseHelper.java | 2 +- .../video/spherical/CameraMotionRenderer.java | 3 +- .../video/spherical/ProjectionDecoder.java | 15 +++++--- .../video/spherical/SceneRenderer.java | 4 +-- .../android/exoplayer2/ExoPlayerTest.java | 2 +- .../audio/DecoderAudioRendererTest.java | 3 +- ...faultAudioTrackBufferSizeProviderTest.java | 6 ++-- .../DefaultTrackSelectorTest.java | 14 +++----- .../MappingTrackSelectorTest.java | 6 ++-- .../video/DecoderVideoRendererTest.java | 5 ++- .../video/MediaCodecVideoRendererTest.java | 4 +-- .../source/dash/DashMediaPeriod.java | 2 +- .../dash/manifest/DashManifestParser.java | 23 +++++------- .../upstream/DataSourceException.java | 2 +- .../android/exoplayer2/upstream/DataSpec.java | 8 ++--- .../exoplayer2/upstream/HttpDataSource.java | 6 ++-- .../upstream/cache/CacheDataSource.java | 2 +- .../android/exoplayer2/decoder/Buffer.java | 2 +- .../exoplayer2/decoder/CryptoInfo.java | 2 +- .../decoder/DecoderInputBuffer.java | 2 +- .../decoder/VideoDecoderOutputBuffer.java | 2 +- .../extractor/BinarySearchSeeker.java | 2 +- .../extractor/DefaultExtractorsFactory.java | 18 +++++----- .../exoplayer2/extractor/TrackOutput.java | 2 +- .../extractor/TrueHdSampleRechunker.java | 2 +- .../extractor/jpeg/JpegExtractor.java | 6 ++-- .../extractor/mkv/MatroskaExtractor.java | 18 +++++----- .../extractor/mp3/Mp3Extractor.java | 2 +- .../exoplayer2/extractor/mp4/AtomParsers.java | 2 +- .../extractor/mp4/FragmentedMp4Extractor.java | 5 ++- .../extractor/mp4/Mp4Extractor.java | 16 ++++----- .../exoplayer2/extractor/mp4/SefReader.java | 10 +++--- .../exoplayer2/extractor/mp4/Track.java | 2 +- .../extractor/mp4/TrackEncryptionBox.java | 3 +- .../exoplayer2/extractor/ts/Ac3Reader.java | 2 +- .../exoplayer2/extractor/ts/Ac4Reader.java | 2 +- .../ts/DefaultTsPayloadReaderFactory.java | 2 +- .../exoplayer2/extractor/ts/H263Reader.java | 2 +- .../exoplayer2/extractor/ts/TsExtractor.java | 6 ++-- .../extractor/wav/WavExtractor.java | 7 ++-- .../exoplayer2/text/SubtitleExtractor.java | 2 +- .../exoplayer2/text/ssa/SsaDecoder.java | 6 ++-- .../android/exoplayer2/text/ssa/SsaStyle.java | 10 +++--- .../exoplayer2/text/ttml/TextEmphasis.java | 6 ++-- .../exoplayer2/text/ttml/TtmlRegion.java | 8 ++--- .../exoplayer2/text/ttml/TtmlStyle.java | 28 +++++++-------- .../text/webvtt/WebvttCssStyle.java | 21 +++++------ .../text/webvtt/WebvttCueParser.java | 31 +++++++--------- .../extractor/mkv/DefaultEbmlReaderTest.java | 3 +- .../exoplayer2/text/ttml/TtmlStyleTest.java | 2 +- .../hls/DefaultHlsExtractorFactory.java | 2 +- .../exoplayer2/source/hls/HlsChunkSource.java | 3 +- .../source/hls/playlist/HlsMediaPlaylist.java | 2 +- .../hls/playlist/HlsPlaylistParser.java | 7 ++-- .../source/rtsp/RtspAuthenticationInfo.java | 2 +- .../exoplayer2/source/rtsp/RtspClient.java | 5 ++- .../source/rtsp/RtspMediaPeriod.java | 3 +- .../source/rtsp/RtspMessageChannel.java | 2 +- .../source/rtsp/RtspMessageUtil.java | 3 +- .../exoplayer2/source/rtsp/RtspRequest.java | 2 +- .../source/rtsp/reader/RtpH264Reader.java | 5 ++- .../exoplayer2/transformer/Transformer.java | 5 ++- .../transformer/TransformerBaseRenderer.java | 3 +- .../TestDownloadManagerListener.java | 2 +- .../android/exoplayer2/testutil/Action.java | 6 ++-- .../testutil/CapturingAudioSink.java | 2 +- .../exoplayer2/testutil/DownloadBuilder.java | 2 +- .../exoplayer2/testutil/DumpFileAsserts.java | 2 +- .../exoplayer2/testutil/FakeExoMediaDrm.java | 3 +- .../exoplayer2/testutil/FakeRenderer.java | 3 +- .../exoplayer2/testutil/FakeSampleStream.java | 2 +- .../exoplayer2/testutil/StubPlayer.java | 6 ++-- .../testutil/WebServerDispatcher.java | 7 ++-- .../testutil/truth/SpannedSubject.java | 8 ++--- 175 files changed, 436 insertions(+), 591 deletions(-) diff --git a/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Gav1Decoder.java b/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Gav1Decoder.java index 63bc16d97e..1514be21a5 100644 --- a/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Gav1Decoder.java +++ b/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Gav1Decoder.java @@ -39,7 +39,7 @@ public final class Gav1Decoder private final long gav1DecoderContext; - @C.VideoOutputMode private volatile int outputMode; + private volatile @C.VideoOutputMode int outputMode; /** * Creates a Gav1Decoder. diff --git a/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Libgav1VideoRenderer.java b/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Libgav1VideoRenderer.java index 443f1d1e7c..df1e6177e8 100644 --- a/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Libgav1VideoRenderer.java +++ b/extensions/av1/src/main/java/com/google/android/exoplayer2/ext/av1/Libgav1VideoRenderer.java @@ -126,8 +126,7 @@ public class Libgav1VideoRenderer extends DecoderVideoRenderer { } @Override - @Capabilities - public final int supportsFormat(Format format) { + public final @Capabilities int supportsFormat(Format format) { if (!MimeTypes.VIDEO_AV1.equalsIgnoreCase(format.sampleMimeType) || !Gav1Library.isAvailable()) { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); diff --git a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java index fbe5a31a93..40e61c8135 100644 --- a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java +++ b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java @@ -148,7 +148,7 @@ public final class CastPlayer extends BasePlayer { private TrackSelectionArray currentTrackSelection; private TracksInfo currentTracksInfo; private Commands availableCommands; - @Player.State private int playbackState; + private @Player.State int playbackState; private int currentWindowIndex; private long lastReportedPositionMs; private int pendingSeekCount; @@ -385,14 +385,12 @@ public final class CastPlayer extends BasePlayer { } @Override - @Player.State - public int getPlaybackState() { + public @Player.State int getPlaybackState() { return playbackState; } @Override - @PlaybackSuppressionReason - public int getPlaybackSuppressionReason() { + public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { return Player.PLAYBACK_SUPPRESSION_REASON_NONE; } @@ -572,8 +570,7 @@ public final class CastPlayer extends BasePlayer { } @Override - @RepeatMode - public int getRepeatMode() { + public @RepeatMode int getRepeatMode() { return repeatMode.value; } @@ -1290,8 +1287,7 @@ public final class CastPlayer extends BasePlayer { * Retrieves the repeat mode from {@code remoteMediaClient} and maps it into a {@link * Player.RepeatMode}. */ - @RepeatMode - private static int fetchRepeatMode(RemoteMediaClient remoteMediaClient) { + private static @RepeatMode int fetchRepeatMode(RemoteMediaClient remoteMediaClient) { MediaStatus mediaStatus = remoteMediaClient.getMediaStatus(); if (mediaStatus == null) { // No media session active, yet. diff --git a/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioDecoder.java b/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioDecoder.java index b042c36a10..6d378dd818 100644 --- a/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioDecoder.java +++ b/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioDecoder.java @@ -41,7 +41,7 @@ import java.util.List; private final String codecName; @Nullable private final byte[] extraData; - @C.PcmEncoding private final int encoding; + private final @C.PcmEncoding int encoding; private final int outputBufferSize; private long nativeContext; // May be reassigned on resetting the codec. @@ -158,8 +158,7 @@ import java.util.List; } /** Returns the encoding of output audio. */ - @C.PcmEncoding - public int getEncoding() { + public @C.PcmEncoding int getEncoding() { return encoding; } diff --git a/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioRenderer.java b/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioRenderer.java index d605706551..4ff8ded2a7 100644 --- a/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioRenderer.java +++ b/extensions/ffmpeg/src/main/java/com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioRenderer.java @@ -88,8 +88,7 @@ public final class FfmpegAudioRenderer extends DecoderAudioRenderer adTagParameters; - @ContentType public int format = C.TYPE_HLS; + public @ContentType int format = C.TYPE_HLS; private int loadVideoTimeoutMs; /** Creates a new instance. */ @@ -270,7 +270,7 @@ import java.util.Map; @Nullable public final String contentUrl; @Nullable public final String authToken; @Nullable public final String streamActivityMonitorId; - @ContentType public int format = C.TYPE_HLS; + public @ContentType int format = C.TYPE_HLS; public final int loadVideoTimeoutMs; private ServerSideAdInsertionStreamRequest( diff --git a/extensions/ima/src/test/java/com/google/android/exoplayer2/ext/ima/FakeExoPlayer.java b/extensions/ima/src/test/java/com/google/android/exoplayer2/ext/ima/FakeExoPlayer.java index 18a7854a32..f3034b56f8 100644 --- a/extensions/ima/src/test/java/com/google/android/exoplayer2/ext/ima/FakeExoPlayer.java +++ b/extensions/ima/src/test/java/com/google/android/exoplayer2/ext/ima/FakeExoPlayer.java @@ -42,7 +42,7 @@ import com.google.android.exoplayer2.util.Util; private final MediaItem mediaItem = MediaItem.fromUri("http://google.com/0"); private Timeline timeline; - @Player.State private int state; + private @Player.State int state; private boolean playWhenReady; private int periodIndex; private long positionMs; @@ -236,8 +236,7 @@ import com.google.android.exoplayer2.util.Util; } @Override - @Player.State - public int getPlaybackState() { + public @Player.State int getPlaybackState() { return state; } @@ -247,8 +246,7 @@ import com.google.android.exoplayer2.util.Util; } @Override - @RepeatMode - public int getRepeatMode() { + public @RepeatMode int getRepeatMode() { return REPEAT_MODE_OFF; } diff --git a/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/RepeatModeActionProvider.java b/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/RepeatModeActionProvider.java index e72f93e800..388bccce7f 100644 --- a/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/RepeatModeActionProvider.java +++ b/extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/RepeatModeActionProvider.java @@ -26,13 +26,12 @@ import com.google.android.exoplayer2.util.RepeatModeUtil; public final class RepeatModeActionProvider implements MediaSessionConnector.CustomActionProvider { /** The default repeat toggle modes. */ - @RepeatModeUtil.RepeatToggleModes - public static final int DEFAULT_REPEAT_TOGGLE_MODES = + public static final @RepeatModeUtil.RepeatToggleModes int DEFAULT_REPEAT_TOGGLE_MODES = RepeatModeUtil.REPEAT_TOGGLE_MODE_ONE | RepeatModeUtil.REPEAT_TOGGLE_MODE_ALL; private static final String ACTION_REPEAT_MODE = "ACTION_EXO_REPEAT_MODE"; - @RepeatModeUtil.RepeatToggleModes private final int repeatToggleModes; + private final @RepeatModeUtil.RepeatToggleModes int repeatToggleModes; private final CharSequence repeatAllDescription; private final CharSequence repeatOneDescription; private final CharSequence repeatOffDescription; diff --git a/extensions/opus/src/main/java/com/google/android/exoplayer2/ext/opus/LibopusAudioRenderer.java b/extensions/opus/src/main/java/com/google/android/exoplayer2/ext/opus/LibopusAudioRenderer.java index 1b92708573..3fede1188e 100644 --- a/extensions/opus/src/main/java/com/google/android/exoplayer2/ext/opus/LibopusAudioRenderer.java +++ b/extensions/opus/src/main/java/com/google/android/exoplayer2/ext/opus/LibopusAudioRenderer.java @@ -78,8 +78,7 @@ public class LibopusAudioRenderer extends DecoderAudioRenderer { } @Override - @C.FormatSupport - protected int supportsFormatInternal(Format format) { + protected @C.FormatSupport int supportsFormatInternal(Format format) { boolean drmIsSupported = OpusLibrary.supportsCryptoType(format.cryptoType); if (!OpusLibrary.isAvailable() || !MimeTypes.AUDIO_OPUS.equalsIgnoreCase(format.sampleMimeType)) { diff --git a/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/LibvpxVideoRenderer.java b/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/LibvpxVideoRenderer.java index 6edf129ff5..43b46d45ad 100644 --- a/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/LibvpxVideoRenderer.java +++ b/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/LibvpxVideoRenderer.java @@ -124,8 +124,7 @@ public class LibvpxVideoRenderer extends DecoderVideoRenderer { } @Override - @Capabilities - public final int supportsFormat(Format format) { + public final @Capabilities int supportsFormat(Format format) { if (!VpxLibrary.isAvailable() || !MimeTypes.VIDEO_VP9.equalsIgnoreCase(format.sampleMimeType)) { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } diff --git a/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/VpxDecoder.java b/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/VpxDecoder.java index 47b51e37ca..7728d1f7a5 100644 --- a/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/VpxDecoder.java +++ b/extensions/vp9/src/main/java/com/google/android/exoplayer2/ext/vp9/VpxDecoder.java @@ -47,7 +47,7 @@ public final class VpxDecoder @Nullable private ByteBuffer lastSupplementalData; - @C.VideoOutputMode private volatile int outputMode; + private volatile @C.VideoOutputMode int outputMode; /** * Creates a VP9 decoder. diff --git a/library/common/src/main/java/com/google/android/exoplayer2/BasePlayer.java b/library/common/src/main/java/com/google/android/exoplayer2/BasePlayer.java index 4135a5d7c4..8b283a391f 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/BasePlayer.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/BasePlayer.java @@ -382,8 +382,7 @@ public abstract class BasePlayer implements Player { : timeline.getWindow(getCurrentMediaItemIndex(), window).getDurationMs(); } - @RepeatMode - private int getRepeatModeForNavigation() { + private @RepeatMode int getRepeatModeForNavigation() { @RepeatMode int repeatMode = getRepeatMode(); return repeatMode == REPEAT_MODE_ONE ? REPEAT_MODE_OFF : repeatMode; } diff --git a/library/common/src/main/java/com/google/android/exoplayer2/C.java b/library/common/src/main/java/com/google/android/exoplayer2/C.java index 9b55bc0401..a8d37d0912 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/C.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/C.java @@ -1218,8 +1218,8 @@ public final class C { replacement = "Util.getErrorCodeForMediaDrmErrorCode(mediaDrmErrorCode)", imports = {"com.google.android.exoplayer2.util.Util"}) @Deprecated - @PlaybackException.ErrorCode - public static int getErrorCodeForMediaDrmErrorCode(int mediaDrmErrorCode) { + public static @PlaybackException.ErrorCode int getErrorCodeForMediaDrmErrorCode( + int mediaDrmErrorCode) { return Util.getErrorCodeForMediaDrmErrorCode(mediaDrmErrorCode); } } diff --git a/library/common/src/main/java/com/google/android/exoplayer2/Format.java b/library/common/src/main/java/com/google/android/exoplayer2/Format.java index 7d17a417bb..89d0a0c754 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/Format.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/Format.java @@ -158,14 +158,14 @@ public final class Format implements Bundleable { private int rotationDegrees; private float pixelWidthHeightRatio; @Nullable private byte[] projectionData; - @C.StereoMode private int stereoMode; + private @C.StereoMode int stereoMode; @Nullable private ColorInfo colorInfo; // Audio specific. private int channelCount; private int sampleRate; - @C.PcmEncoding private int pcmEncoding; + private @C.PcmEncoding int pcmEncoding; private int encoderDelay; private int encoderPadding; @@ -175,7 +175,7 @@ public final class Format implements Bundleable { // Provided by the source. - @C.CryptoType private int cryptoType; + private @C.CryptoType int cryptoType; /** Creates a new instance with default values. */ public Builder() { @@ -729,7 +729,7 @@ public final class Format implements Bundleable { * modes are {@link C#STEREO_MODE_MONO}, {@link C#STEREO_MODE_TOP_BOTTOM}, {@link * C#STEREO_MODE_LEFT_RIGHT}, {@link C#STEREO_MODE_STEREO_MESH}. */ - @C.StereoMode public final int stereoMode; + public final @C.StereoMode int stereoMode; /** The color metadata associated with the video, or null if not applicable. */ @Nullable public final ColorInfo colorInfo; @@ -740,7 +740,7 @@ public final class Format implements Bundleable { /** The audio sampling rate in Hz, or {@link #NO_VALUE} if unknown or not applicable. */ public final int sampleRate; /** The {@link C.PcmEncoding} for PCM audio. Set to {@link #NO_VALUE} for other media types. */ - @C.PcmEncoding public final int pcmEncoding; + public final @C.PcmEncoding int pcmEncoding; /** * The number of frames to trim from the start of the decoded audio stream, or 0 if not * applicable. @@ -764,7 +764,7 @@ public final class Format implements Bundleable { * {@link #drmInitData} is non-null, but may be {@link C#CRYPTO_TYPE_UNSUPPORTED} to indicate that * the samples are encrypted using an unsupported crypto type. */ - @C.CryptoType public final int cryptoType; + public final @C.CryptoType int cryptoType; // Lazily initialized hashcode. private int hashCode; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/HeartRating.java b/library/common/src/main/java/com/google/android/exoplayer2/HeartRating.java index 37c248d710..e14fd322e8 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/HeartRating.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/HeartRating.java @@ -78,7 +78,7 @@ public final class HeartRating extends Rating { // Bundleable implementation. - @RatingType private static final int TYPE = RATING_TYPE_HEART; + private static final @RatingType int TYPE = RATING_TYPE_HEART; @Documented @Retention(RetentionPolicy.SOURCE) diff --git a/library/common/src/main/java/com/google/android/exoplayer2/MediaMetadata.java b/library/common/src/main/java/com/google/android/exoplayer2/MediaMetadata.java index e6b0502fa5..d8b1f30d71 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/MediaMetadata.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/MediaMetadata.java @@ -56,11 +56,11 @@ public final class MediaMetadata implements Bundleable { @Nullable private Rating userRating; @Nullable private Rating overallRating; @Nullable private byte[] artworkData; - @Nullable @PictureType private Integer artworkDataType; + @Nullable private @PictureType Integer artworkDataType; @Nullable private Uri artworkUri; @Nullable private Integer trackNumber; @Nullable private Integer totalTrackCount; - @Nullable @FolderType private Integer folderType; + @Nullable private @FolderType Integer folderType; @Nullable private Boolean isPlayable; @Nullable private Integer recordingYear; @Nullable private Integer recordingMonth; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/PercentageRating.java b/library/common/src/main/java/com/google/android/exoplayer2/PercentageRating.java index 3c3451dac5..53521b53a2 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/PercentageRating.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/PercentageRating.java @@ -76,7 +76,7 @@ public final class PercentageRating extends Rating { // Bundleable implementation. - @RatingType private static final int TYPE = RATING_TYPE_PERCENTAGE; + private static final @RatingType int TYPE = RATING_TYPE_PERCENTAGE; @Documented @Retention(RetentionPolicy.SOURCE) diff --git a/library/common/src/main/java/com/google/android/exoplayer2/Player.java b/library/common/src/main/java/com/google/android/exoplayer2/Player.java index 17a6532a6f..ce136c505d 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/Player.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/Player.java @@ -686,8 +686,7 @@ public interface Player { /** A builder for {@link Commands} instances. */ public static final class Builder { - @Command - private static final int[] SUPPORTED_COMMANDS = { + private static final @Command int[] SUPPORTED_COMMANDS = { COMMAND_PLAY_PAUSE, COMMAND_PREPARE, COMMAND_STOP, diff --git a/library/common/src/main/java/com/google/android/exoplayer2/StarRating.java b/library/common/src/main/java/com/google/android/exoplayer2/StarRating.java index 0849a20f2d..d82055a7ac 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/StarRating.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/StarRating.java @@ -102,7 +102,7 @@ public final class StarRating extends Rating { // Bundleable implementation. - @RatingType private static final int TYPE = RATING_TYPE_STAR; + private static final @RatingType int TYPE = RATING_TYPE_STAR; private static final int MAX_STARS_DEFAULT = 5; @Documented diff --git a/library/common/src/main/java/com/google/android/exoplayer2/ThumbRating.java b/library/common/src/main/java/com/google/android/exoplayer2/ThumbRating.java index d460efc9e3..e77e03bf8d 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/ThumbRating.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/ThumbRating.java @@ -75,7 +75,7 @@ public final class ThumbRating extends Rating { // Bundleable implementation. - @RatingType private static final int TYPE = RATING_TYPE_THUMB; + private static final @RatingType int TYPE = RATING_TYPE_THUMB; @Documented @Retention(RetentionPolicy.SOURCE) diff --git a/library/common/src/main/java/com/google/android/exoplayer2/TracksInfo.java b/library/common/src/main/java/com/google/android/exoplayer2/TracksInfo.java index 830cc3725c..50bf40032f 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/TracksInfo.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/TracksInfo.java @@ -45,7 +45,7 @@ public final class TracksInfo implements Bundleable { */ public static final class TrackGroupInfo implements Bundleable { private final TrackGroup trackGroup; - @C.FormatSupport private final int[] trackSupport; + private final @C.FormatSupport int[] trackSupport; private final @C.TrackType int trackType; private final boolean[] trackSelected; @@ -81,8 +81,7 @@ public final class TracksInfo implements Bundleable { * @param trackIndex The index of the track in the {@link TrackGroup}. * @return The {@link C.FormatSupport} of the track. */ - @C.FormatSupport - public int getTrackSupport(int trackIndex) { + public @C.FormatSupport int getTrackSupport(int trackIndex) { return trackSupport[trackIndex]; } @@ -226,8 +225,7 @@ public final class TracksInfo implements Bundleable { fromNullableBundle( TrackGroup.CREATOR, bundle.getBundle(keyForField(FIELD_TRACK_GROUP))); checkNotNull(trackGroup); // Can't create a trackGroup info without a trackGroup - @C.FormatSupport - final int[] trackSupport = + final @C.FormatSupport int[] trackSupport = MoreObjects.firstNonNull( bundle.getIntArray(keyForField(FIELD_TRACK_SUPPORT)), new int[trackGroup.length]); @C.TrackType diff --git a/library/common/src/main/java/com/google/android/exoplayer2/drm/DrmInitData.java b/library/common/src/main/java/com/google/android/exoplayer2/drm/DrmInitData.java index 5c366ef9e2..6b926b00d2 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/drm/DrmInitData.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/drm/DrmInitData.java @@ -51,7 +51,8 @@ public final class DrmInitData implements Comparator, Parcelable { * @param mediaData DRM session acquisition data obtained from the media. * @return A {@link DrmInitData} obtained from merging a media manifest and a media stream. */ - public static @Nullable DrmInitData createSessionCreationData( + @Nullable + public static DrmInitData createSessionCreationData( @Nullable DrmInitData manifestData, @Nullable DrmInitData mediaData) { ArrayList result = new ArrayList<>(); String schemeType = null; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java b/library/common/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java index 575b80519f..27483c1da2 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/source/TrackGroup.java @@ -204,8 +204,7 @@ public final class TrackGroup implements Bundleable { return language == null || language.equals(C.LANGUAGE_UNDETERMINED) ? "" : language; } - @C.RoleFlags - private static int normalizeRoleFlags(@C.RoleFlags int roleFlags) { + private static @C.RoleFlags int normalizeRoleFlags(@C.RoleFlags int roleFlags) { // Treat trick-play and non-trick-play formats as compatible. return roleFlags | C.ROLE_FLAG_TRICK_PLAY; } diff --git a/library/common/src/main/java/com/google/android/exoplayer2/source/ads/AdPlaybackState.java b/library/common/src/main/java/com/google/android/exoplayer2/source/ads/AdPlaybackState.java index 7877c71886..2ef624c30d 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/source/ads/AdPlaybackState.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/source/ads/AdPlaybackState.java @@ -68,7 +68,7 @@ public final class AdPlaybackState implements Bundleable { /** The URI of each ad in the ad group. */ public final @NullableType Uri[] uris; /** The state of each ad in the ad group. */ - @AdState public final int[] states; + public final @AdState int[] states; /** The durations of each ad in the ad group, in microseconds. */ public final long[] durationsUs; /** diff --git a/library/common/src/main/java/com/google/android/exoplayer2/text/Cue.java b/library/common/src/main/java/com/google/android/exoplayer2/text/Cue.java index cbd260ad4f..71949eeb94 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/text/Cue.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/text/Cue.java @@ -562,7 +562,7 @@ public final class Cue implements Bundleable { @Nullable private Alignment textAlignment; @Nullable private Alignment multiRowAlignment; private float line; - @LineType private int lineType; + private @LineType int lineType; private @AnchorType int lineAnchor; private float position; private @AnchorType int positionAnchor; @@ -723,8 +723,7 @@ public final class Cue implements Bundleable { * @see Cue#lineType */ @Pure - @LineType - public int getLineType() { + public @LineType int getLineType() { return lineType; } @@ -744,8 +743,7 @@ public final class Cue implements Bundleable { * @see Cue#lineAnchor */ @Pure - @AnchorType - public int getLineAnchor() { + public @AnchorType int getLineAnchor() { return lineAnchor; } @@ -787,8 +785,7 @@ public final class Cue implements Bundleable { * @see Cue#positionAnchor */ @Pure - @AnchorType - public int getPositionAnchor() { + public @AnchorType int getPositionAnchor() { return positionAnchor; } @@ -810,8 +807,7 @@ public final class Cue implements Bundleable { * @see Cue#textSizeType */ @Pure - @TextSizeType - public int getTextSizeType() { + public @TextSizeType int getTextSizeType() { return textSizeType; } @@ -929,8 +925,7 @@ public final class Cue implements Bundleable { * @see Cue#verticalType */ @Pure - @VerticalType - public int getVerticalType() { + public @VerticalType int getVerticalType() { return verticalType; } diff --git a/library/common/src/main/java/com/google/android/exoplayer2/text/span/RubySpan.java b/library/common/src/main/java/com/google/android/exoplayer2/text/span/RubySpan.java index b7df92940d..cc25ce391a 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/text/span/RubySpan.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/text/span/RubySpan.java @@ -36,7 +36,7 @@ public final class RubySpan implements LanguageFeatureSpan { public final String rubyText; /** The position of the ruby text relative to the base text. */ - @TextAnnotation.Position public final int position; + public final @TextAnnotation.Position int position; public RubySpan(String rubyText, @TextAnnotation.Position int position) { this.rubyText = rubyText; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/text/span/TextEmphasisSpan.java b/library/common/src/main/java/com/google/android/exoplayer2/text/span/TextEmphasisSpan.java index a273d74c1c..46368d3b81 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/text/span/TextEmphasisSpan.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/text/span/TextEmphasisSpan.java @@ -81,13 +81,13 @@ public final class TextEmphasisSpan implements LanguageFeatureSpan { public static final int MARK_FILL_OPEN = 2; /** The mark shape used for text emphasis. */ - @MarkShape public int markShape; + public @MarkShape int markShape; /** The mark fill for the text emphasis mark. */ - @MarkShape public int markFill; + public @MarkShape int markFill; /** The position of the text emphasis relative to the base text. */ - @TextAnnotation.Position public final int position; + public final @TextAnnotation.Position int position; public TextEmphasisSpan( @MarkShape int shape, @MarkFill int fill, @TextAnnotation.Position int position) { diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/FileTypes.java b/library/common/src/main/java/com/google/android/exoplayer2/util/FileTypes.java index 6bf5d01099..d2f925d718 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/util/FileTypes.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/util/FileTypes.java @@ -112,8 +112,8 @@ public final class FileTypes { private FileTypes() {} /** Returns the {@link Type} corresponding to the response headers provided. */ - @FileTypes.Type - public static int inferFileTypeFromResponseHeaders(Map> responseHeaders) { + public static @FileTypes.Type int inferFileTypeFromResponseHeaders( + Map> responseHeaders) { @Nullable List contentTypes = responseHeaders.get(HEADER_CONTENT_TYPE); @Nullable String mimeType = contentTypes == null || contentTypes.isEmpty() ? null : contentTypes.get(0); @@ -125,8 +125,7 @@ public final class FileTypes { * *

Returns {@link #UNKNOWN} if the mime type is {@code null}. */ - @FileTypes.Type - public static int inferFileTypeFromMimeType(@Nullable String mimeType) { + public static @FileTypes.Type int inferFileTypeFromMimeType(@Nullable String mimeType) { if (mimeType == null) { return FileTypes.UNKNOWN; } @@ -176,8 +175,7 @@ public final class FileTypes { } /** Returns the {@link Type} corresponding to the {@link Uri} provided. */ - @FileTypes.Type - public static int inferFileTypeFromUri(Uri uri) { + public static @FileTypes.Type int inferFileTypeFromUri(Uri uri) { @Nullable String filename = uri.getLastPathSegment(); if (filename == null) { return FileTypes.UNKNOWN; diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/MimeTypes.java b/library/common/src/main/java/com/google/android/exoplayer2/util/MimeTypes.java index 75c1b94566..26cb1d9323 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/util/MimeTypes.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/util/MimeTypes.java @@ -532,8 +532,7 @@ public final class MimeTypes { * @param codec An RFC 6381 codec string, or {@code null} if unknown or not applicable. * @return The corresponding {@link C.Encoding}, or {@link C#ENCODING_INVALID}. */ - @C.Encoding - public static int getEncoding(String mimeType, @Nullable String codec) { + public static @C.Encoding int getEncoding(String mimeType, @Nullable String codec) { switch (mimeType) { case MimeTypes.AUDIO_MPEG: return C.ENCODING_MP3; @@ -704,8 +703,7 @@ public final class MimeTypes { } /** Returns the encoding for {@link #audioObjectTypeIndication}. */ - @C.Encoding - public int getEncoding() { + public @C.Encoding int getEncoding() { // See AUDIO_OBJECT_TYPE_AAC_* constants in AacUtil. switch (audioObjectTypeIndication) { case 2: diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/NetworkTypeObserver.java b/library/common/src/main/java/com/google/android/exoplayer2/util/NetworkTypeObserver.java index 58501d63cc..20560d1202 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/util/NetworkTypeObserver.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/util/NetworkTypeObserver.java @@ -84,8 +84,7 @@ public final class NetworkTypeObserver { private final Object networkTypeLock; @GuardedBy("networkTypeLock") - @C.NetworkType - private int networkType; + private @C.NetworkType int networkType; /** * Returns a network type observer instance. @@ -131,8 +130,7 @@ public final class NetworkTypeObserver { } /** Returns the current network type. */ - @C.NetworkType - public int getNetworkType() { + public @C.NetworkType int getNetworkType() { synchronized (networkTypeLock) { return networkType; } @@ -163,8 +161,7 @@ public final class NetworkTypeObserver { } } - @C.NetworkType - private static int getNetworkTypeFromConnectivityManager(Context context) { + private static @C.NetworkType int getNetworkTypeFromConnectivityManager(Context context) { NetworkInfo networkInfo; @Nullable ConnectivityManager connectivityManager = @@ -197,8 +194,7 @@ public final class NetworkTypeObserver { } } - @C.NetworkType - private static int getMobileNetworkType(NetworkInfo networkInfo) { + private static @C.NetworkType int getMobileNetworkType(NetworkInfo networkInfo) { switch (networkInfo.getSubtype()) { case TelephonyManager.NETWORK_TYPE_EDGE: case TelephonyManager.NETWORK_TYPE_GPRS: diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/Util.java b/library/common/src/main/java/com/google/android/exoplayer2/util/Util.java index b21b247f76..8bf799ec96 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/util/Util.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/util/Util.java @@ -1558,8 +1558,7 @@ public final class Util { * C#ENCODING_PCM_16BIT}, {@link C#ENCODING_PCM_24BIT} and {@link C#ENCODING_PCM_32BIT}. If * the bit depth is unsupported then {@link C#ENCODING_INVALID} is returned. */ - @C.PcmEncoding - public static int getPcmEncoding(int bitDepth) { + public static @C.PcmEncoding int getPcmEncoding(int bitDepth) { switch (bitDepth) { case 8: return C.ENCODING_PCM_8BIT; @@ -1669,8 +1668,7 @@ public final class Util { } /** Returns the {@link C.AudioUsage} corresponding to the specified {@link C.StreamType}. */ - @C.AudioUsage - public static int getAudioUsageForStreamType(@C.StreamType int streamType) { + public static @C.AudioUsage int getAudioUsageForStreamType(@C.StreamType int streamType) { switch (streamType) { case C.STREAM_TYPE_ALARM: return C.USAGE_ALARM; @@ -1691,8 +1689,8 @@ public final class Util { } /** Returns the {@link C.AudioContentType} corresponding to the specified {@link C.StreamType}. */ - @C.AudioContentType - public static int getAudioContentTypeForStreamType(@C.StreamType int streamType) { + public static @C.AudioContentType int getAudioContentTypeForStreamType( + @C.StreamType int streamType) { switch (streamType) { case C.STREAM_TYPE_ALARM: case C.STREAM_TYPE_DTMF: @@ -1709,8 +1707,7 @@ public final class Util { } /** Returns the {@link C.StreamType} corresponding to the specified {@link C.AudioUsage}. */ - @C.StreamType - public static int getStreamTypeForAudioUsage(@C.AudioUsage int usage) { + public static @C.StreamType int getStreamTypeForAudioUsage(@C.AudioUsage int usage) { switch (usage) { case C.USAGE_MEDIA: case C.USAGE_GAME: @@ -1760,7 +1757,8 @@ public final class Util { * "clearkey"}. * @return The derived {@link UUID}, or {@code null} if one could not be derived. */ - public static @Nullable UUID getDrmUuid(String drmScheme) { + @Nullable + public static UUID getDrmUuid(String drmScheme) { switch (Ascii.toLowerCase(drmScheme)) { case "widevine": return C.WIDEVINE_UUID; @@ -1782,8 +1780,8 @@ public final class Util { * MediaDrm.ErrorCodes} value. Returns {@link PlaybackException#ERROR_CODE_DRM_SYSTEM_ERROR} if * the provided error code isn't recognised. */ - @PlaybackException.ErrorCode - public static int getErrorCodeForMediaDrmErrorCode(int mediaDrmErrorCode) { + public static @PlaybackException.ErrorCode int getErrorCodeForMediaDrmErrorCode( + int mediaDrmErrorCode) { switch (mediaDrmErrorCode) { case MediaDrm.ErrorCodes.ERROR_PROVISIONING_CONFIG: case MediaDrm.ErrorCodes.ERROR_PROVISIONING_PARSE: @@ -1819,8 +1817,7 @@ public final class Util { * @param overrideExtension If not null, used to infer the type. * @return The content type. */ - @ContentType - public static int inferContentType(Uri uri, @Nullable String overrideExtension) { + public static @ContentType int inferContentType(Uri uri, @Nullable String overrideExtension) { return TextUtils.isEmpty(overrideExtension) ? inferContentType(uri) : inferContentType("." + overrideExtension); @@ -1832,8 +1829,7 @@ public final class Util { * @param uri The {@link Uri}. * @return The content type. */ - @ContentType - public static int inferContentType(Uri uri) { + public static @ContentType int inferContentType(Uri uri) { @Nullable String scheme = uri.getScheme(); if (scheme != null && Ascii.equalsIgnoreCase("rtsp", scheme)) { return C.TYPE_RTSP; @@ -1849,8 +1845,7 @@ public final class Util { * @param fileName Name of the file. It can include the path of the file. * @return The content type. */ - @ContentType - public static int inferContentType(String fileName) { + public static @ContentType int inferContentType(String fileName) { fileName = Ascii.toLowerCase(fileName); if (fileName.endsWith(".mpd")) { return C.TYPE_DASH; @@ -1879,8 +1874,8 @@ public final class Util { * @param mimeType If MIME type, or {@code null}. * @return The content type. */ - @ContentType - public static int inferContentTypeForUriAndMimeType(Uri uri, @Nullable String mimeType) { + public static @ContentType int inferContentTypeForUriAndMimeType( + Uri uri, @Nullable String mimeType) { if (mimeType == null) { return Util.inferContentType(uri); } @@ -2030,7 +2025,8 @@ public final class Util { * @return The original value of the file name before it was escaped, or null if the escaped * fileName seems invalid. */ - public static @Nullable String unescapeFileName(String fileName) { + @Nullable + public static String unescapeFileName(String fileName) { int length = fileName.length(); int percentCharacterCount = 0; for (int i = 0; i < length; i++) { diff --git a/library/common/src/main/java/com/google/android/exoplayer2/util/XmlPullParserUtil.java b/library/common/src/main/java/com/google/android/exoplayer2/util/XmlPullParserUtil.java index 9b291f6f85..5aa002bdd6 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/util/XmlPullParserUtil.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/util/XmlPullParserUtil.java @@ -92,7 +92,8 @@ public final class XmlPullParserUtil { * @return The value of the attribute, or null if the current event is not a start tag or if no * such attribute was found. */ - public static @Nullable String getAttributeValue(XmlPullParser xpp, String attributeName) { + @Nullable + public static String getAttributeValue(XmlPullParser xpp, String attributeName) { int attributeCount = xpp.getAttributeCount(); for (int i = 0; i < attributeCount; i++) { if (xpp.getAttributeName(i).equals(attributeName)) { @@ -111,8 +112,8 @@ public final class XmlPullParserUtil { * @return The value of the attribute, or null if the current event is not a start tag or if no * such attribute was found. */ - public static @Nullable String getAttributeValueIgnorePrefix( - XmlPullParser xpp, String attributeName) { + @Nullable + public static String getAttributeValueIgnorePrefix(XmlPullParser xpp, String attributeName) { int attributeCount = xpp.getAttributeCount(); for (int i = 0; i < attributeCount; i++) { if (stripPrefix(xpp.getAttributeName(i)).equals(attributeName)) { diff --git a/library/common/src/main/java/com/google/android/exoplayer2/video/ColorInfo.java b/library/common/src/main/java/com/google/android/exoplayer2/video/ColorInfo.java index 8ca9121dbf..a4e998bb68 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/video/ColorInfo.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/video/ColorInfo.java @@ -39,8 +39,7 @@ public final class ColorInfo implements Bundleable { * made. */ @Pure - @C.ColorSpace - public static int isoColorPrimariesToColorSpace(int isoColorPrimaries) { + public static @C.ColorSpace int isoColorPrimariesToColorSpace(int isoColorPrimaries) { switch (isoColorPrimaries) { case 1: return C.COLOR_SPACE_BT709; @@ -62,8 +61,8 @@ public final class ColorInfo implements Bundleable { * mapping can be made. */ @Pure - @C.ColorTransfer - public static int isoTransferCharacteristicsToColorTransfer(int isoTransferCharacteristics) { + public static @C.ColorTransfer int isoTransferCharacteristicsToColorTransfer( + int isoTransferCharacteristics) { switch (isoTransferCharacteristics) { case 1: // BT.709. case 6: // SMPTE 170M. @@ -82,20 +81,20 @@ public final class ColorInfo implements Bundleable { * The color space of the video. Valid values are {@link C#COLOR_SPACE_BT601}, {@link * C#COLOR_SPACE_BT709}, {@link C#COLOR_SPACE_BT2020} or {@link Format#NO_VALUE} if unknown. */ - @C.ColorSpace public final int colorSpace; + public final @C.ColorSpace int colorSpace; /** * The color range of the video. Valid values are {@link C#COLOR_RANGE_LIMITED}, {@link * C#COLOR_RANGE_FULL} or {@link Format#NO_VALUE} if unknown. */ - @C.ColorRange public final int colorRange; + public final @C.ColorRange int colorRange; /** * The color transfer characteristics of the video. Valid values are {@link C#COLOR_TRANSFER_HLG}, * {@link C#COLOR_TRANSFER_ST2084}, {@link C#COLOR_TRANSFER_SDR} or {@link Format#NO_VALUE} if * unknown. */ - @C.ColorTransfer public final int colorTransfer; + public final @C.ColorTransfer int colorTransfer; /** HdrStaticInfo as defined in CTA-861.3, or null if none specified. */ @Nullable public final byte[] hdrStaticInfo; diff --git a/library/core/src/androidTest/java/com/google/android/exoplayer2/StreamVolumeManagerTest.java b/library/core/src/androidTest/java/com/google/android/exoplayer2/StreamVolumeManagerTest.java index 792492dc4a..a36e2715e1 100644 --- a/library/core/src/androidTest/java/com/google/android/exoplayer2/StreamVolumeManagerTest.java +++ b/library/core/src/androidTest/java/com/google/android/exoplayer2/StreamVolumeManagerTest.java @@ -272,7 +272,7 @@ public class StreamVolumeManagerTest { private static class TestListener implements StreamVolumeManager.Listener { - @C.StreamType private int lastStreamType; + private @C.StreamType int lastStreamType; private int lastStreamVolume; private boolean lastStreamVolumeMuted; public final CountDownLatch onStreamVolumeChangedLatch; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/AudioFocusManager.java b/library/core/src/main/java/com/google/android/exoplayer2/AudioFocusManager.java index 0510193b06..be8607b04d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/AudioFocusManager.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/AudioFocusManager.java @@ -137,7 +137,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; @Nullable private PlayerControl playerControl; @Nullable private AudioAttributes audioAttributes; - @AudioFocusState private int audioFocusState; + private @AudioFocusState int audioFocusState; private @AudioFocusGain int focusGainToRequest; private float volumeMultiplier = VOLUME_MULTIPLIER_DEFAULT; @@ -191,8 +191,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; * @param playbackState The desired playback state. * @return A {@link PlayerCommand} to execute on the player. */ - @PlayerCommand - public int updateAudioFocus(boolean playWhenReady, @Player.State int playbackState) { + public @PlayerCommand int updateAudioFocus( + boolean playWhenReady, @Player.State int playbackState) { if (shouldAbandonAudioFocusIfHeld(playbackState)) { abandonAudioFocusIfHeld(); return playWhenReady ? PLAYER_COMMAND_PLAY_WHEN_READY : PLAYER_COMMAND_DO_NOT_PLAY; @@ -220,8 +220,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; return playbackState == Player.STATE_IDLE || focusGainToRequest != AUDIOFOCUS_GAIN; } - @PlayerCommand - private int requestAudioFocus() { + private @PlayerCommand int requestAudioFocus() { if (audioFocusState == AUDIO_FOCUS_STATE_HAVE_FOCUS) { return PLAYER_COMMAND_PLAY_WHEN_READY; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/BaseRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/BaseRenderer.java index ac35a5148a..73a145a2fe 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/BaseRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/BaseRenderer.java @@ -196,8 +196,7 @@ public abstract class BaseRenderer implements Renderer, RendererCapabilities { // RendererCapabilities implementation. @Override - @AdaptiveSupport - public int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { + public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { return ADAPTIVE_NOT_SUPPORTED; } @@ -420,8 +419,7 @@ public abstract class BaseRenderer implements Renderer, RendererCapabilities { * the data of a sample being read. The buffer {@link DecoderInputBuffer#timeUs timestamp} and * flags are populated if this exception is thrown, but the read position is not advanced. */ - @ReadDataResult - protected final int readSource( + protected final @ReadDataResult int readSource( FormatHolder formatHolder, DecoderInputBuffer buffer, @ReadFlags int readFlags) { @ReadDataResult int result = Assertions.checkNotNull(stream).readData(formatHolder, buffer, readFlags); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/DefaultRenderersFactory.java b/library/core/src/main/java/com/google/android/exoplayer2/DefaultRenderersFactory.java index 32817786a1..1ccc97c5f9 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/DefaultRenderersFactory.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/DefaultRenderersFactory.java @@ -93,7 +93,7 @@ public class DefaultRenderersFactory implements RenderersFactory { private final Context context; private final DefaultMediaCodecAdapterFactory codecAdapterFactory; - @ExtensionRendererMode private int extensionRendererMode; + private @ExtensionRendererMode int extensionRendererMode; private long allowedVideoJoiningTimeMs; private boolean enableDecoderFallback; private MediaCodecSelector mediaCodecSelector; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java index 936f2e8e97..c12843aadb 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlaybackException.java @@ -80,7 +80,7 @@ public final class ExoPlaybackException extends PlaybackException { public static final int TYPE_REMOTE = 3; /** The {@link Type} of the playback failure. */ - @Type public final int type; + public final @Type int type; /** If {@link #type} is {@link #TYPE_RENDERER}, this is the name of the renderer. */ @Nullable public final String rendererName; @@ -99,7 +99,7 @@ public final class ExoPlaybackException extends PlaybackException { * renderer for {@link #rendererFormat}. If {@link #rendererFormat} is null, this is {@link * C#FORMAT_HANDLED}. */ - @FormatSupport public final int rendererFormatSupport; + public final @FormatSupport int rendererFormatSupport; /** The {@link MediaPeriodId} of the media associated with this error, or null if undetermined. */ @Nullable public final MediaPeriodId mediaPeriodId; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java index 83396d6302..e3ebcf5c40 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java @@ -204,12 +204,12 @@ import java.util.concurrent.TimeoutException; private final WifiLockManager wifiLockManager; private final long detachSurfaceTimeoutMs; - @RepeatMode private int repeatMode; + private @RepeatMode int repeatMode; private boolean shuffleModeEnabled; private int pendingOperationAcks; - @DiscontinuityReason private int pendingDiscontinuityReason; + private @DiscontinuityReason int pendingDiscontinuityReason; private boolean pendingDiscontinuity; - @PlayWhenReadyChangeReason private int pendingPlayWhenReadyChangeReason; + private @PlayWhenReadyChangeReason int pendingPlayWhenReadyChangeReason; private boolean foregroundMode; private SeekParameters seekParameters; private ShuffleOrder shuffleOrder; @@ -226,8 +226,8 @@ import java.util.concurrent.TimeoutException; @Nullable private SphericalGLSurfaceView sphericalGLSurfaceView; private boolean surfaceHolderSurfaceIsVideoOutput; @Nullable private TextureView textureView; - @C.VideoScalingMode private int videoScalingMode; - @C.VideoChangeFrameRateStrategy private int videoChangeFrameRateStrategy; + private @C.VideoScalingMode int videoScalingMode; + private @C.VideoChangeFrameRateStrategy int videoChangeFrameRateStrategy; private int surfaceWidth; private int surfaceHeight; @Nullable private DecoderCounters videoDecoderCounters; @@ -503,14 +503,12 @@ import java.util.concurrent.TimeoutException; return availableCommands; } - @State - public int getPlaybackState() { + public @State int getPlaybackState() { verifyApplicationThread(); return playbackInfo.playbackState; } - @PlaybackSuppressionReason - public int getPlaybackSuppressionReason() { + public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { verifyApplicationThread(); return playbackInfo.playbackSuppressionReason; } @@ -802,8 +800,7 @@ import java.util.concurrent.TimeoutException; } } - @RepeatMode - public int getRepeatMode() { + public @RepeatMode int getRepeatMode() { verifyApplicationThread(); return repeatMode; } @@ -1259,8 +1256,7 @@ import java.util.concurrent.TimeoutException; sendRendererMessage(TRACK_TYPE_VIDEO, MSG_SET_SCALING_MODE, videoScalingMode); } - @C.VideoScalingMode - public int getVideoScalingMode() { + public @C.VideoScalingMode int getVideoScalingMode() { return videoScalingMode; } @@ -1275,8 +1271,7 @@ import java.util.concurrent.TimeoutException; TRACK_TYPE_VIDEO, MSG_SET_CHANGE_FRAME_RATE_STRATEGY, videoChangeFrameRateStrategy); } - @C.VideoChangeFrameRateStrategy - public int getVideoChangeFrameRateStrategy() { + public @C.VideoChangeFrameRateStrategy int getVideoChangeFrameRateStrategy() { return videoChangeFrameRateStrategy; } @@ -2956,15 +2951,13 @@ import java.util.concurrent.TimeoutException; private static final class FrameMetadataListener implements VideoFrameMetadataListener, CameraMotionListener, PlayerMessage.Target { - @MessageType - public static final int MSG_SET_VIDEO_FRAME_METADATA_LISTENER = + public static final @MessageType int MSG_SET_VIDEO_FRAME_METADATA_LISTENER = Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER; - @MessageType - public static final int MSG_SET_CAMERA_MOTION_LISTENER = + public static final @MessageType int MSG_SET_CAMERA_MOTION_LISTENER = Renderer.MSG_SET_CAMERA_MOTION_LISTENER; - @MessageType public static final int MSG_SET_SPHERICAL_SURFACE_VIEW = Renderer.MSG_CUSTOM_BASE; + public static final @MessageType int MSG_SET_SPHERICAL_SURFACE_VIEW = Renderer.MSG_CUSTOM_BASE; @Nullable private VideoFrameMetadataListener videoFrameMetadataListener; @Nullable private CameraMotionListener cameraMotionListener; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java index c893d49864..c7fc668676 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java @@ -85,9 +85,9 @@ import java.util.concurrent.atomic.AtomicBoolean; public PlaybackInfo playbackInfo; public int operationAcks; public boolean positionDiscontinuity; - @DiscontinuityReason public int discontinuityReason; + public @DiscontinuityReason int discontinuityReason; public boolean hasPlayWhenReadyChangeReason; - @PlayWhenReadyChangeReason public int playWhenReadyChangeReason; + public @PlayWhenReadyChangeReason int playWhenReadyChangeReason; public PlaybackInfoUpdate(PlaybackInfo playbackInfo) { this.playbackInfo = playbackInfo; @@ -208,7 +208,7 @@ import java.util.concurrent.atomic.AtomicBoolean; private boolean pendingPauseAtEndOfPeriod; private boolean isRebuffering; private boolean shouldContinueLoading; - @Player.RepeatMode private int repeatMode; + private @Player.RepeatMode int repeatMode; private boolean shuffleModeEnabled; private boolean foregroundMode; private boolean requestForRendererSleep; @@ -2935,7 +2935,8 @@ import java.util.concurrent.atomic.AtomicBoolean; * @return The uid in the new timeline of the first subsequent period, or null if no such period * was found. */ - /* package */ static @Nullable Object resolveSubsequentPeriod( + /* package */ @Nullable + static Object resolveSubsequentPeriod( Timeline.Window window, Timeline.Period period, @Player.RepeatMode int repeatMode, diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoTimeoutException.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoTimeoutException.java index 080b00002e..c51a656793 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoTimeoutException.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoTimeoutException.java @@ -59,7 +59,7 @@ public final class ExoTimeoutException extends RuntimeException { public static final int TIMEOUT_OPERATION_DETACH_SURFACE = 3; /** The operation on the ExoPlayer playback thread that timed out. */ - @TimeoutOperation public final int timeoutOperation; + public final @TimeoutOperation int timeoutOperation; /** * Creates the timeout exception. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/NoSampleRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/NoSampleRenderer.java index 9be14c71b1..481e1e24d6 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/NoSampleRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/NoSampleRenderer.java @@ -166,14 +166,12 @@ public abstract class NoSampleRenderer implements Renderer, RendererCapabilities // RendererCapabilities implementation. @Override - @Capabilities - public int supportsFormat(Format format) throws ExoPlaybackException { + public @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @Override - @AdaptiveSupport - public int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { + public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { return ADAPTIVE_NOT_SUPPORTED; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/PlaybackInfo.java b/library/core/src/main/java/com/google/android/exoplayer2/PlaybackInfo.java index e525b5130d..d8295eb8ec 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/PlaybackInfo.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/PlaybackInfo.java @@ -51,7 +51,7 @@ import java.util.List; /** The start position after a reported position discontinuity, in microseconds. */ public final long discontinuityStartPositionUs; /** The current playback state. One of the {@link Player}.STATE_ constants. */ - @Player.State public final int playbackState; + public final @Player.State int playbackState; /** The current playback error, or null if this is not an error state. */ @Nullable public final ExoPlaybackException playbackError; /** Whether the player is currently loading. */ @@ -67,7 +67,7 @@ import java.util.List; /** Whether playback should proceed when {@link #playbackState} == {@link Player#STATE_READY}. */ public final boolean playWhenReady; /** Reason why playback is suppressed even though {@link #playWhenReady} is {@code true}. */ - @PlaybackSuppressionReason public final int playbackSuppressionReason; + public final @PlaybackSuppressionReason int playbackSuppressionReason; /** The playback parameters. */ public final PlaybackParameters playbackParameters; /** Whether offload scheduling is enabled for the main player loop. */ diff --git a/library/core/src/main/java/com/google/android/exoplayer2/RendererCapabilities.java b/library/core/src/main/java/com/google/android/exoplayer2/RendererCapabilities.java index 1b6d6d03b6..3c1f1dfe6b 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/RendererCapabilities.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/RendererCapabilities.java @@ -187,8 +187,7 @@ public interface RendererCapabilities { * @return The combined {@link Capabilities} of the given {@link C.FormatSupport}, {@link * #ADAPTIVE_NOT_SUPPORTED} and {@link #TUNNELING_NOT_SUPPORTED}. */ - @Capabilities - static int create(@C.FormatSupport int formatSupport) { + static @Capabilities int create(@C.FormatSupport int formatSupport) { return create(formatSupport, ADAPTIVE_NOT_SUPPORTED, TUNNELING_NOT_SUPPORTED); } @@ -204,8 +203,7 @@ public interface RendererCapabilities { * @param tunnelingSupport The {@link TunnelingSupport}. * @return The combined {@link Capabilities}. */ - @Capabilities - static int create( + static @Capabilities int create( @C.FormatSupport int formatSupport, @AdaptiveSupport int adaptiveSupport, @TunnelingSupport int tunnelingSupport) { @@ -231,8 +229,7 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - @Capabilities - static int create( + static @Capabilities int create( @C.FormatSupport int formatSupport, @AdaptiveSupport int adaptiveSupport, @TunnelingSupport int tunnelingSupport, @@ -253,8 +250,7 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - @C.FormatSupport - static int getFormatSupport(@Capabilities int supportFlags) { + static @C.FormatSupport int getFormatSupport(@Capabilities int supportFlags) { return supportFlags & FORMAT_SUPPORT_MASK; } @@ -266,8 +262,7 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - @AdaptiveSupport - static int getAdaptiveSupport(@Capabilities int supportFlags) { + static @AdaptiveSupport int getAdaptiveSupport(@Capabilities int supportFlags) { return supportFlags & ADAPTIVE_SUPPORT_MASK; } @@ -279,8 +274,7 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - @TunnelingSupport - static int getTunnelingSupport(@Capabilities int supportFlags) { + static @TunnelingSupport int getTunnelingSupport(@Capabilities int supportFlags) { return supportFlags & TUNNELING_SUPPORT_MASK; } @@ -292,8 +286,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - @HardwareAccelerationSupport - static int getHardwareAccelerationSupport(@Capabilities int supportFlags) { + static @HardwareAccelerationSupport int getHardwareAccelerationSupport( + @Capabilities int supportFlags) { return supportFlags & HARDWARE_ACCELERATION_SUPPORT_MASK; } @@ -305,8 +299,7 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - @DecoderSupport - static int getDecoderSupport(@Capabilities int supportFlags) { + static @DecoderSupport int getDecoderSupport(@Capabilities int supportFlags) { return supportFlags & MODE_SUPPORT_MASK; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java index 14d5d8683d..552282bd66 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java @@ -397,8 +397,7 @@ public class SimpleExoPlayer extends BasePlayer } @Override - @C.VideoScalingMode - public int getVideoScalingMode() { + public @C.VideoScalingMode int getVideoScalingMode() { blockUntilConstructorFinished(); return player.getVideoScalingMode(); } @@ -411,8 +410,7 @@ public class SimpleExoPlayer extends BasePlayer } @Override - @C.VideoChangeFrameRateStrategy - public int getVideoChangeFrameRateStrategy() { + public @C.VideoChangeFrameRateStrategy int getVideoChangeFrameRateStrategy() { blockUntilConstructorFinished(); return player.getVideoChangeFrameRateStrategy(); } @@ -684,15 +682,13 @@ public class SimpleExoPlayer extends BasePlayer } @Override - @State - public int getPlaybackState() { + public @State int getPlaybackState() { blockUntilConstructorFinished(); return player.getPlaybackState(); } @Override - @PlaybackSuppressionReason - public int getPlaybackSuppressionReason() { + public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { blockUntilConstructorFinished(); return player.getPlaybackSuppressionReason(); } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java b/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java index fe7f8c0f40..19b9f5c666 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/StreamVolumeManager.java @@ -54,7 +54,7 @@ import com.google.android.exoplayer2.util.Util; private final AudioManager audioManager; @Nullable private VolumeChangeReceiver receiver; - @C.StreamType private int streamType; + private @C.StreamType int streamType; private int volume; private boolean muted; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java index f4470595c3..7ce368350b 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java @@ -148,8 +148,7 @@ public interface AnalyticsListener { * @param index The index. Must be between 0 (inclusive) and {@link #size()} (exclusive). * @return The {@link EventFlags event} at the given index. */ - @EventFlags - public int get(int index) { + public @EventFlags int get(int index) { return flags.get(index); } } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/MediaMetricsListener.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/MediaMetricsListener.java index 29ea1322bd..2c4ad1a8d7 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/MediaMetricsListener.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/MediaMetricsListener.java @@ -118,7 +118,7 @@ public final class MediaMetricsListener @Nullable private String activeSessionId; @Nullable private PlaybackMetrics.Builder metricsBuilder; - @Player.DiscontinuityReason private int discontinuityReason; + private @Player.DiscontinuityReason int discontinuityReason; private int currentPlaybackState; private int currentNetworkType; @Nullable private PlaybackException pendingPlayerError; @@ -885,7 +885,7 @@ public final class MediaMetricsListener private static final class PendingFormatUpdate { public final Format format; - @C.SelectionReason public final int selectionReason; + public final @C.SelectionReason int selectionReason; public final String sessionId; public PendingFormatUpdate( diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/PlaybackStatsListener.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/PlaybackStatsListener.java index 868bfb617c..aacc929b26 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/PlaybackStatsListener.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/PlaybackStatsListener.java @@ -82,7 +82,7 @@ public final class PlaybackStatsListener @Nullable private String discontinuityFromSession; private long discontinuityFromPositionMs; - @Player.DiscontinuityReason private int discontinuityReason; + private @Player.DiscontinuityReason int discontinuityReason; private int droppedFrames; @Nullable private Exception nonFatalException; private long bandwidthTimeMs; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/AudioProcessor.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/AudioProcessor.java index ba160ee9bc..fa2b0ab472 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/AudioProcessor.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/AudioProcessor.java @@ -43,7 +43,7 @@ public interface AudioProcessor { /** The number of interleaved channels. */ public final int channelCount; /** The type of linear PCM encoding. */ - @C.PcmEncoding public final int encoding; + public final @C.PcmEncoding int encoding; /** The number of bytes used to represent one audio frame. */ public final int bytesPerFrame; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/DecoderAudioRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/DecoderAudioRenderer.java index 20a87e6a9e..53e9d50d90 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/DecoderAudioRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/DecoderAudioRenderer.java @@ -134,7 +134,7 @@ public abstract class DecoderAudioRenderer< @Nullable private DrmSession decoderDrmSession; @Nullable private DrmSession sourceDrmSession; - @ReinitializationState private int decoderReinitializationState; + private @ReinitializationState int decoderReinitializationState; private boolean decoderReceivedBuffers; private boolean audioTrackNeedsConfigure; @@ -224,8 +224,7 @@ public abstract class DecoderAudioRenderer< } @Override - @Capabilities - public final int supportsFormat(Format format) { + public final @Capabilities int supportsFormat(Format format) { if (!MimeTypes.isAudio(format.sampleMimeType)) { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @@ -244,8 +243,7 @@ public abstract class DecoderAudioRenderer< * @param format The format, which has an audio {@link Format#sampleMimeType}. * @return The {@link C.FormatSupport} for this {@link Format}. */ - @C.FormatSupport - protected abstract int supportsFormatInternal(Format format); + protected abstract @C.FormatSupport int supportsFormatInternal(Format format); /** * Returns whether the renderer's {@link AudioSink} supports a given {@link Format}. @@ -262,8 +260,7 @@ public abstract class DecoderAudioRenderer< * * @see AudioSink#getFormatSupport(Format) (Format) */ - @SinkFormatSupport - protected final int getSinkFormatSupport(Format format) { + protected final @SinkFormatSupport int getSinkFormatSupport(Format format) { return audioSink.getFormatSupport(format); } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java index 8807031698..72b4b9da9c 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java @@ -473,8 +473,8 @@ public final class DefaultAudioSink implements AudioSink { private final AudioTrackPositionTracker audioTrackPositionTracker; private final ArrayDeque mediaPositionParametersCheckpoints; private final boolean enableAudioTrackPlaybackParams; - @OffloadMode private final int offloadMode; - @MonotonicNonNull private StreamEventCallbackV29 offloadStreamEventCallbackV29; + private final @OffloadMode int offloadMode; + private @MonotonicNonNull StreamEventCallbackV29 offloadStreamEventCallbackV29; private final PendingExceptionHolder initializationExceptionPendingExceptionHolder; private final PendingExceptionHolder writeExceptionPendingExceptionHolder; @@ -483,7 +483,7 @@ public final class DefaultAudioSink implements AudioSink { @Nullable private PlayerId playerId; @Nullable private Listener listener; @Nullable private Configuration pendingConfiguration; - @MonotonicNonNull private Configuration configuration; + private @MonotonicNonNull Configuration configuration; @Nullable private AudioTrack audioTrack; private AudioAttributes audioAttributes; @@ -509,7 +509,7 @@ public final class DefaultAudioSink implements AudioSink { @Nullable private ByteBuffer inputBuffer; private int inputBufferAccessUnitCount; @Nullable private ByteBuffer outputBuffer; - @MonotonicNonNull private byte[] preV21OutputBuffer; + private @MonotonicNonNull byte[] preV21OutputBuffer; private int preV21OutputBufferOffset; private int drainingAudioProcessorIndex; private boolean handledEndOfStream; @@ -652,8 +652,7 @@ public final class DefaultAudioSink implements AudioSink { } @Override - @SinkFormatSupport - public int getFormatSupport(Format format) { + public @SinkFormatSupport int getFormatSupport(Format format) { if (MimeTypes.AUDIO_RAW.equals(format.sampleMimeType)) { if (!Util.isEncodingLinearPcm(format.pcmEncoding)) { Log.w(TAG, "Invalid PCM encoding: " + format.pcmEncoding); @@ -2127,11 +2126,11 @@ public final class DefaultAudioSink implements AudioSink { public final Format inputFormat; public final int inputPcmFrameSize; - @OutputMode public final int outputMode; + public final @OutputMode int outputMode; public final int outputPcmFrameSize; public final int outputSampleRate; public final int outputChannelConfig; - @C.Encoding public final int outputEncoding; + public final @C.Encoding int outputEncoding; public final int bufferSize; public final AudioProcessor[] availableAudioProcessors; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/ForwardingAudioSink.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/ForwardingAudioSink.java index ea248840de..e8e5edd1cd 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/ForwardingAudioSink.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/ForwardingAudioSink.java @@ -46,8 +46,7 @@ public class ForwardingAudioSink implements AudioSink { } @Override - @SinkFormatSupport - public int getFormatSupport(Format format) { + public @SinkFormatSupport int getFormatSupport(Format format) { return sink.getFormatSupport(format); } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/MediaCodecAudioRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/MediaCodecAudioRenderer.java index 8275c6dbcb..acdadac344 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/MediaCodecAudioRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/MediaCodecAudioRenderer.java @@ -282,8 +282,7 @@ public class MediaCodecAudioRenderer extends MediaCodecRenderer implements Media } @Override - @Capabilities - protected int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) + protected @Capabilities int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) throws DecoderQueryException { if (!MimeTypes.isAudio(format.sampleMimeType)) { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/SilenceSkippingAudioProcessor.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/SilenceSkippingAudioProcessor.java index cae3c00a00..2ad3308b6b 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/SilenceSkippingAudioProcessor.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/SilenceSkippingAudioProcessor.java @@ -86,7 +86,7 @@ public final class SilenceSkippingAudioProcessor extends BaseAudioProcessor { */ private byte[] paddingBuffer; - @State private int state; + private @State int state; private int maybeSilenceBufferSize; private int paddingSize; private boolean hasOutputNoise; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/SpatializerDelegate.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/SpatializerDelegate.java index 6b5adab946..57ffc46972 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/SpatializerDelegate.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/SpatializerDelegate.java @@ -129,8 +129,7 @@ import java.util.concurrent.Executor; } /** Delegates to Spatializer.getImmersiveAudioLevel() */ - @ImmersiveAudioLevel - public int getImmersiveAudioLevel() { + public @ImmersiveAudioLevel int getImmersiveAudioLevel() { try { return (int) Util.castNonNull(getImmersiveAudioLevel.invoke(spatializer)); } catch (IllegalAccessException | InvocationTargetException e) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/TeeAudioProcessor.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/TeeAudioProcessor.java index 17eb8ed381..1a82c88bee 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/TeeAudioProcessor.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/TeeAudioProcessor.java @@ -125,7 +125,7 @@ public final class TeeAudioProcessor extends BaseAudioProcessor { private int sampleRateHz; private int channelCount; - @C.PcmEncoding private int encoding; + private @C.PcmEncoding int encoding; @Nullable private RandomAccessFile randomAccessFile; private int counter; private int bytesWritten; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/TrimmingAudioProcessor.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/TrimmingAudioProcessor.java index 019c541f6d..5b0d984099 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/TrimmingAudioProcessor.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/TrimmingAudioProcessor.java @@ -25,7 +25,7 @@ import java.nio.ByteBuffer; /** Audio processor for trimming samples from the start/end of data. */ /* package */ final class TrimmingAudioProcessor extends BaseAudioProcessor { - @C.PcmEncoding private static final int OUTPUT_ENCODING = C.ENCODING_PCM_16BIT; + private static final @C.PcmEncoding int OUTPUT_ENCODING = C.ENCODING_PCM_16BIT; private int trimStartFrames; private int trimEndFrames; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.java b/library/core/src/main/java/com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.java index 560dfb78a7..19170bd91d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.java @@ -123,13 +123,13 @@ public final class DecoderReuseEvaluation { public final Format newFormat; /** The {@link DecoderReuseResult result} of the evaluation. */ - @DecoderReuseResult public final int result; + public final @DecoderReuseResult int result; /** * {@link DecoderDiscardReasons Reasons} why the decoder cannot be reused. Always {@code 0} if * reuse is possible. May also be {code 0} if reuse is not possible for an unspecified reason. */ - @DecoderDiscardReasons public final int discardReasons; + public final @DecoderDiscardReasons int discardReasons; /** * @param decoderName The name of the decoder. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java index 43c91d0f30..4e2db30ac5 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java @@ -254,8 +254,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; // DrmSession implementation. @Override - @DrmSession.State - public final int getState() { + public final @DrmSession.State int getState() { return state; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSessionManager.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSessionManager.java index 4c50748e89..22f2d3f5c7 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSessionManager.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSessionManager.java @@ -309,7 +309,7 @@ public class DefaultDrmSessionManager implements DrmSessionManager { @Nullable private byte[] offlineLicenseKeySetId; private @MonotonicNonNull PlayerId playerId; - /* package */ volatile @Nullable MediaDrmHandler mediaDrmHandler; + /* package */ @Nullable volatile MediaDrmHandler mediaDrmHandler; /** * @param uuid The UUID of the drm scheme. @@ -587,8 +587,7 @@ public class DefaultDrmSessionManager implements DrmSessionManager { } @Override - @C.CryptoType - public int getCryptoType(Format format) { + public @C.CryptoType int getCryptoType(Format format) { @C.CryptoType int cryptoType = checkNotNull(exoMediaDrm).getCryptoType(); if (format.drmInitData == null) { int trackType = MimeTypes.getTrackType(format.sampleMimeType); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSession.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSession.java index 72ebf7dfb3..09b695a4cb 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSession.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSession.java @@ -63,7 +63,7 @@ public interface DrmSession { class DrmSessionException extends IOException { /** The {@link PlaybackException.ErrorCode} that corresponds to the failure. */ - @PlaybackException.ErrorCode public final int errorCode; + public final @PlaybackException.ErrorCode int errorCode; public DrmSessionException(Throwable cause, @PlaybackException.ErrorCode int errorCode) { super(cause); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSessionManager.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSessionManager.java index 1b5ba9d0d0..53dcbded55 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSessionManager.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmSessionManager.java @@ -64,8 +64,7 @@ public interface DrmSessionManager { } @Override - @C.CryptoType - public int getCryptoType(Format format) { + public @C.CryptoType int getCryptoType(Format format) { return format.drmInitData != null ? C.CRYPTO_TYPE_UNSUPPORTED : C.CRYPTO_TYPE_NONE; } }; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmUtil.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmUtil.java index 7d52273d59..9e8b165899 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmUtil.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DrmUtil.java @@ -70,8 +70,7 @@ public final class DrmUtil { * @return The {@link PlaybackException.ErrorCode} that corresponds to the given DRM-related * exception. */ - @PlaybackException.ErrorCode - public static int getErrorCodeForMediaDrmException( + public static @PlaybackException.ErrorCode int getErrorCodeForMediaDrmException( Exception exception, @ErrorSource int errorSource) { if (Util.SDK_INT >= 21 && Api21.isMediaDrmStateException(exception)) { return Api21.mediaDrmStateExceptionToErrorCode(exception); @@ -126,8 +125,8 @@ public final class DrmUtil { } @DoNotInline - @PlaybackException.ErrorCode - public static int mediaDrmStateExceptionToErrorCode(Throwable throwable) { + public static @PlaybackException.ErrorCode int mediaDrmStateExceptionToErrorCode( + Throwable throwable) { @Nullable String diagnosticsInfo = ((MediaDrm.MediaDrmStateException) throwable).getDiagnosticInfo(); int drmErrorCode = Util.getErrorCodeFromPlatformDiagnosticsInfo(diagnosticsInfo); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DummyExoMediaDrm.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DummyExoMediaDrm.java index 796ea15169..444a72700e 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DummyExoMediaDrm.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DummyExoMediaDrm.java @@ -150,8 +150,7 @@ public final class DummyExoMediaDrm implements ExoMediaDrm { } @Override - @C.CryptoType - public int getCryptoType() { + public @C.CryptoType int getCryptoType() { return C.CRYPTO_TYPE_UNSUPPORTED; } } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/ExoMediaDrm.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/ExoMediaDrm.java index 45b7885569..6981e88b8e 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/ExoMediaDrm.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/ExoMediaDrm.java @@ -265,7 +265,7 @@ public interface ExoMediaDrm { private final byte[] data; private final String licenseServerUrl; - @RequestType private final int requestType; + private final @RequestType int requestType; /** * Creates an instance with {@link #REQUEST_TYPE_UNKNOWN}. @@ -305,8 +305,7 @@ public interface ExoMediaDrm { * request does not specify a type. Note that when using a platform {@link MediaDrm} instance, * key requests only specify a type on API levels 23 and above. */ - @RequestType - public int getRequestType() { + public @RequestType int getRequestType() { return requestType; } } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java index 2d02921c98..69ad0f4277 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java @@ -339,8 +339,7 @@ public final class FrameworkMediaDrm implements ExoMediaDrm { } @Override - @C.CryptoType - public int getCryptoType() { + public @C.CryptoType int getCryptoType() { return C.CRYPTO_TYPE_FRAMEWORK; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/UnsupportedDrmException.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/UnsupportedDrmException.java index 99412cd0ac..e726bc5259 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/UnsupportedDrmException.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/UnsupportedDrmException.java @@ -47,7 +47,7 @@ public final class UnsupportedDrmException extends Exception { public static final int REASON_INSTANTIATION_ERROR = 2; /** Either {@link #REASON_UNSUPPORTED_SCHEME} or {@link #REASON_INSTANTIATION_ERROR}. */ - @Reason public final int reason; + public final @Reason int reason; /** @param reason {@link #REASON_UNSUPPORTED_SCHEME} or {@link #REASON_INSTANTIATION_ERROR}. */ public UnsupportedDrmException(@Reason int reason) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/WidevineUtil.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/WidevineUtil.java index 2af6a5cd1b..9db314e502 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/WidevineUtil.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/WidevineUtil.java @@ -37,7 +37,8 @@ public final class WidevineUtil { * @return A {@link Pair} consisting of the remaining license and playback durations in seconds, * or null if called before the session has been opened or after it's been released. */ - public static @Nullable Pair getLicenseDurationRemainingSec(DrmSession drmSession) { + @Nullable + public static Pair getLicenseDurationRemainingSec(DrmSession drmSession) { Map keyStatus = drmSession.queryKeyStatus(); if (keyStatus == null) { return null; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/AsynchronousMediaCodecAdapter.java b/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/AsynchronousMediaCodecAdapter.java index b5d814eeb7..2154737c75 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/AsynchronousMediaCodecAdapter.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/AsynchronousMediaCodecAdapter.java @@ -141,7 +141,7 @@ import java.nio.ByteBuffer; private final boolean synchronizeCodecInteractionsWithQueueing; private final boolean enableImmediateCodecStartAfterFlush; private boolean codecReleased; - @State private int state; + private @State int state; private AsynchronousMediaCodecAdapter( MediaCodec codec, diff --git a/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/DefaultMediaCodecAdapterFactory.java b/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/DefaultMediaCodecAdapterFactory.java index 411d10ff53..9807a50c09 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/DefaultMediaCodecAdapterFactory.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/DefaultMediaCodecAdapterFactory.java @@ -51,7 +51,7 @@ public final class DefaultMediaCodecAdapterFactory implements MediaCodecAdapter. private static final String TAG = "DMCodecAdapterFactory"; - @Mode private int asynchronousMode; + private @Mode int asynchronousMode; private boolean enableSynchronizeCodecInteractionsWithQueueing; private boolean enableImmediateCodecStartAfterFlush; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/MediaCodecRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/MediaCodecRenderer.java index 71a2108b59..8c5b081b51 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/MediaCodecRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/mediacodec/MediaCodecRenderer.java @@ -325,7 +325,7 @@ public abstract class MediaCodecRenderer extends BaseRenderer { @Nullable private ArrayDeque availableCodecInfos; @Nullable private DecoderInitializationException preferredDecoderInitializationException; @Nullable private MediaCodecInfo codecInfo; - @AdaptationWorkaroundMode private int codecAdaptationWorkaroundMode; + private @AdaptationWorkaroundMode int codecAdaptationWorkaroundMode; private boolean codecNeedsDiscardToSpsWorkaround; private boolean codecNeedsFlushWorkaround; private boolean codecNeedsSosFlushWorkaround; @@ -347,9 +347,9 @@ public abstract class MediaCodecRenderer extends BaseRenderer { private boolean bypassSampleBufferPending; private boolean bypassDrainAndReinitialize; private boolean codecReconfigured; - @ReconfigurationState private int codecReconfigurationState; - @DrainState private int codecDrainState; - @DrainAction private int codecDrainAction; + private @ReconfigurationState int codecReconfigurationState; + private @DrainState int codecDrainState; + private @DrainAction int codecDrainAction; private boolean codecReceivedBuffers; private boolean codecReceivedEos; private boolean codecHasOutputMediaFormat; @@ -435,14 +435,12 @@ public abstract class MediaCodecRenderer extends BaseRenderer { } @Override - @AdaptiveSupport - public final int supportsMixedMimeTypeAdaptation() { + public final @AdaptiveSupport int supportsMixedMimeTypeAdaptation() { return ADAPTIVE_NOT_SEAMLESS; } @Override - @Capabilities - public final int supportsFormat(Format format) throws ExoPlaybackException { + public final @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { try { return supportsFormat(mediaCodecSelector, format); } catch (DecoderQueryException e) { @@ -458,9 +456,8 @@ public abstract class MediaCodecRenderer extends BaseRenderer { * @return The {@link Capabilities} for this {@link Format}. * @throws DecoderQueryException If there was an error querying decoders. */ - @Capabilities - protected abstract int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) - throws DecoderQueryException; + protected abstract @Capabilities int supportsFormat( + MediaCodecSelector mediaCodecSelector, Format format) throws DecoderQueryException; /** * Returns a list of decoders that can decode media in the specified format, in priority order. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/metadata/MetadataRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/metadata/MetadataRenderer.java index 491bb59939..4e9d0d3e61 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/metadata/MetadataRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/metadata/MetadataRenderer.java @@ -89,8 +89,7 @@ public final class MetadataRenderer extends BaseRenderer implements Callback { } @Override - @Capabilities - public int supportsFormat(Format format) { + public @Capabilities int supportsFormat(Format format) { if (decoderFactory.supportsFormat(format)) { return RendererCapabilities.create( format.cryptoType == C.CRYPTO_TYPE_NONE ? C.FORMAT_HANDLED : C.FORMAT_UNSUPPORTED_DRM); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/offline/Download.java b/library/core/src/main/java/com/google/android/exoplayer2/offline/Download.java index 5b2cc7d3ec..62d4d57814 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/offline/Download.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/offline/Download.java @@ -97,7 +97,7 @@ public final class Download { /** The download request. */ public final DownloadRequest request; /** The state of the download. */ - @State public final int state; + public final @State int state; /** The first time when download entry is created. */ public final long startTimeMs; /** The last update time. */ @@ -110,7 +110,7 @@ public final class Download { * If {@link #state} is {@link #STATE_FAILED} then this is the cause, otherwise {@link * #FAILURE_REASON_NONE}. */ - @FailureReason public final int failureReason; + public final @FailureReason int failureReason; /* package */ final DownloadProgress progress; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadHelper.java b/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadHelper.java index 3348163046..aeb04423d5 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadHelper.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadHelper.java @@ -1097,8 +1097,7 @@ public final class DownloadHelper { } @Override - @C.SelectionReason - public int getSelectionReason() { + public @C.SelectionReason int getSelectionReason() { return C.SELECTION_REASON_UNKNOWN; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadManager.java b/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadManager.java index e957a39fc7..4078ae4f41 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadManager.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/offline/DownloadManager.java @@ -349,8 +349,7 @@ public final class DownloadManager { * * @return The not met {@link Requirements.RequirementFlags}, or 0 if all requirements are met. */ - @Requirements.RequirementFlags - public int getNotMetRequirements() { + public @Requirements.RequirementFlags int getNotMetRequirements() { return notMetRequirements; } @@ -703,7 +702,7 @@ public final class DownloadManager { private final ArrayList downloads; private final HashMap activeTasks; - @Requirements.RequirementFlags private int notMetRequirements; + private @Requirements.RequirementFlags int notMetRequirements; private boolean downloadsPaused; private int maxParallelDownloads; private int minRetryCount; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/scheduler/Requirements.java b/library/core/src/main/java/com/google/android/exoplayer2/scheduler/Requirements.java index 84e250681f..db2df6cf10 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/scheduler/Requirements.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/scheduler/Requirements.java @@ -72,7 +72,7 @@ public final class Requirements implements Parcelable { */ public static final int DEVICE_STORAGE_NOT_LOW = 1 << 4; - @RequirementFlags private final int requirements; + private final @RequirementFlags int requirements; /** @param requirements A combination of requirement flags. */ public Requirements(@RequirementFlags int requirements) { @@ -84,8 +84,7 @@ public final class Requirements implements Parcelable { } /** Returns the requirements. */ - @RequirementFlags - public int getRequirements() { + public @RequirementFlags int getRequirements() { return requirements; } @@ -142,8 +141,7 @@ public final class Requirements implements Parcelable { * @param context Any context. * @return The requirements that are not met, or 0. */ - @RequirementFlags - public int getNotMetRequirements(Context context) { + public @RequirementFlags int getNotMetRequirements(Context context) { @RequirementFlags int notMetRequirements = getNotMetNetworkRequirements(context); if (isChargingRequired() && !isDeviceCharging(context)) { notMetRequirements |= DEVICE_CHARGING; @@ -157,8 +155,7 @@ public final class Requirements implements Parcelable { return notMetRequirements; } - @RequirementFlags - private int getNotMetNetworkRequirements(Context context) { + private @RequirementFlags int getNotMetNetworkRequirements(Context context) { if (!isNetworkRequired()) { return 0; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/scheduler/RequirementsWatcher.java b/library/core/src/main/java/com/google/android/exoplayer2/scheduler/RequirementsWatcher.java index 6293cbf36d..5e4630c31c 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/scheduler/RequirementsWatcher.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/scheduler/RequirementsWatcher.java @@ -60,7 +60,7 @@ public final class RequirementsWatcher { @Nullable private DeviceStatusChangeReceiver receiver; - @Requirements.RequirementFlags private int notMetRequirements; + private @Requirements.RequirementFlags int notMetRequirements; @Nullable private NetworkCallback networkCallback; /** @@ -81,8 +81,7 @@ public final class RequirementsWatcher { * * @return Initial {@link Requirements.RequirementFlags RequirementFlags} that are not met, or 0. */ - @Requirements.RequirementFlags - public int start() { + public @Requirements.RequirementFlags int start() { notMetRequirements = requirements.getNotMetRequirements(context); IntentFilter filter = new IntentFilter(); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/ClippingMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/ClippingMediaSource.java index b23eb29c2a..80ba959f5d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/ClippingMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/ClippingMediaSource.java @@ -61,7 +61,7 @@ public final class ClippingMediaSource extends CompositeMediaSource { public static final int REASON_START_EXCEEDS_END = 2; /** The reason clipping failed. */ - @Reason public final int reason; + public final @Reason int reason; /** @param reason The reason clipping failed. */ public IllegalClippingException(@Reason int reason) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/DefaultMediaSourceFactory.java b/library/core/src/main/java/com/google/android/exoplayer2/source/DefaultMediaSourceFactory.java index 42a89b7749..a52cbee997 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/DefaultMediaSourceFactory.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/DefaultMediaSourceFactory.java @@ -456,8 +456,7 @@ public final class DefaultMediaSourceFactory implements MediaSourceFactory { mediaSourceFactories = new HashMap<>(); } - @C.ContentType - public int[] getSupportedTypes() { + public @C.ContentType int[] getSupportedTypes() { ensureAllSuppliersAreLoaded(); return Ints.toArray(supportedTypes); } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/MediaLoadData.java b/library/core/src/main/java/com/google/android/exoplayer2/source/MediaLoadData.java index 5161c29d60..7ff7d234fa 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/MediaLoadData.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/MediaLoadData.java @@ -26,7 +26,7 @@ import com.google.android.exoplayer2.Format; public final class MediaLoadData { /** The {@link DataType data type}. */ - @DataType public final int dataType; + public final @DataType int dataType; /** * One of the {@link TrackType track types}, which is a media track type if the data corresponds * to media of a specific type, or {@link C#TRACK_TYPE_UNKNOWN} otherwise. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/MediaSourceFactory.java b/library/core/src/main/java/com/google/android/exoplayer2/source/MediaSourceFactory.java index 04e7712608..411440a090 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/MediaSourceFactory.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/MediaSourceFactory.java @@ -44,8 +44,7 @@ public interface MediaSourceFactory extends MediaSource.Factory { } @Override - @C.ContentType - public int[] getSupportedTypes() { + public @C.ContentType int[] getSupportedTypes() { throw new UnsupportedOperationException(); } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/MergingMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/MergingMediaSource.java index 601ab327cd..c4988a480d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/MergingMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/MergingMediaSource.java @@ -59,7 +59,7 @@ public final class MergingMediaSource extends CompositeMediaSource { public static final int REASON_PERIOD_COUNT_MISMATCH = 0; /** The reason the merge failed. */ - @Reason public final int reason; + public final @Reason int reason; /** @param reason The reason the merge failed. */ public IllegalMergeException(@Reason int reason) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java b/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java index 4d3cb5b49b..5b5d73b3d2 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java @@ -129,7 +129,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; private @MonotonicNonNull SeekMap seekMap; private long durationUs; private boolean isLive; - @DataType private int dataType; + private @DataType int dataType; private boolean seenFirstTrackSelection; private boolean notifyDiscontinuity; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java index 41df5c6891..fd09de97d8 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java @@ -83,7 +83,7 @@ public final class SilenceMediaSource extends BaseMediaSource { public static final String MEDIA_ID = "SilenceMediaSource"; private static final int SAMPLE_RATE_HZ = 44100; - @C.PcmEncoding private static final int PCM_ENCODING = C.ENCODING_PCM_16BIT; + private static final @C.PcmEncoding int PCM_ENCODING = C.ENCODING_PCM_16BIT; private static final int CHANNEL_COUNT = 2; private static final Format FORMAT = new Format.Builder() diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/ads/ServerSideAdInsertionMediaSource.java b/library/core/src/main/java/com/google/android/exoplayer2/source/ads/ServerSideAdInsertionMediaSource.java index 7d5ddd2c55..cc9118c71f 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/ads/ServerSideAdInsertionMediaSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/ads/ServerSideAdInsertionMediaSource.java @@ -844,8 +844,7 @@ public final class ServerSideAdInsertionMediaSource extends BaseMediaSource return positionUs; } - @SampleStream.ReadDataResult - public int readData( + public @SampleStream.ReadDataResult int readData( MediaPeriodImpl mediaPeriod, int streamIndex, FormatHolder formatHolder, @@ -1201,8 +1200,7 @@ public final class ServerSideAdInsertionMediaSource extends BaseMediaSource } @Override - @ReadDataResult - public int readData( + public @ReadDataResult int readData( FormatHolder formatHolder, DecoderInputBuffer buffer, @ReadFlags int readFlags) { return mediaPeriod.sharedPeriod.readData( mediaPeriod, streamIndex, formatHolder, buffer, readFlags); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/Chunk.java b/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/Chunk.java index c0ee8c5aaa..43fde00f8a 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/Chunk.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/Chunk.java @@ -40,7 +40,7 @@ public abstract class Chunk implements Loadable { /** The {@link DataSpec} that defines the data to be loaded. */ public final DataSpec dataSpec; /** The {@link DataType data type} of the chunk. For reporting only. */ - @DataType public final int type; + public final @DataType int type; /** The format of the track to which this chunk belongs. */ public final Format trackFormat; /** @@ -48,7 +48,7 @@ public abstract class Chunk implements Loadable { * C#SELECTION_REASON_UNKNOWN} if the chunk does not belong to a track, or if the selection reason * is unknown. */ - @C.SelectionReason public final int trackSelectionReason; + public final @C.SelectionReason int trackSelectionReason; /** * Optional data associated with the selection of the track to which this chunk belongs. Null if * the chunk does not belong to a track, or if there is no associated track selection data. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/mediaparser/OutputConsumerAdapterV30.java b/library/core/src/main/java/com/google/android/exoplayer2/source/mediaparser/OutputConsumerAdapterV30.java index df37dc92f4..cf8f84e876 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/mediaparser/OutputConsumerAdapterV30.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/mediaparser/OutputConsumerAdapterV30.java @@ -538,8 +538,7 @@ public final class OutputConsumerAdapterV30 implements MediaParser.OutputConsume return new DrmInitData(schemeType, schemeDatas); } - @SelectionFlags - private static int getSelectionFlags(MediaFormat mediaFormat) { + private static @SelectionFlags int getSelectionFlags(MediaFormat mediaFormat) { int selectionFlags = 0; selectionFlags |= getFlag( diff --git a/library/core/src/main/java/com/google/android/exoplayer2/text/ExoplayerCuesDecoder.java b/library/core/src/main/java/com/google/android/exoplayer2/text/ExoplayerCuesDecoder.java index ed085b0098..937bb52287 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/text/ExoplayerCuesDecoder.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/text/ExoplayerCuesDecoder.java @@ -54,7 +54,7 @@ public final class ExoplayerCuesDecoder implements SubtitleDecoder { private final SubtitleInputBuffer inputBuffer; private final Deque availableOutputBuffers; - @InputBufferState private int inputBufferState; + private @InputBufferState int inputBufferState; private boolean released; public ExoplayerCuesDecoder() { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/text/TextRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/text/TextRenderer.java index d68e0a307f..887174d90b 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/text/TextRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/text/TextRenderer.java @@ -86,7 +86,7 @@ public final class TextRenderer extends BaseRenderer implements Callback { private boolean inputStreamEnded; private boolean outputStreamEnded; private boolean waitingForKeyFrame; - @ReplacementState private int decoderReplacementState; + private @ReplacementState int decoderReplacementState; @Nullable private Format streamFormat; @Nullable private SubtitleDecoder decoder; @Nullable private SubtitleInputBuffer nextInputBuffer; @@ -133,8 +133,7 @@ public final class TextRenderer extends BaseRenderer implements Callback { } @Override - @Capabilities - public int supportsFormat(Format format) { + public @Capabilities int supportsFormat(Format format) { if (decoderFactory.supportsFormat(format)) { return RendererCapabilities.create( format.cryptoType == C.CRYPTO_TYPE_NONE ? C.FORMAT_HANDLED : C.FORMAT_UNSUPPORTED_DRM); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelector.java b/library/core/src/main/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelector.java index 97bc9decde..ac2b6cbb25 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelector.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelector.java @@ -118,7 +118,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { private boolean allowAudioMixedChannelCountAdaptiveness; private boolean allowAudioMixedDecoderSupportAdaptiveness; // Text - @C.SelectionFlags private int disabledTextTrackSelectionFlags; + private @C.SelectionFlags int disabledTextTrackSelectionFlags; // General private boolean exceedRendererCapabilitiesIfNecessary; private boolean tunnelingEnabled; @@ -889,7 +889,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { * Bitmask of selection flags that are disabled for text track selections. See {@link * C.SelectionFlags}. The default value is {@code 0} (i.e. no flags). */ - @C.SelectionFlags public final int disabledTextTrackSelectionFlags; + public final @C.SelectionFlags int disabledTextTrackSelectionFlags; /** Returns an instance configured with default values. */ public static Parameters getDefaults(Context context) { @@ -2247,8 +2247,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { } /** Returns to what extent the track is {@link SelectionEligibility eligible for selection}. */ - @SelectionEligibility - public abstract int getSelectionEligibility(); + public abstract @SelectionEligibility int getSelectionEligibility(); /** * Returns whether this track is compatible for an adaptive selection with the specified other @@ -2300,7 +2299,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { private final int preferredRoleFlagsScore; private final boolean hasMainOrNoRoleFlag; private final boolean allowMixedMimeTypes; - @SelectionEligibility private final int selectionEligibility; + private final @SelectionEligibility int selectionEligibility; private final boolean usesPrimaryDecoder; private final boolean usesHardwareAcceleration; private final int codecPreferenceScore; @@ -2367,8 +2366,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { } @Override - @SelectionEligibility - public int getSelectionEligibility() { + public @SelectionEligibility int getSelectionEligibility() { return selectionEligibility; } @@ -2381,8 +2379,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { && this.usesHardwareAcceleration == otherTrack.usesHardwareAcceleration)); } - @SelectionEligibility - private int evaluateSelectionEligibility( + private @SelectionEligibility int evaluateSelectionEligibility( @Capabilities int rendererSupport, @AdaptiveSupport int requiredAdaptiveSupport) { if ((format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) != 0) { // Ignore trick-play tracks for now. @@ -2494,7 +2491,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { return listBuilder.build(); } - @SelectionEligibility private final int selectionEligibility; + private final @SelectionEligibility int selectionEligibility; private final boolean isWithinConstraints; @Nullable private final String language; private final Parameters parameters; @@ -2586,8 +2583,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { } @Override - @SelectionEligibility - public int getSelectionEligibility() { + public @SelectionEligibility int getSelectionEligibility() { return selectionEligibility; } @@ -2656,8 +2652,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { .result(); } - @SelectionEligibility - private int evaluateSelectionEligibility( + private @SelectionEligibility int evaluateSelectionEligibility( @Capabilities int rendererSupport, boolean hasMappedVideoTracks) { if (!isSupported(rendererSupport, parameters.exceedRendererCapabilitiesIfNecessary)) { return SELECTION_ELIGIBILITY_NO; @@ -2704,7 +2699,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { return listBuilder.build(); } - @SelectionEligibility private final int selectionEligibility; + private final @SelectionEligibility int selectionEligibility; private final boolean isWithinRendererCapabilities; private final boolean isDefault; private final boolean isForced; @@ -2769,8 +2764,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { } @Override - @SelectionEligibility - public int getSelectionEligibility() { + public @SelectionEligibility int getSelectionEligibility() { return selectionEligibility; } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/trackselection/MappingTrackSelector.java b/library/core/src/main/java/com/google/android/exoplayer2/trackselection/MappingTrackSelector.java index c2072cfe58..91f050899e 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/trackselection/MappingTrackSelector.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/trackselection/MappingTrackSelector.java @@ -104,8 +104,8 @@ public abstract class MappingTrackSelector extends TrackSelector { private final String[] rendererNames; private final @C.TrackType int[] rendererTrackTypes; private final TrackGroupArray[] rendererTrackGroups; - @AdaptiveSupport private final int[] rendererMixedMimeTypeAdaptiveSupports; - @Capabilities private final int[][][] rendererFormatSupports; + private final @AdaptiveSupport int[] rendererMixedMimeTypeAdaptiveSupports; + private final @Capabilities int[][][] rendererFormatSupports; private final TrackGroupArray unmappedTrackGroups; /** @@ -178,8 +178,7 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param rendererIndex The renderer index. * @return The {@link RendererSupport}. */ - @RendererSupport - public int getRendererSupport(int rendererIndex) { + public @RendererSupport int getRendererSupport(int rendererIndex) { @RendererSupport int bestRendererSupport = RENDERER_SUPPORT_NO_TRACKS; @Capabilities int[][] rendererFormatSupport = rendererFormatSupports[rendererIndex]; for (@Capabilities int[] trackGroupFormatSupport : rendererFormatSupport) { @@ -214,8 +213,7 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param trackType The {@link C.TrackType track type}. * @return The {@link RendererSupport}. */ - @RendererSupport - public int getTypeSupport(@C.TrackType int trackType) { + public @RendererSupport int getTypeSupport(@C.TrackType int trackType) { @RendererSupport int bestRendererSupport = RENDERER_SUPPORT_NO_TRACKS; for (int i = 0; i < rendererCount; i++) { if (rendererTrackTypes[i] == trackType) { @@ -233,8 +231,7 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param trackIndex The index of the track within the track group. * @return The {@link Capabilities}. */ - @Capabilities - public int getCapabilities(int rendererIndex, int groupIndex, int trackIndex) { + public @Capabilities int getCapabilities(int rendererIndex, int groupIndex, int trackIndex) { return rendererFormatSupports[rendererIndex][groupIndex][trackIndex]; } @@ -246,8 +243,7 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param trackIndex The index of the track within the track group. * @return The {@link FormatSupport}. */ - @FormatSupport - public int getTrackSupport(int rendererIndex, int groupIndex, int trackIndex) { + public @FormatSupport int getTrackSupport(int rendererIndex, int groupIndex, int trackIndex) { return RendererCapabilities.getFormatSupport( getCapabilities(rendererIndex, groupIndex, trackIndex)); } @@ -269,8 +265,7 @@ public abstract class MappingTrackSelector extends TrackSelector { * renderer are included when determining support. * @return The {@link AdaptiveSupport}. */ - @AdaptiveSupport - public int getAdaptiveSupport( + public @AdaptiveSupport int getAdaptiveSupport( int rendererIndex, int groupIndex, boolean includeCapabilitiesExceededTracks) { int trackCount = rendererTrackGroups[rendererIndex].get(groupIndex).length; // Iterate over the tracks in the group, recording the indices of those to consider. @@ -296,8 +291,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param groupIndex The index of the track group. * @return The {@link AdaptiveSupport}. */ - @AdaptiveSupport - public int getAdaptiveSupport(int rendererIndex, int groupIndex, int[] trackIndices) { + public @AdaptiveSupport int getAdaptiveSupport( + int rendererIndex, int groupIndex, int[] trackIndices) { int handledTrackCount = 0; @AdaptiveSupport int adaptiveSupport = RendererCapabilities.ADAPTIVE_SEAMLESS; boolean multipleMimeTypes = false; @@ -537,9 +532,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @return An array containing {@link Capabilities} for each track in the group. * @throws ExoPlaybackException If an error occurs determining the format support. */ - @Capabilities - private static int[] getFormatSupport(RendererCapabilities rendererCapabilities, TrackGroup group) - throws ExoPlaybackException { + private static @Capabilities int[] getFormatSupport( + RendererCapabilities rendererCapabilities, TrackGroup group) throws ExoPlaybackException { @Capabilities int[] formatSupport = new int[group.length]; for (int i = 0; i < group.length; i++) { formatSupport[i] = rendererCapabilities.supportsFormat(group.getFormat(i)); @@ -556,8 +550,7 @@ public abstract class MappingTrackSelector extends TrackSelector { * renderer. * @throws ExoPlaybackException If an error occurs determining the adaptation support. */ - @AdaptiveSupport - private static int[] getMixedMimeTypeAdaptationSupports( + private static @AdaptiveSupport int[] getMixedMimeTypeAdaptationSupports( RendererCapabilities[] rendererCapabilities) throws ExoPlaybackException { @AdaptiveSupport int[] mixedMimeTypeAdaptationSupport = new int[rendererCapabilities.length]; for (int i = 0; i < mixedMimeTypeAdaptationSupport.length; i++) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultBandwidthMeter.java b/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultBandwidthMeter.java index e606cfe148..ab7445ab9d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultBandwidthMeter.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultBandwidthMeter.java @@ -276,14 +276,14 @@ public final class DefaultBandwidthMeter implements BandwidthMeter, TransferList private long sampleStartTimeMs; private long sampleBytesTransferred; - @C.NetworkType private int networkType; + private @C.NetworkType int networkType; private long totalElapsedTimeMs; private long totalBytesTransferred; private long bitrateEstimate; private long lastReportedBitrateEstimate; private boolean networkTypeOverrideSet; - @C.NetworkType private int networkTypeOverride; + private @C.NetworkType int networkTypeOverride; /** @deprecated Use {@link Builder} instead. */ @Deprecated diff --git a/library/core/src/main/java/com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.java b/library/core/src/main/java/com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.java index 67d6109249..0a5032b021 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.java @@ -128,7 +128,7 @@ public interface LoadErrorHandlingPolicy { /** A selected fallback option. */ final class FallbackSelection { /** The type of fallback. */ - @FallbackType public final int type; + public final @FallbackType int type; /** The duration for which the failing resource should be excluded, in milliseconds. */ public final long exclusionDurationMs; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/upstream/ParsingLoadable.java b/library/core/src/main/java/com/google/android/exoplayer2/upstream/ParsingLoadable.java index 0296e093c1..12f686532e 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/upstream/ParsingLoadable.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/upstream/ParsingLoadable.java @@ -98,7 +98,7 @@ public final class ParsingLoadable implements Loadable { private final StatsDataSource dataSource; private final Parser parser; - private volatile @Nullable T result; + @Nullable private volatile T result; /** * @param dataSource A {@link DataSource} to use when loading the data. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/DecoderVideoRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/video/DecoderVideoRenderer.java index 0ddacf8b1a..87ef28706d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/DecoderVideoRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/DecoderVideoRenderer.java @@ -118,7 +118,7 @@ public abstract class DecoderVideoRenderer extends BaseRenderer { private DecoderInputBuffer inputBuffer; private VideoDecoderOutputBuffer outputBuffer; - @VideoOutputMode private int outputMode; + private @VideoOutputMode int outputMode; @Nullable private Object output; @Nullable private Surface outputSurface; @Nullable private VideoDecoderOutputBufferRenderer outputBufferRenderer; @@ -127,7 +127,7 @@ public abstract class DecoderVideoRenderer extends BaseRenderer { @Nullable private DrmSession decoderDrmSession; @Nullable private DrmSession sourceDrmSession; - @ReinitializationState private int decoderReinitializationState; + private @ReinitializationState int decoderReinitializationState; private boolean decoderReceivedBuffers; private boolean renderedFirstFrameAfterReset; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/DummySurface.java b/library/core/src/main/java/com/google/android/exoplayer2/video/DummySurface.java index 51e23dbbba..3d2c9a7996 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/DummySurface.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/DummySurface.java @@ -103,8 +103,7 @@ public final class DummySurface extends Surface { } } - @SecureMode - private static int getSecureMode(Context context) { + private static @SecureMode int getSecureMode(Context context) { if (GlUtil.isProtectedContentExtensionSupported(context)) { if (GlUtil.isSurfacelessContextExtensionSupported()) { return SECURE_MODE_SURFACELESS_CONTEXT; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java index aded173b2a..acbe0221da 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/MediaCodecVideoRenderer.java @@ -128,7 +128,7 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer { @Nullable private Surface surface; @Nullable private DummySurface dummySurface; private boolean haveReportedFirstFrameRenderedForCurrentSurface; - @C.VideoScalingMode private int scalingMode; + private @C.VideoScalingMode int scalingMode; private boolean renderedFirstFrameAfterReset; private boolean mayRenderFirstFrameAfterEnableIfNotStarted; private boolean renderedFirstFrameAfterEnable; @@ -339,8 +339,7 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer { } @Override - @Capabilities - protected int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) + protected @Capabilities int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) throws DecoderQueryException { String mimeType = format.sampleMimeType; if (!MimeTypes.isVideo(mimeType)) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/VideoFrameReleaseHelper.java b/library/core/src/main/java/com/google/android/exoplayer2/video/VideoFrameReleaseHelper.java index 1875eea81a..ca6c32270d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/VideoFrameReleaseHelper.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/VideoFrameReleaseHelper.java @@ -109,7 +109,7 @@ public final class VideoFrameReleaseHelper { private float surfacePlaybackFrameRate; private float playbackSpeed; - @C.VideoChangeFrameRateStrategy private int changeFrameRateStrategy; + private @C.VideoChangeFrameRateStrategy int changeFrameRateStrategy; private long vsyncDurationNs; private long vsyncOffsetNs; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/CameraMotionRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/CameraMotionRenderer.java index 8d2c801fab..b435ccb125 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/CameraMotionRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/CameraMotionRenderer.java @@ -56,8 +56,7 @@ public final class CameraMotionRenderer extends BaseRenderer { } @Override - @Capabilities - public int supportsFormat(Format format) { + public @Capabilities int supportsFormat(Format format) { return MimeTypes.APPLICATION_CAMERA_MOTION.equals(format.sampleMimeType) ? RendererCapabilities.create(C.FORMAT_HANDLED) : RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/ProjectionDecoder.java b/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/ProjectionDecoder.java index 9f2e1e697e..3f21b36cd7 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/ProjectionDecoder.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/ProjectionDecoder.java @@ -58,7 +58,8 @@ import java.util.zip.Inflater; * @param stereoMode A {@link C.StereoMode} value. * @return The projection or null if the data can't be decoded. */ - public static @Nullable Projection decode(byte[] projectionData, @C.StereoMode int stereoMode) { + @Nullable + public static Projection decode(byte[] projectionData, @C.StereoMode int stereoMode) { ParsableByteArray input = new ParsableByteArray(projectionData); // MP4 containers include the proj box but webm containers do not. // Both containers use mshp. @@ -91,7 +92,8 @@ import java.util.zip.Inflater; return type == TYPE_PROJ; } - private static @Nullable ArrayList parseProj(ParsableByteArray input) { + @Nullable + private static ArrayList parseProj(ParsableByteArray input) { input.skipBytes(8); // size and type. int position = input.getPosition(); int limit = input.limit(); @@ -112,7 +114,8 @@ import java.util.zip.Inflater; return null; } - private static @Nullable ArrayList parseMshp(ParsableByteArray input) { + @Nullable + private static ArrayList parseMshp(ParsableByteArray input) { int version = input.readUnsignedByte(); if (version != 0) { return null; @@ -137,7 +140,8 @@ import java.util.zip.Inflater; } /** Parses MSHP data after the encoding_four_cc field. */ - private static @Nullable ArrayList parseRawMshpData(ParsableByteArray input) { + @Nullable + private static ArrayList parseRawMshpData(ParsableByteArray input) { ArrayList meshes = new ArrayList<>(); int position = input.getPosition(); int limit = input.limit(); @@ -160,7 +164,8 @@ import java.util.zip.Inflater; return meshes; } - private static @Nullable Mesh parseMesh(ParsableByteArray input) { + @Nullable + private static Mesh parseMesh(ParsableByteArray input) { // Read the coordinates. int coordinateCount = input.readInt(); if (coordinateCount > MAX_COORDINATE_COUNT) { diff --git a/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/SceneRenderer.java b/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/SceneRenderer.java index 0fcff23c5e..b84d17176c 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/SceneRenderer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/video/spherical/SceneRenderer.java @@ -50,8 +50,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; private @MonotonicNonNull SurfaceTexture surfaceTexture; // Used by other threads only - @C.StereoMode private volatile int defaultStereoMode; - @C.StereoMode private int lastStereoMode; + private volatile @C.StereoMode int defaultStereoMode; + private @C.StereoMode int lastStereoMode; @Nullable private byte[] lastProjectionData; // Methods called on any thread. diff --git a/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java b/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java index 923311db17..f0ea43b622 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java @@ -11478,7 +11478,7 @@ public final class ExoPlayerTest { private static final class PlayerStateGrabber extends PlayerRunnable { public boolean playWhenReady; - @Player.State public int playbackState; + public @Player.State int playbackState; @Nullable public Timeline timeline; @Override diff --git a/library/core/src/test/java/com/google/android/exoplayer2/audio/DecoderAudioRendererTest.java b/library/core/src/test/java/com/google/android/exoplayer2/audio/DecoderAudioRendererTest.java index 5b0a858678..34a9761318 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/audio/DecoderAudioRendererTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/audio/DecoderAudioRendererTest.java @@ -71,8 +71,7 @@ public class DecoderAudioRendererTest { } @Override - @C.FormatSupport - protected int supportsFormatInternal(Format format) { + protected @C.FormatSupport int supportsFormatInternal(Format format) { return FORMAT_HANDLED; } diff --git a/library/core/src/test/java/com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProviderTest.java b/library/core/src/test/java/com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProviderTest.java index eea49bf5b8..e26a3c9d42 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProviderTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProviderTest.java @@ -44,8 +44,7 @@ public class DefaultAudioTrackBufferSizeProviderTest { public static class PcmTest { @Parameterized.Parameter(0) - @C.PcmEncoding - public int encoding; + public @C.PcmEncoding int encoding; @Parameterized.Parameter(1) public int channelCount; @@ -216,8 +215,7 @@ public class DefaultAudioTrackBufferSizeProviderTest { public static class EncodedTest { @Parameterized.Parameter(0) - @C.Encoding - public int encoding; + public @C.Encoding int encoding; @Parameterized.Parameters(name = "{index}: encoding={0}") public static ImmutableList data() { diff --git a/library/core/src/test/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelectorTest.java b/library/core/src/test/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelectorTest.java index 8eefe2d16a..e56d4bfb49 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelectorTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/trackselection/DefaultTrackSelectorTest.java @@ -2414,7 +2414,7 @@ public final class DefaultTrackSelectorTest { private static final class FakeRendererCapabilities implements RendererCapabilities { private final int trackType; - @Capabilities private final int supportValue; + private final @Capabilities int supportValue; /** * Returns {@link FakeRendererCapabilities} that advertises adaptive support for all tracks of @@ -2454,16 +2454,14 @@ public final class DefaultTrackSelectorTest { } @Override - @Capabilities - public int supportsFormat(Format format) { + public @Capabilities int supportsFormat(Format format) { return MimeTypes.getTrackType(format.sampleMimeType) == trackType ? supportValue : RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @Override - @AdaptiveSupport - public int supportsMixedMimeTypeAdaptation() { + public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() { return ADAPTIVE_SEAMLESS; } } @@ -2502,16 +2500,14 @@ public final class DefaultTrackSelectorTest { } @Override - @Capabilities - public int supportsFormat(Format format) { + public @Capabilities int supportsFormat(Format format) { return format.id != null && formatToCapability.containsKey(format.id) ? formatToCapability.get(format.id) : RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @Override - @AdaptiveSupport - public int supportsMixedMimeTypeAdaptation() { + public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() { return ADAPTIVE_SEAMLESS; } } diff --git a/library/core/src/test/java/com/google/android/exoplayer2/trackselection/MappingTrackSelectorTest.java b/library/core/src/test/java/com/google/android/exoplayer2/trackselection/MappingTrackSelectorTest.java index 64f98549cd..9fa6df7142 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/trackselection/MappingTrackSelectorTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/trackselection/MappingTrackSelectorTest.java @@ -244,8 +244,7 @@ public final class MappingTrackSelectorTest { } @Override - @Capabilities - public int supportsFormat(Format format) throws ExoPlaybackException { + public @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { return MimeTypes.getTrackType(format.sampleMimeType) == trackType ? RendererCapabilities.create( C.FORMAT_HANDLED, ADAPTIVE_SEAMLESS, TUNNELING_NOT_SUPPORTED) @@ -253,8 +252,7 @@ public final class MappingTrackSelectorTest { } @Override - @AdaptiveSupport - public int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { + public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { return ADAPTIVE_SEAMLESS; } } diff --git a/library/core/src/test/java/com/google/android/exoplayer2/video/DecoderVideoRendererTest.java b/library/core/src/test/java/com/google/android/exoplayer2/video/DecoderVideoRendererTest.java index 97a6ccda98..e9ef39fd4f 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/video/DecoderVideoRendererTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/video/DecoderVideoRendererTest.java @@ -84,7 +84,7 @@ public final class DecoderVideoRendererTest { /* maxDroppedFramesToNotify= */ -1) { private final Phaser inputBuffersInCodecPhaser = new Phaser(); - @C.VideoOutputMode private int outputMode; + private @C.VideoOutputMode int outputMode; @Override public String getName() { @@ -92,8 +92,7 @@ public final class DecoderVideoRendererTest { } @Override - @Capabilities - public int supportsFormat(Format format) { + public @Capabilities int supportsFormat(Format format) { return RendererCapabilities.create(C.FORMAT_HANDLED); } diff --git a/library/core/src/test/java/com/google/android/exoplayer2/video/MediaCodecVideoRendererTest.java b/library/core/src/test/java/com/google/android/exoplayer2/video/MediaCodecVideoRendererTest.java index 08816add89..7b49a76223 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/video/MediaCodecVideoRendererTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/video/MediaCodecVideoRendererTest.java @@ -110,8 +110,8 @@ public class MediaCodecVideoRendererTest { /* eventListener= */ eventListener, /* maxDroppedFramesToNotify= */ 1) { @Override - @Capabilities - protected int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) { + protected @Capabilities int supportsFormat( + MediaCodecSelector mediaCodecSelector, Format format) { return RendererCapabilities.create(C.FORMAT_HANDLED); } diff --git a/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DashMediaPeriod.java b/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DashMediaPeriod.java index e5b73087d5..c53684a05b 100644 --- a/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DashMediaPeriod.java +++ b/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DashMediaPeriod.java @@ -937,7 +937,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType; public final int[] adaptationSetIndices; public final @C.TrackType int trackType; - @TrackGroupCategory public final int trackGroupCategory; + public final @TrackGroupCategory int trackGroupCategory; public final int eventStreamGroupIndex; public final int primaryTrackGroupIndex; diff --git a/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.java b/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.java index 86fd8239df..666a19d377 100644 --- a/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.java +++ b/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.java @@ -1479,8 +1479,8 @@ public class DashManifestParser extends DefaultHandler // Selection flag parsing. - @C.SelectionFlags - protected int parseSelectionFlagsFromRoleDescriptors(List roleDescriptors) { + protected @C.SelectionFlags int parseSelectionFlagsFromRoleDescriptors( + List roleDescriptors) { @C.SelectionFlags int result = 0; for (int i = 0; i < roleDescriptors.size(); i++) { Descriptor descriptor = roleDescriptors.get(i); @@ -1491,8 +1491,7 @@ public class DashManifestParser extends DefaultHandler return result; } - @C.SelectionFlags - protected int parseSelectionFlagsFromDashRoleScheme(@Nullable String value) { + protected @C.SelectionFlags int parseSelectionFlagsFromDashRoleScheme(@Nullable String value) { if (value == null) { return 0; } @@ -1508,8 +1507,7 @@ public class DashManifestParser extends DefaultHandler // Role and Accessibility parsing. - @C.RoleFlags - protected int parseRoleFlagsFromRoleDescriptors(List roleDescriptors) { + protected @C.RoleFlags int parseRoleFlagsFromRoleDescriptors(List roleDescriptors) { @C.RoleFlags int result = 0; for (int i = 0; i < roleDescriptors.size(); i++) { Descriptor descriptor = roleDescriptors.get(i); @@ -1520,8 +1518,7 @@ public class DashManifestParser extends DefaultHandler return result; } - @C.RoleFlags - protected int parseRoleFlagsFromAccessibilityDescriptors( + protected @C.RoleFlags int parseRoleFlagsFromAccessibilityDescriptors( List accessibilityDescriptors) { @C.RoleFlags int result = 0; for (int i = 0; i < accessibilityDescriptors.size(); i++) { @@ -1536,8 +1533,8 @@ public class DashManifestParser extends DefaultHandler return result; } - @C.RoleFlags - protected int parseRoleFlagsFromProperties(List accessibilityDescriptors) { + protected @C.RoleFlags int parseRoleFlagsFromProperties( + List accessibilityDescriptors) { @C.RoleFlags int result = 0; for (int i = 0; i < accessibilityDescriptors.size(); i++) { Descriptor descriptor = accessibilityDescriptors.get(i); @@ -1549,8 +1546,7 @@ public class DashManifestParser extends DefaultHandler return result; } - @C.RoleFlags - protected int parseRoleFlagsFromDashRoleScheme(@Nullable String value) { + protected @C.RoleFlags int parseRoleFlagsFromDashRoleScheme(@Nullable String value) { if (value == null) { return 0; } @@ -1585,8 +1581,7 @@ public class DashManifestParser extends DefaultHandler } } - @C.RoleFlags - protected int parseTvaAudioPurposeCsValue(@Nullable String value) { + protected @C.RoleFlags int parseTvaAudioPurposeCsValue(@Nullable String value) { if (value == null) { return 0; } diff --git a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java index 073f0a46a9..1ed9d47dd3 100644 --- a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSourceException.java @@ -55,7 +55,7 @@ public class DataSourceException extends IOException { * The reason of this {@link DataSourceException}, should be one of the {@code ERROR_CODE_IO_*} in * {@link PlaybackException.ErrorCode}. */ - @PlaybackException.ErrorCode public final int reason; + public final @PlaybackException.ErrorCode int reason; /** * Constructs a DataSourceException. diff --git a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java index 46fd495995..287d0185af 100644 --- a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/DataSpec.java @@ -47,13 +47,13 @@ public final class DataSpec { @Nullable private Uri uri; private long uriPositionOffset; - @HttpMethod private int httpMethod; + private @HttpMethod int httpMethod; @Nullable private byte[] httpBody; private Map httpRequestHeaders; private long position; private long length; @Nullable private String key; - @Flags private int flags; + private @Flags int flags; @Nullable private Object customData; /** Creates a new instance with default values. */ @@ -328,7 +328,7 @@ public final class DataSpec { * The HTTP method to use when requesting the data. This value will be ignored by non-HTTP {@link * DataSource} implementations. */ - @HttpMethod public final int httpMethod; + public final @HttpMethod int httpMethod; /** * The HTTP request body, null otherwise. If the body is non-null, then {@code httpBody.length} @@ -380,7 +380,7 @@ public final class DataSpec { @Nullable public final String key; /** Request {@link Flags flags}. */ - @Flags public final int flags; + public final @Flags int flags; /** * Application specific data. diff --git a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java index f7c0847a10..9d7ea30f72 100644 --- a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/HttpDataSource.java @@ -231,7 +231,7 @@ public interface HttpDataSource extends DataSource { /** The {@link DataSpec} associated with the current connection. */ public final DataSpec dataSpec; - @Type public final int type; + public final @Type int type; /** * @deprecated Use {@link #HttpDataSourceException(DataSpec, int, int) @@ -347,8 +347,8 @@ public interface HttpDataSource extends DataSource { this.type = type; } - @PlaybackException.ErrorCode - private static int assignErrorCode(@PlaybackException.ErrorCode int errorCode, @Type int type) { + private static @PlaybackException.ErrorCode int assignErrorCode( + @PlaybackException.ErrorCode int errorCode, @Type int type) { return errorCode == PlaybackException.ERROR_CODE_IO_UNSPECIFIED && type == TYPE_OPEN ? PlaybackException.ERROR_CODE_IO_NETWORK_CONNECTION_FAILED : errorCode; diff --git a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java index 880689f2bd..27388abcd5 100644 --- a/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java +++ b/library/datasource/src/main/java/com/google/android/exoplayer2/upstream/cache/CacheDataSource.java @@ -70,7 +70,7 @@ public final class CacheDataSource implements DataSource { @Nullable private DataSource.Factory upstreamDataSourceFactory; @Nullable private PriorityTaskManager upstreamPriorityTaskManager; private int upstreamPriority; - @CacheDataSource.Flags private int flags; + private @CacheDataSource.Flags int flags; @Nullable private CacheDataSource.EventListener eventListener; public Factory() { diff --git a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/Buffer.java b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/Buffer.java index 71ea215d2c..bf54ce5a70 100644 --- a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/Buffer.java +++ b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/Buffer.java @@ -20,7 +20,7 @@ import com.google.android.exoplayer2.C; /** Base class for buffers with flags. */ public abstract class Buffer { - @C.BufferFlags private int flags; + private @C.BufferFlags int flags; /** Clears the buffer. */ public void clear() { diff --git a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/CryptoInfo.java b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/CryptoInfo.java index f4c57f061c..c80d3aff85 100644 --- a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/CryptoInfo.java +++ b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/CryptoInfo.java @@ -46,7 +46,7 @@ public final class CryptoInfo { * * @see android.media.MediaCodec.CryptoInfo#mode */ - @C.CryptoMode public int mode; + public @C.CryptoMode int mode; /** * The number of leading unencrypted bytes in each sub-sample. If null, all bytes are treated as * encrypted and {@link #numBytesOfEncryptedData} must be specified. diff --git a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/DecoderInputBuffer.java b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/DecoderInputBuffer.java index 4ffa262fa7..7ecd14ff1f 100644 --- a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/DecoderInputBuffer.java +++ b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/DecoderInputBuffer.java @@ -109,7 +109,7 @@ public class DecoderInputBuffer extends Buffer { */ @Nullable public ByteBuffer supplementalData; - @BufferReplacementMode private final int bufferReplacementMode; + private final @BufferReplacementMode int bufferReplacementMode; private final int paddingSize; /** Returns a new instance that's not able to hold any data. */ diff --git a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.java b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.java index fde0a73d8b..80b15db0d3 100644 --- a/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.java +++ b/library/decoder/src/main/java/com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.java @@ -32,7 +32,7 @@ public class VideoDecoderOutputBuffer extends DecoderOutputBuffer { public int decoderPrivate; /** Output mode. */ - @C.VideoOutputMode public int mode; + public @C.VideoOutputMode int mode; /** RGB buffer for RGB mode. */ @Nullable public ByteBuffer data; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/BinarySearchSeeker.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/BinarySearchSeeker.java index 8ebe3b84fb..972af049c7 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/BinarySearchSeeker.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/BinarySearchSeeker.java @@ -421,7 +421,7 @@ public abstract class BinarySearchSeeker { new TimestampSearchResult(TYPE_NO_TIMESTAMP, C.TIME_UNSET, C.POSITION_UNSET); /** The type of the result. */ - @Type private final int type; + private final @Type int type; /** * When {@link #type} is {@link #TYPE_POSITION_OVERESTIMATED}, the {@link diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/DefaultExtractorsFactory.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/DefaultExtractorsFactory.java index a71796cbb8..1c2d3fa37a 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/DefaultExtractorsFactory.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/DefaultExtractorsFactory.java @@ -105,15 +105,15 @@ public final class DefaultExtractorsFactory implements ExtractorsFactory { private boolean constantBitrateSeekingEnabled; private boolean constantBitrateSeekingAlwaysEnabled; - @AdtsExtractor.Flags private int adtsFlags; - @AmrExtractor.Flags private int amrFlags; - @FlacExtractor.Flags private int flacFlags; - @MatroskaExtractor.Flags private int matroskaFlags; - @Mp4Extractor.Flags private int mp4Flags; - @FragmentedMp4Extractor.Flags private int fragmentedMp4Flags; - @Mp3Extractor.Flags private int mp3Flags; - @TsExtractor.Mode private int tsMode; - @DefaultTsPayloadReaderFactory.Flags private int tsFlags; + private @AdtsExtractor.Flags int adtsFlags; + private @AmrExtractor.Flags int amrFlags; + private @FlacExtractor.Flags int flacFlags; + private @MatroskaExtractor.Flags int matroskaFlags; + private @Mp4Extractor.Flags int mp4Flags; + private @FragmentedMp4Extractor.Flags int fragmentedMp4Flags; + private @Mp3Extractor.Flags int mp3Flags; + private @TsExtractor.Mode int tsMode; + private @DefaultTsPayloadReaderFactory.Flags int tsFlags; private int tsTimestampSearchBytes; public DefaultExtractorsFactory() { diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrackOutput.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrackOutput.java index aa505388b4..d1e29d73d6 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrackOutput.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrackOutput.java @@ -38,7 +38,7 @@ public interface TrackOutput { final class CryptoData { /** The encryption mode used for the sample. */ - @C.CryptoMode public final int cryptoMode; + public final @C.CryptoMode int cryptoMode; /** The encryption key associated with the sample. Its contents must not be modified. */ public final byte[] encryptionKey; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrueHdSampleRechunker.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrueHdSampleRechunker.java index f11f237165..1596f7228c 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrueHdSampleRechunker.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/TrueHdSampleRechunker.java @@ -32,7 +32,7 @@ public final class TrueHdSampleRechunker { private boolean foundSyncframe; private int chunkSampleCount; private long chunkTimeUs; - @C.BufferFlags private int chunkFlags; + private @C.BufferFlags int chunkFlags; private int chunkSize; private int chunkOffset; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/jpeg/JpegExtractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/jpeg/JpegExtractor.java index 811956d842..e4a5e8a863 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/jpeg/JpegExtractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/jpeg/JpegExtractor.java @@ -82,7 +82,7 @@ public final class JpegExtractor implements Extractor { private @MonotonicNonNull ExtractorOutput extractorOutput; - @State private int state; + private @State int state; private int marker; private int segmentLength; private long mp4StartPosition; @@ -126,8 +126,8 @@ public final class JpegExtractor implements Extractor { } @Override - @ReadResult - public int read(ExtractorInput input, PositionHolder seekPosition) throws IOException { + public @ReadResult int read(ExtractorInput input, PositionHolder seekPosition) + throws IOException { switch (state) { case STATE_READING_MARKER: readMarker(input); diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.java index ccc017c29c..7933caeb43 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.java @@ -429,7 +429,7 @@ public class MatroskaExtractor implements Extractor { private int[] blockSampleSizes; private int blockTrackNumber; private int blockTrackNumberLength; - @C.BufferFlags private int blockFlags; + private @C.BufferFlags int blockFlags; private int blockAdditionalId; private boolean blockHasReferenceBlock; @@ -529,8 +529,7 @@ public class MatroskaExtractor implements Extractor { * @see EbmlProcessor#getElementType(int) */ @CallSuper - @EbmlProcessor.ElementType - protected int getElementType(int id) { + protected @EbmlProcessor.ElementType int getElementType(int id) { switch (id) { case ID_EBML: case ID_SEGMENT: @@ -1906,8 +1905,7 @@ public class MatroskaExtractor implements Extractor { private final class InnerEbmlProcessor implements EbmlProcessor { @Override - @ElementType - public int getElementType(int id) { + public @ElementType int getElementType(int id) { return MatroskaExtractor.this.getElementType(id); } @@ -1979,16 +1977,16 @@ public class MatroskaExtractor implements Extractor { public int displayWidth = Format.NO_VALUE; public int displayHeight = Format.NO_VALUE; public int displayUnit = DISPLAY_UNIT_PIXELS; - @C.Projection public int projectionType = Format.NO_VALUE; + public @C.Projection int projectionType = Format.NO_VALUE; public float projectionPoseYaw = 0f; public float projectionPosePitch = 0f; public float projectionPoseRoll = 0f; public byte @MonotonicNonNull [] projectionData = null; - @C.StereoMode public int stereoMode = Format.NO_VALUE; + public @C.StereoMode int stereoMode = Format.NO_VALUE; public boolean hasColorInfo = false; - @C.ColorSpace public int colorSpace = Format.NO_VALUE; - @C.ColorTransfer public int colorTransfer = Format.NO_VALUE; - @C.ColorRange public int colorRange = Format.NO_VALUE; + public @C.ColorSpace int colorSpace = Format.NO_VALUE; + public @C.ColorTransfer int colorTransfer = Format.NO_VALUE; + public @C.ColorRange int colorRange = Format.NO_VALUE; public int maxContentLuminance = DEFAULT_MAX_CLL; public int maxFrameAverageLuminance = DEFAULT_MAX_FALL; public float primaryRChromaticityX = Format.NO_VALUE; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java index fb62350aa2..06e3c624c1 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java @@ -140,7 +140,7 @@ public final class Mp3Extractor implements Extractor { private static final int SEEK_HEADER_VBRI = 0x56425249; private static final int SEEK_HEADER_UNSET = 0; - @Flags private final int flags; + private final @Flags int flags; private final long forcedFirstSampleTimestampUs; private final ParsableByteArray scratch; private final MpegAudioUtil.Header synchronizedHeader; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/AtomParsers.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/AtomParsers.java index 442758716a..817f7ab9c8 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/AtomParsers.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/AtomParsers.java @@ -1910,7 +1910,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType; @Nullable public Format format; public int nalUnitLengthFieldLength; - @Track.Transformation public int requiredSampleTransformation; + public @Track.Transformation int requiredSampleTransformation; public StsdData(int numberOfEntries) { trackEncryptionBoxes = new TrackEncryptionBox[numberOfEntries]; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.java index 0c976bf55b..48d439126e 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.java @@ -130,7 +130,7 @@ public class FragmentedMp4Extractor implements Extractor { private static final int STATE_READING_SAMPLE_CONTINUE = 4; // Workarounds. - @Flags private final int flags; + private final @Flags int flags; @Nullable private final Track sideloadedTrack; // Sideloaded data. @@ -1687,8 +1687,7 @@ public class FragmentedMp4Extractor implements Extractor { } /** Returns the {@link C.BufferFlags} corresponding to the current sample. */ - @C.BufferFlags - public int getCurrentSampleFlags() { + public @C.BufferFlags int getCurrentSampleFlags() { int flags = !currentlyInFragment ? moovSampleTable.flags[currentSampleIndex] diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.java index 4731569fca..7b2a90237d 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.java @@ -139,7 +139,7 @@ public final class Mp4Extractor implements Extractor, SeekMap { */ private static final long MAXIMUM_READ_AHEAD_BYTES_STREAM = 10 * 1024 * 1024; - @Flags private final int flags; + private final @Flags int flags; // Temporary arrays. private final ParsableByteArray nalStartCode; @@ -151,7 +151,7 @@ public final class Mp4Extractor implements Extractor, SeekMap { private final SefReader sefReader; private final List slowMotionMetadataEntries; - @State private int parserState; + private @State int parserState; private int atomType; private long atomSize; private int atomHeaderBytesRead; @@ -169,7 +169,7 @@ public final class Mp4Extractor implements Extractor, SeekMap { private long @MonotonicNonNull [][] accumulatedSampleSizes; private int firstVideoTrackIndex; private long durationUs; - @FileType private int fileType; + private @FileType int fileType; @Nullable private MotionPhotoMetadata motionPhotoMetadata; /** Creates a new extractor for unfragmented MP4 streams. */ @@ -436,8 +436,8 @@ public final class Mp4Extractor implements Extractor, SeekMap { return seekRequired && parserState != STATE_READING_SAMPLE; } - @ReadResult - private int readSefData(ExtractorInput input, PositionHolder seekPosition) throws IOException { + private @ReadResult int readSefData(ExtractorInput input, PositionHolder seekPosition) + throws IOException { @ReadResult int result = sefReader.read(input, seekPosition, slowMotionMetadataEntries); if (result == RESULT_SEEK && seekPosition.position == 0) { enterReadingAtomHeaderState(); @@ -859,8 +859,7 @@ public final class Mp4Extractor implements Extractor, SeekMap { * @param atomData The ftyp atom data. * @return The {@link FileType}. */ - @FileType - private static int processFtypAtom(ParsableByteArray atomData) { + private static @FileType int processFtypAtom(ParsableByteArray atomData) { atomData.setPosition(Atom.HEADER_SIZE); int majorBrand = atomData.readInt(); @FileType int fileType = brandToFileType(majorBrand); @@ -877,8 +876,7 @@ public final class Mp4Extractor implements Extractor, SeekMap { return FILE_TYPE_MP4; } - @FileType - private static int brandToFileType(int brand) { + private static @FileType int brandToFileType(int brand) { switch (brand) { case BRAND_QUICKTIME: return FILE_TYPE_QUICKTIME; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/SefReader.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/SefReader.java index b2fcad1f5f..7d89e79f55 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/SefReader.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/SefReader.java @@ -97,7 +97,7 @@ import java.util.List; private static final Splitter ASTERISK_SPLITTER = Splitter.on('*'); private final List dataReferences; - @State private int readerState; + private @State int readerState; private int tailLength; public SefReader() { @@ -110,8 +110,7 @@ import java.util.List; readerState = STATE_SHOULD_CHECK_FOR_SEF; } - @Extractor.ReadResult - public int read( + public @Extractor.ReadResult int read( ExtractorInput input, PositionHolder seekPosition, List slowMotionMetadataEntries) @@ -250,8 +249,7 @@ import java.util.List; return new SlowMotionData(segments); } - @DataType - private static int nameToDataType(String name) throws ParserException { + private static @DataType int nameToDataType(String name) throws ParserException { switch (name) { case "SlowMotion_Data": return TYPE_SLOW_MOTION_DATA; @@ -269,7 +267,7 @@ import java.util.List; } private static final class DataReference { - @DataType public final int dataType; + public final @DataType int dataType; public final long startOffset; public final int size; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Track.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Track.java index eb0427a36a..138c1e3ebf 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Track.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/Track.java @@ -67,7 +67,7 @@ public final class Track { * One of {@code TRANSFORMATION_*}. Defines the transformation to apply before outputting each * sample. */ - @Transformation public final int sampleTransformation; + public final @Transformation int sampleTransformation; /** Durations of edit list segments in the movie timescale. Null if there is no edit list. */ @Nullable public final long[] editListDurations; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/TrackEncryptionBox.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/TrackEncryptionBox.java index aed1bcf48f..f5df9f7db1 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/TrackEncryptionBox.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mp4/TrackEncryptionBox.java @@ -77,8 +77,7 @@ public final class TrackEncryptionBox { schemeToCryptoMode(schemeType), keyId, defaultEncryptedBlocks, defaultClearBlocks); } - @C.CryptoMode - private static int schemeToCryptoMode(@Nullable String schemeType) { + private static @C.CryptoMode int schemeToCryptoMode(@Nullable String schemeType) { if (schemeType == null) { // If unknown, assume cenc. return C.CRYPTO_MODE_AES_CTR; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac3Reader.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac3Reader.java index 61281f3840..2b7d0a1d75 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac3Reader.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac3Reader.java @@ -60,7 +60,7 @@ public final class Ac3Reader implements ElementaryStreamReader { private @MonotonicNonNull String formatId; private @MonotonicNonNull TrackOutput output; - @State private int state; + private @State int state; private int bytesRead; // Used to find the header. diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac4Reader.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac4Reader.java index 639e11d4b7..360057d0af 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac4Reader.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/Ac4Reader.java @@ -58,7 +58,7 @@ public final class Ac4Reader implements ElementaryStreamReader { private @MonotonicNonNull String formatId; private @MonotonicNonNull TrackOutput output; - @State private int state; + private @State int state; private int bytesRead; // Used to find the header. diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/DefaultTsPayloadReaderFactory.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/DefaultTsPayloadReaderFactory.java index 6627a64b83..c59e210547 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/DefaultTsPayloadReaderFactory.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/DefaultTsPayloadReaderFactory.java @@ -102,7 +102,7 @@ public final class DefaultTsPayloadReaderFactory implements TsPayloadReader.Fact private static final int DESCRIPTOR_TAG_CAPTION_SERVICE = 0x86; - @Flags private final int flags; + private final @Flags int flags; private final List closedCaptionFormats; public DefaultTsPayloadReaderFactory() { diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/H263Reader.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/H263Reader.java index 3be6872853..62a68cb42c 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/H263Reader.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/H263Reader.java @@ -333,7 +333,7 @@ public final class H263Reader implements ElementaryStreamReader { private static final int STATE_WAIT_FOR_VOP_START = 4; private boolean isFilling; - @State private int state; + private @State int state; public int length; public int volStartPosition; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java index 9d9d0fc656..970e8e121a 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/ts/TsExtractor.java @@ -116,7 +116,7 @@ public final class TsExtractor implements Extractor { private static final int BUFFER_SIZE = TS_PACKET_SIZE * 50; private static final int SNIFF_TS_PACKET_COUNT = 5; - @Mode private final int mode; + private final @Mode int mode; private final int timestampSearchBytes; private final List timestampAdjusters; private final ParsableByteArray tsPacketBuffer; @@ -296,8 +296,8 @@ public final class TsExtractor implements Extractor { } @Override - @ReadResult - public int read(ExtractorInput input, PositionHolder seekPosition) throws IOException { + public @ReadResult int read(ExtractorInput input, PositionHolder seekPosition) + throws IOException { long inputLength = input.getLength(); if (tracksEnded) { boolean canReadDuration = inputLength != C.LENGTH_UNSET && mode != MODE_HLS; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/wav/WavExtractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/wav/WavExtractor.java index 7d9ba15495..8d64cb0255 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/wav/WavExtractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/wav/WavExtractor.java @@ -120,8 +120,8 @@ public final class WavExtractor implements Extractor { } @Override - @ReadResult - public int read(ExtractorInput input, PositionHolder seekPosition) throws IOException { + public @ReadResult int read(ExtractorInput input, PositionHolder seekPosition) + throws IOException { assertInitialized(); switch (state) { case STATE_READING_FILE_TYPE: @@ -225,8 +225,7 @@ public final class WavExtractor implements Extractor { state = STATE_READING_SAMPLE_DATA; } - @ReadResult - private int readSampleData(ExtractorInput input) throws IOException { + private @ReadResult int readSampleData(ExtractorInput input) throws IOException { Assertions.checkState(dataEndPosition != C.POSITION_UNSET); long bytesLeft = dataEndPosition - input.getPosition(); return Assertions.checkNotNull(outputWriter).sampleData(input, bytesLeft) diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/SubtitleExtractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/SubtitleExtractor.java index 5d86358d77..95447b00d3 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/SubtitleExtractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/SubtitleExtractor.java @@ -84,7 +84,7 @@ public class SubtitleExtractor implements Extractor { private @MonotonicNonNull ExtractorOutput extractorOutput; private @MonotonicNonNull TrackOutput trackOutput; private int bytesRead; - @State private int state; + private @State int state; private long seekTimeUs; /** diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaDecoder.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaDecoder.java index 3f764f9fb2..c6df62bb5f 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaDecoder.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaDecoder.java @@ -407,8 +407,7 @@ public final class SsaDecoder extends SimpleSubtitleDecoder { } } - @Cue.AnchorType - private static int toLineAnchor(@SsaStyle.SsaAlignment int alignment) { + private static @Cue.AnchorType int toLineAnchor(@SsaStyle.SsaAlignment int alignment) { switch (alignment) { case SsaStyle.SSA_ALIGNMENT_BOTTOM_LEFT: case SsaStyle.SSA_ALIGNMENT_BOTTOM_CENTER: @@ -430,8 +429,7 @@ public final class SsaDecoder extends SimpleSubtitleDecoder { } } - @Cue.AnchorType - private static int toPositionAnchor(@SsaStyle.SsaAlignment int alignment) { + private static @Cue.AnchorType int toPositionAnchor(@SsaStyle.SsaAlignment int alignment) { switch (alignment) { case SsaStyle.SSA_ALIGNMENT_BOTTOM_LEFT: case SsaStyle.SSA_ALIGNMENT_MIDDLE_LEFT: diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaStyle.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaStyle.java index ee306b678b..8e09291312 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaStyle.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ssa/SsaStyle.java @@ -93,7 +93,7 @@ import java.util.regex.Pattern; public static final int SSA_ALIGNMENT_TOP_RIGHT = 9; public final String name; - @SsaAlignment public final int alignment; + public final @SsaAlignment int alignment; @Nullable @ColorInt public final Integer primaryColor; public final float fontSize; public final boolean bold; @@ -158,8 +158,7 @@ import java.util.regex.Pattern; } } - @SsaAlignment - private static int parseAlignment(String alignmentStr) { + private static @SsaAlignment int parseAlignment(String alignmentStr) { try { @SsaAlignment int alignment = Integer.parseInt(alignmentStr.trim()); if (isValidAlignment(alignment)) { @@ -373,7 +372,7 @@ import java.util.regex.Pattern; /** Matches "\anx" and returns x in group 1 */ private static final Pattern ALIGNMENT_OVERRIDE_PATTERN = Pattern.compile("\\\\an(\\d+)"); - @SsaAlignment public final int alignment; + public final @SsaAlignment int alignment; @Nullable public final PointF position; private Overrides(@SsaAlignment int alignment, @Nullable PointF position) { @@ -451,8 +450,7 @@ import java.util.regex.Pattern; Float.parseFloat(Assertions.checkNotNull(y).trim())); } - @SsaAlignment - private static int parseAlignmentOverride(String braceContents) { + private static @SsaAlignment int parseAlignmentOverride(String braceContents) { Matcher matcher = ALIGNMENT_OVERRIDE_PATTERN.matcher(braceContents); return matcher.find() ? parseAlignment(Assertions.checkNotNull(matcher.group(1))) diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TextEmphasis.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TextEmphasis.java index 2650bcd0fb..bd0a5a834a 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TextEmphasis.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TextEmphasis.java @@ -97,13 +97,13 @@ import java.util.regex.Pattern; TtmlNode.ANNOTATION_POSITION_OUTSIDE); /** The text emphasis mark shape. */ - @MarkShape public final int markShape; + public final @MarkShape int markShape; /** The fill style of the text emphasis mark. */ - @TextEmphasisSpan.MarkFill public final int markFill; + public final @TextEmphasisSpan.MarkFill int markFill; /** The position of the text emphasis relative to the base text. */ - @Position public final int position; + public final @Position int position; private TextEmphasis( @MarkShape int markShape, diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlRegion.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlRegion.java index 593bfd7761..57b5e1ec3a 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlRegion.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlRegion.java @@ -23,13 +23,13 @@ import com.google.android.exoplayer2.text.Cue; public final String id; public final float position; public final float line; - @Cue.LineType public final int lineType; - @Cue.AnchorType public final int lineAnchor; + public final @Cue.LineType int lineType; + public final @Cue.AnchorType int lineAnchor; public final float width; public final float height; - @Cue.TextSizeType public final int textSizeType; + public final @Cue.TextSizeType int textSizeType; public final float textSize; - @Cue.VerticalType public final int verticalType; + public final @Cue.VerticalType int verticalType; public TtmlRegion(String id) { this( diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlStyle.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlStyle.java index c87c8b6b75..37eabd7d5f 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlStyle.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/ttml/TtmlStyle.java @@ -81,18 +81,18 @@ import java.lang.annotation.Target; private boolean hasFontColor; private int backgroundColor; private boolean hasBackgroundColor; - @OptionalBoolean private int linethrough; - @OptionalBoolean private int underline; - @OptionalBoolean private int bold; - @OptionalBoolean private int italic; - @FontSizeUnit private int fontSizeUnit; + private @OptionalBoolean int linethrough; + private @OptionalBoolean int underline; + private @OptionalBoolean int bold; + private @OptionalBoolean int italic; + private @FontSizeUnit int fontSizeUnit; private float fontSize; @Nullable private String id; - @RubyType private int rubyType; - @TextAnnotation.Position private int rubyPosition; + private @RubyType int rubyType; + private @TextAnnotation.Position int rubyPosition; @Nullable private Layout.Alignment textAlign; @Nullable private Layout.Alignment multiRowAlign; - @OptionalBoolean private int textCombine; + private @OptionalBoolean int textCombine; @Nullable private TextEmphasis textEmphasis; private float shearPercentage; @@ -114,8 +114,7 @@ import java.lang.annotation.Target; * @return {@link #UNSPECIFIED}, {@link #STYLE_NORMAL}, {@link #STYLE_BOLD}, {@link #STYLE_BOLD} * or {@link #STYLE_BOLD_ITALIC}. */ - @StyleFlags - public int getStyle() { + public @StyleFlags int getStyle() { if (bold == UNSPECIFIED && italic == UNSPECIFIED) { return UNSPECIFIED; } @@ -292,8 +291,7 @@ import java.lang.annotation.Target; return this; } - @RubyType - public int getRubyType() { + public @RubyType int getRubyType() { return rubyType; } @@ -302,8 +300,7 @@ import java.lang.annotation.Target; return this; } - @TextAnnotation.Position - public int getRubyPosition() { + public @TextAnnotation.Position int getRubyPosition() { return rubyPosition; } @@ -357,8 +354,7 @@ import java.lang.annotation.Target; return this; } - @FontSizeUnit - public int getFontSizeUnit() { + public @FontSizeUnit int getFontSizeUnit() { return fontSizeUnit; } diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.java index 360018cbc5..d250f0c03b 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.java @@ -95,13 +95,13 @@ public final class WebvttCssStyle { private boolean hasFontColor; private int backgroundColor; private boolean hasBackgroundColor; - @OptionalBoolean private int linethrough; - @OptionalBoolean private int underline; - @OptionalBoolean private int bold; - @OptionalBoolean private int italic; - @FontSizeUnit private int fontSizeUnit; + private @OptionalBoolean int linethrough; + private @OptionalBoolean int underline; + private @OptionalBoolean int bold; + private @OptionalBoolean int italic; + private @FontSizeUnit int fontSizeUnit; private float fontSize; - @TextAnnotation.Position private int rubyPosition; + private @TextAnnotation.Position int rubyPosition; private boolean combineUpright; public WebvttCssStyle() { @@ -184,8 +184,7 @@ public final class WebvttCssStyle { * @return {@link #UNSPECIFIED}, {@link #STYLE_NORMAL}, {@link #STYLE_BOLD}, {@link #STYLE_BOLD} * or {@link #STYLE_BOLD_ITALIC}. */ - @StyleFlags - public int getStyle() { + public @StyleFlags int getStyle() { if (bold == UNSPECIFIED && italic == UNSPECIFIED) { return UNSPECIFIED; } @@ -274,8 +273,7 @@ public final class WebvttCssStyle { return this; } - @FontSizeUnit - public int getFontSizeUnit() { + public @FontSizeUnit int getFontSizeUnit() { return fontSizeUnit; } @@ -288,8 +286,7 @@ public final class WebvttCssStyle { return this; } - @TextAnnotation.Position - public int getRubyPosition() { + public @TextAnnotation.Position int getRubyPosition() { return rubyPosition; } diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCueParser.java b/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCueParser.java index 5b73676b3e..0a726cff8a 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCueParser.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/text/webvtt/WebvttCueParser.java @@ -404,8 +404,7 @@ public final class WebvttCueParser { } } - @Cue.AnchorType - private static int parseLineAnchor(String s) { + private static @Cue.AnchorType int parseLineAnchor(String s) { switch (s) { case "start": return Cue.ANCHOR_TYPE_START; @@ -429,8 +428,7 @@ public final class WebvttCueParser { builder.position = WebvttParserUtil.parsePercentage(s); } - @Cue.AnchorType - private static int parsePositionAnchor(String s) { + private static @Cue.AnchorType int parsePositionAnchor(String s) { switch (s) { case "line-left": case "start": @@ -447,8 +445,7 @@ public final class WebvttCueParser { } } - @Cue.VerticalType - private static int parseVerticalAttribute(String s) { + private static @Cue.VerticalType int parseVerticalAttribute(String s) { switch (s) { case "rl": return Cue.VERTICAL_TYPE_RL; @@ -460,8 +457,7 @@ public final class WebvttCueParser { } } - @TextAlignment - private static int parseTextAlignment(String s) { + private static @TextAlignment int parseTextAlignment(String s) { switch (s) { case "start": return TEXT_ALIGNMENT_START; @@ -609,8 +605,7 @@ public final class WebvttCueParser { } } - @TextAnnotation.Position - private static int getRubyPosition( + private static @TextAnnotation.Position int getRubyPosition( List styles, @Nullable String cueId, StartTag startTag) { List styleMatches = getApplicableStyles(styles, cueId, startTag); for (int i = 0; i < styleMatches.size(); i++) { @@ -622,8 +617,7 @@ public final class WebvttCueParser { return TextAnnotation.POSITION_UNKNOWN; } - @TextAnnotation.Position - private static int firstKnownRubyPosition( + private static @TextAnnotation.Position int firstKnownRubyPosition( @TextAnnotation.Position int position1, @TextAnnotation.Position int position2, @TextAnnotation.Position int position3) { @@ -768,16 +762,16 @@ public final class WebvttCueParser { public long startTimeUs; public long endTimeUs; public @MonotonicNonNull CharSequence text; - @TextAlignment public int textAlignment; + public @TextAlignment int textAlignment; public float line; // Equivalent to WebVTT's snap-to-lines flag: // https://www.w3.org/TR/webvtt1/#webvtt-cue-snap-to-lines-flag - @Cue.LineType public int lineType; - @Cue.AnchorType public int lineAnchor; + public @Cue.LineType int lineType; + public @Cue.AnchorType int lineAnchor; public float position; - @Cue.AnchorType public int positionAnchor; + public @Cue.AnchorType int positionAnchor; public float size; - @Cue.VerticalType public int verticalType; + public @Cue.VerticalType int verticalType; public WebvttCueInfoBuilder() { startTimeUs = 0; @@ -859,8 +853,7 @@ public final class WebvttCueParser { } // https://www.w3.org/TR/webvtt1/#webvtt-cue-position-alignment - @Cue.AnchorType - private static int derivePositionAnchor(@TextAlignment int textAlignment) { + private static @Cue.AnchorType int derivePositionAnchor(@TextAlignment int textAlignment) { switch (textAlignment) { case TEXT_ALIGNMENT_LEFT: case TEXT_ALIGNMENT_START: diff --git a/library/extractor/src/test/java/com/google/android/exoplayer2/extractor/mkv/DefaultEbmlReaderTest.java b/library/extractor/src/test/java/com/google/android/exoplayer2/extractor/mkv/DefaultEbmlReaderTest.java index e1a700f5ed..94b789f2f6 100644 --- a/library/extractor/src/test/java/com/google/android/exoplayer2/extractor/mkv/DefaultEbmlReaderTest.java +++ b/library/extractor/src/test/java/com/google/android/exoplayer2/extractor/mkv/DefaultEbmlReaderTest.java @@ -178,8 +178,7 @@ public class DefaultEbmlReaderTest { private final List events = new ArrayList<>(); @Override - @EbmlProcessor.ElementType - public int getElementType(int id) { + public @EbmlProcessor.ElementType int getElementType(int id) { switch (id) { case ID_EBML: case ID_SEGMENT: diff --git a/library/extractor/src/test/java/com/google/android/exoplayer2/text/ttml/TtmlStyleTest.java b/library/extractor/src/test/java/com/google/android/exoplayer2/text/ttml/TtmlStyleTest.java index 972d7876e2..a40b608dcd 100644 --- a/library/extractor/src/test/java/com/google/android/exoplayer2/text/ttml/TtmlStyleTest.java +++ b/library/extractor/src/test/java/com/google/android/exoplayer2/text/ttml/TtmlStyleTest.java @@ -42,7 +42,7 @@ public final class TtmlStyleTest { private static final String FONT_FAMILY = "serif"; @ColorInt private static final int FONT_COLOR = Color.WHITE; private static final float FONT_SIZE = 12.5f; - @TtmlStyle.FontSizeUnit private static final int FONT_SIZE_UNIT = TtmlStyle.FONT_SIZE_UNIT_EM; + private static final @TtmlStyle.FontSizeUnit int FONT_SIZE_UNIT = TtmlStyle.FONT_SIZE_UNIT_EM; @ColorInt private static final int BACKGROUND_COLOR = Color.BLACK; private static final int RUBY_TYPE = TtmlStyle.RUBY_TYPE_TEXT; private static final int RUBY_POSITION = TextAnnotation.POSITION_AFTER; diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/DefaultHlsExtractorFactory.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/DefaultHlsExtractorFactory.java index ec5510225b..3bf1ae2ff8 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/DefaultHlsExtractorFactory.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/DefaultHlsExtractorFactory.java @@ -60,7 +60,7 @@ public final class DefaultHlsExtractorFactory implements HlsExtractorFactory { FileTypes.MP3, }; - @DefaultTsPayloadReaderFactory.Flags private final int payloadReaderFactoryFlags; + private final @DefaultTsPayloadReaderFactory.Flags int payloadReaderFactoryFlags; private final boolean exposeCea608WhenMissingDeclarations; /** diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java index e02383463b..5d5d398370 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java @@ -303,8 +303,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; * has been {@link #CHUNK_PUBLICATION_STATE_REMOVED removed} or is definitely {@link * #CHUNK_PUBLICATION_STATE_PUBLISHED published}. */ - @ChunkPublicationState - public int getChunkPublicationState(HlsMediaChunk mediaChunk) { + public @ChunkPublicationState int getChunkPublicationState(HlsMediaChunk mediaChunk) { if (mediaChunk.partIndex == C.INDEX_UNSET) { // Chunks based on full segments can't be removed and are always published. return CHUNK_PUBLICATION_STATE_PUBLISHED; diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.java index 44632fd260..9a77f444ea 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.java @@ -396,7 +396,7 @@ public final class HlsMediaPlaylist extends HlsPlaylist { public static final int PLAYLIST_TYPE_EVENT = 2; /** The type of the playlist. See {@link PlaylistType}. */ - @PlaylistType public final int playlistType; + public final @PlaylistType int playlistType; /** * The start offset in microseconds from the beginning of the playlist, as defined by * #EXT-X-START, or {@link C#TIME_UNSET} if undefined. The value is guaranteed to be between 0 and diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java index 3a2680277f..39e5ff627e 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.java @@ -1085,8 +1085,7 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser variableDefinitions) { + private static @C.RoleFlags int parseRoleFlags( + String line, Map variableDefinitions) { String concatenatedCharacteristics = parseOptionalStringAttr(line, REGEX_CHARACTERISTICS, variableDefinitions); if (TextUtils.isEmpty(concatenatedCharacteristics)) { diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspAuthenticationInfo.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspAuthenticationInfo.java index b22645aa3d..526e47cd56 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspAuthenticationInfo.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspAuthenticationInfo.java @@ -54,7 +54,7 @@ import java.security.NoSuchAlgorithmException; private static final String ALGORITHM = "MD5"; /** The authentication mechanism. */ - @AuthenticationMechanism public final int authenticationMechanism; + public final @AuthenticationMechanism int authenticationMechanism; /** The authentication realm. */ public final String realm; /** The nonce used in digest authentication; empty if using {@link #BASIC} authentication. */ diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspClient.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspClient.java index 6141e25b27..5ff812bd82 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspClient.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspClient.java @@ -141,7 +141,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; @Nullable private String sessionId; @Nullable private KeepAliveMonitor keepAliveMonitor; @Nullable private RtspAuthenticationInfo rtspAuthenticationInfo; - @RtspState private int rtspState; + private @RtspState int rtspState; private boolean hasUpdatedTimelineAndTracks; private boolean receivedAuthorizationRequest; private boolean hasPendingPauseRequest; @@ -204,8 +204,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; } /** Returns the current {@link RtspState RTSP state}. */ - @RtspState - public int getState() { + public @RtspState int getState() { return rtspState; } diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMediaPeriod.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMediaPeriod.java index 0f1c94c097..26b589ac24 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMediaPeriod.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMediaPeriod.java @@ -773,8 +773,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; return sampleQueue.isReady(/* loadingFinished= */ canceled); } - @ReadDataResult - public int read( + public @ReadDataResult int read( FormatHolder formatHolder, DecoderInputBuffer buffer, @ReadFlags int readFlags) { return sampleQueue.read(formatHolder, buffer, readFlags, /* loadingFinished= */ canceled); } diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageChannel.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageChannel.java index df587c726d..8aa97986e9 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageChannel.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageChannel.java @@ -351,7 +351,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; private final List messageLines; - @ReadingState private int state; + private @ReadingState int state; private long messageBodyLength; /** Creates a new instance. */ diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageUtil.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageUtil.java index 8f46b43e74..44d7743fe6 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageUtil.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspMessageUtil.java @@ -254,8 +254,7 @@ import java.util.regex.Pattern; } } - @RtspRequest.Method - private static int parseMethodString(String method) { + private static @RtspRequest.Method int parseMethodString(String method) { switch (method) { case "ANNOUNCE": return METHOD_ANNOUNCE; diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspRequest.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspRequest.java index 7e27bc0e6c..7526926565 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspRequest.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/RtspRequest.java @@ -86,7 +86,7 @@ import java.lang.annotation.Target; /** The {@link Uri} to which this request is sent. */ public final Uri uri; /** The request method, as defined in {@link Method}. */ - @Method public final int method; + public final @Method int method; /** The headers of this request. */ public final RtspHeaders headers; /** The body of this RTSP message, or empty string if absent. */ diff --git a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/reader/RtpH264Reader.java b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/reader/RtpH264Reader.java index e29e081918..f56958dbf2 100644 --- a/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/reader/RtpH264Reader.java +++ b/library/rtsp/src/main/java/com/google/android/exoplayer2/source/rtsp/reader/RtpH264Reader.java @@ -58,7 +58,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; private final RtpPayloadFormat payloadFormat; private @MonotonicNonNull TrackOutput trackOutput; - @C.BufferFlags private int bufferFlags; + private @C.BufferFlags int bufferFlags; private long firstReceivedTimestamp; private int previousSequenceNumber; @@ -296,8 +296,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; /* divisor= */ MEDIA_CLOCK_FREQUENCY); } - @C.BufferFlags - private static int getBufferFlagsFromNalType(int nalType) { + private static @C.BufferFlags int getBufferFlagsFromNalType(int nalType) { return nalType == NAL_UNIT_TYPE_IDR ? C.BUFFER_FLAG_KEY_FRAME : 0; } } diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java index bfc30a703b..2a3055bcf2 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Transformer.java @@ -550,7 +550,7 @@ public final class Transformer { @Nullable private MuxerWrapper muxerWrapper; @Nullable private ExoPlayer player; - @ProgressState private int progressState; + private @ProgressState int progressState; private Transformer( Context context, @@ -752,8 +752,7 @@ public final class Transformer { * @return The {@link ProgressState}. * @throws IllegalStateException If this method is called from the wrong thread. */ - @ProgressState - public int getProgress(ProgressHolder progressHolder) { + public @ProgressState int getProgress(ProgressHolder progressHolder) { verifyApplicationThread(); if (progressState == PROGRESS_STATE_AVAILABLE) { Player player = checkNotNull(this.player); diff --git a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerBaseRenderer.java b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerBaseRenderer.java index 80244bc2a7..52e2fe3931 100644 --- a/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerBaseRenderer.java +++ b/library/transformer/src/main/java/com/google/android/exoplayer2/transformer/TransformerBaseRenderer.java @@ -67,8 +67,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; * @return The {@link Capabilities} for this format. */ @Override - @Capabilities - public final int supportsFormat(Format format) { + public final @Capabilities int supportsFormat(Format format) { return RendererCapabilities.create( MimeTypes.getTrackType(format.sampleMimeType) == getTrackType() ? C.FORMAT_HANDLED diff --git a/robolectricutils/src/main/java/com/google/android/exoplayer2/robolectric/TestDownloadManagerListener.java b/robolectricutils/src/main/java/com/google/android/exoplayer2/robolectric/TestDownloadManagerListener.java index 493e95cb09..6028df370e 100644 --- a/robolectricutils/src/main/java/com/google/android/exoplayer2/robolectric/TestDownloadManagerListener.java +++ b/robolectricutils/src/main/java/com/google/android/exoplayer2/robolectric/TestDownloadManagerListener.java @@ -42,7 +42,7 @@ public final class TestDownloadManagerListener implements DownloadManager.Listen private final ConditionVariable initializedCondition; private final ConditionVariable idleCondition; - @Download.FailureReason private int failureReason; + private @Download.FailureReason int failureReason; public TestDownloadManagerListener(DownloadManager downloadManager) { this.downloadManager = downloadManager; diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java index 20fabe37c7..56024d05dc 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java @@ -493,7 +493,7 @@ public abstract class Action { /** Calls {@link Player#setRepeatMode(int)}. */ public static final class SetRepeatMode extends Action { - @Player.RepeatMode private final int repeatMode; + private final @Player.RepeatMode int repeatMode; /** * @param tag A tag to use for logging. @@ -740,7 +740,7 @@ public abstract class Action { @Nullable private final Timeline expectedTimeline; private final boolean ignoreExpectedReason; - @Player.TimelineChangeReason private final int expectedReason; + private final @Player.TimelineChangeReason int expectedReason; /** * Creates action waiting for a timeline change for a given reason. @@ -907,7 +907,7 @@ public abstract class Action { */ public static final class WaitForPlaybackState extends Action { - @Player.State private final int targetPlaybackState; + private final @Player.State int targetPlaybackState; /** * @param tag A tag to use for logging. diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/CapturingAudioSink.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/CapturingAudioSink.java index bf1ffdce0e..80aeeace9d 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/CapturingAudioSink.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/CapturingAudioSink.java @@ -91,7 +91,7 @@ public final class CapturingAudioSink extends ForwardingAudioSink implements Dum private static final class DumpableConfiguration implements Dumper.Dumpable { - @C.PcmEncoding private final int inputPcmEncoding; + private final @C.PcmEncoding int inputPcmEncoding; private final int inputChannelCount; private final int inputSampleRate; diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/DownloadBuilder.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/DownloadBuilder.java index 184b7a11e4..a7e35f2e22 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/DownloadBuilder.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/DownloadBuilder.java @@ -45,7 +45,7 @@ public final class DownloadBuilder { @Nullable private String cacheKey; private byte[] customMetadata; - @Download.State private int state; + private @Download.State int state; private long startTimeMs; private long updateTimeMs; private long contentLength; diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/DumpFileAsserts.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/DumpFileAsserts.java index 707e9c22ae..a4c9d99638 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/DumpFileAsserts.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/DumpFileAsserts.java @@ -70,7 +70,7 @@ public class DumpFileAsserts { /** Write output to folder {@code /storage/emulated/0/Android/data} of device. */ private static final int WRITE_TO_DEVICE = 1 << 1; - @DumpFilesAction private static final int DUMP_FILE_ACTION = COMPARE_WITH_EXISTING; + private static final @DumpFilesAction int DUMP_FILE_ACTION = COMPARE_WITH_EXISTING; private DumpFileAsserts() {} diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeExoMediaDrm.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeExoMediaDrm.java index ed88822831..84bc9a9959 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeExoMediaDrm.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeExoMediaDrm.java @@ -396,8 +396,7 @@ public final class FakeExoMediaDrm implements ExoMediaDrm { } @Override - @C.CryptoType - public int getCryptoType() { + public @C.CryptoType int getCryptoType() { return FakeCryptoConfig.TYPE; } diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeRenderer.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeRenderer.java index 1018207de1..4ef94a62f0 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeRenderer.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeRenderer.java @@ -160,8 +160,7 @@ public class FakeRenderer extends BaseRenderer { } @Override - @Capabilities - public int supportsFormat(Format format) throws ExoPlaybackException { + public @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { int trackType = MimeTypes.getTrackType(format.sampleMimeType); return trackType != C.TRACK_TYPE_UNKNOWN && trackType == getTrackType() ? RendererCapabilities.create(C.FORMAT_HANDLED, ADAPTIVE_SEAMLESS, TUNNELING_NOT_SUPPORTED) diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeSampleStream.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeSampleStream.java index 6ec284b8dc..6bfe1468e0 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeSampleStream.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeSampleStream.java @@ -293,7 +293,7 @@ public class FakeSampleStream implements SampleStream { private static class SampleInfo { public final byte[] data; - @C.BufferFlags public final int flags; + public final @C.BufferFlags int flags; public final long timeUs; public SampleInfo(byte[] data, @C.BufferFlags int flags, long timeUs) { diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/StubPlayer.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/StubPlayer.java index 79f1214810..b1da2a93f2 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/StubPlayer.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/StubPlayer.java @@ -60,14 +60,12 @@ public class StubPlayer extends BasePlayer { } @Override - @State - public int getPlaybackState() { + public @State int getPlaybackState() { throw new UnsupportedOperationException(); } @Override - @PlaybackSuppressionReason - public int getPlaybackSuppressionReason() { + public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { throw new UnsupportedOperationException(); } diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/WebServerDispatcher.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/WebServerDispatcher.java index fa4851441c..a02c482196 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/WebServerDispatcher.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/WebServerDispatcher.java @@ -97,7 +97,7 @@ public class WebServerDispatcher extends Dispatcher { private byte @MonotonicNonNull [] data; private boolean supportsRangeRequests; private boolean resolvesToUnknownLength; - @GzipSupport private int gzipSupport; + private @GzipSupport int gzipSupport; /** Constructs an instance. */ public Builder() { @@ -185,7 +185,7 @@ public class WebServerDispatcher extends Dispatcher { private final byte[] data; private final boolean supportsRangeRequests; private final boolean resolvesToUnknownLength; - @GzipSupport private final int gzipSupport; + private final @GzipSupport int gzipSupport; private Resource( String path, @@ -221,8 +221,7 @@ public class WebServerDispatcher extends Dispatcher { } /** Returns the level of gzip support the server should provide for this resource. */ - @GzipSupport - public int getGzipSupport() { + public @GzipSupport int getGzipSupport() { return gzipSupport; } diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/truth/SpannedSubject.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/truth/SpannedSubject.java index 2e81bff452..7142677c2a 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/truth/SpannedSubject.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/truth/SpannedSubject.java @@ -1113,7 +1113,7 @@ public final class SpannedSubject extends Subject { private static final class TextAndPosition { private final String text; - @TextAnnotation.Position private final int position; + private final @TextAnnotation.Position int position; private TextAndPosition(String text, int position) { this.text = text; @@ -1210,9 +1210,9 @@ public final class SpannedSubject extends Subject { private static final class MarkAndPosition { - @TextEmphasisSpan.MarkShape private final int markShape; - @TextEmphasisSpan.MarkFill private final int markFill; - @TextAnnotation.Position private final int position; + private final @TextEmphasisSpan.MarkShape int markShape; + private final @TextEmphasisSpan.MarkFill int markFill; + private final @TextAnnotation.Position int position; private MarkAndPosition( @TextEmphasisSpan.MarkShape int markShape,