From 5976732c1b5d5c8d2910ba52399ec09b1121660a Mon Sep 17 00:00:00 2001 From: olly Date: Mon, 7 Feb 2022 21:12:44 +0000 Subject: [PATCH] Revert of b19ced30c4c2853b09af3382b86f84c31b3a5af5 PiperOrigin-RevId: 426996878 --- .../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/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 ++--- 174 files changed, 589 insertions(+), 435 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 1514be21a5..63bc16d97e 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; - private volatile @C.VideoOutputMode int outputMode; + @C.VideoOutputMode private volatile 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 df1e6177e8..443f1d1e7c 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,7 +126,8 @@ public class Libgav1VideoRenderer extends DecoderVideoRenderer { } @Override - public final @Capabilities int supportsFormat(Format format) { + @Capabilities + public final 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 40e61c8135..fbe5a31a93 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; - private @Player.State int playbackState; + @Player.State private int playbackState; private int currentWindowIndex; private long lastReportedPositionMs; private int pendingSeekCount; @@ -385,12 +385,14 @@ public final class CastPlayer extends BasePlayer { } @Override - public @Player.State int getPlaybackState() { + @Player.State + public int getPlaybackState() { return playbackState; } @Override - public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { + @PlaybackSuppressionReason + public int getPlaybackSuppressionReason() { return Player.PLAYBACK_SUPPRESSION_REASON_NONE; } @@ -570,7 +572,8 @@ public final class CastPlayer extends BasePlayer { } @Override - public @RepeatMode int getRepeatMode() { + @RepeatMode + public int getRepeatMode() { return repeatMode.value; } @@ -1287,7 +1290,8 @@ public final class CastPlayer extends BasePlayer { * Retrieves the repeat mode from {@code remoteMediaClient} and maps it into a {@link * Player.RepeatMode}. */ - private static @RepeatMode int fetchRepeatMode(RemoteMediaClient remoteMediaClient) { + @RepeatMode + private static 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 6d378dd818..b042c36a10 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; - private final @C.PcmEncoding int encoding; + @C.PcmEncoding private final int encoding; private final int outputBufferSize; private long nativeContext; // May be reassigned on resetting the codec. @@ -158,7 +158,8 @@ import java.util.List; } /** Returns the encoding of output audio. */ - public @C.PcmEncoding int getEncoding() { + @C.PcmEncoding + public 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 4ff8ded2a7..d605706551 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,7 +88,8 @@ public final class FfmpegAudioRenderer extends DecoderAudioRenderer adTagParameters; - public @ContentType int format = C.TYPE_HLS; + @ContentType public 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; - public @ContentType int format = C.TYPE_HLS; + @ContentType public 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 f3034b56f8..18a7854a32 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; - private @Player.State int state; + @Player.State private int state; private boolean playWhenReady; private int periodIndex; private long positionMs; @@ -236,7 +236,8 @@ import com.google.android.exoplayer2.util.Util; } @Override - public @Player.State int getPlaybackState() { + @Player.State + public int getPlaybackState() { return state; } @@ -246,7 +247,8 @@ import com.google.android.exoplayer2.util.Util; } @Override - public @RepeatMode int getRepeatMode() { + @RepeatMode + public 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 388bccce7f..e72f93e800 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,12 +26,13 @@ import com.google.android.exoplayer2.util.RepeatModeUtil; public final class RepeatModeActionProvider implements MediaSessionConnector.CustomActionProvider { /** The default repeat toggle modes. */ - public static final @RepeatModeUtil.RepeatToggleModes int DEFAULT_REPEAT_TOGGLE_MODES = + @RepeatModeUtil.RepeatToggleModes + public static final 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"; - private final @RepeatModeUtil.RepeatToggleModes int repeatToggleModes; + @RepeatModeUtil.RepeatToggleModes private final 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 3fede1188e..1b92708573 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,7 +78,8 @@ public class LibopusAudioRenderer extends DecoderAudioRenderer { } @Override - protected @C.FormatSupport int supportsFormatInternal(Format format) { + @C.FormatSupport + protected 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 43b46d45ad..6edf129ff5 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,7 +124,8 @@ public class LibvpxVideoRenderer extends DecoderVideoRenderer { } @Override - public final @Capabilities int supportsFormat(Format format) { + @Capabilities + public final 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 7728d1f7a5..47b51e37ca 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; - private volatile @C.VideoOutputMode int outputMode; + @C.VideoOutputMode private volatile 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 8b283a391f..4135a5d7c4 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,7 +382,8 @@ public abstract class BasePlayer implements Player { : timeline.getWindow(getCurrentMediaItemIndex(), window).getDurationMs(); } - private @RepeatMode int getRepeatModeForNavigation() { + @RepeatMode + private 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 c41273d57d..c961e5981b 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 @@ -1215,8 +1215,8 @@ public final class C { replacement = "Util.getErrorCodeForMediaDrmErrorCode(mediaDrmErrorCode)", imports = {"com.google.android.exoplayer2.util.Util"}) @Deprecated - public static @PlaybackException.ErrorCode int getErrorCodeForMediaDrmErrorCode( - int mediaDrmErrorCode) { + @PlaybackException.ErrorCode + public static 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 89d0a0c754..7d17a417bb 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; - private @C.StereoMode int stereoMode; + @C.StereoMode private int stereoMode; @Nullable private ColorInfo colorInfo; // Audio specific. private int channelCount; private int sampleRate; - private @C.PcmEncoding int pcmEncoding; + @C.PcmEncoding private int pcmEncoding; private int encoderDelay; private int encoderPadding; @@ -175,7 +175,7 @@ public final class Format implements Bundleable { // Provided by the source. - private @C.CryptoType int cryptoType; + @C.CryptoType private 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}. */ - public final @C.StereoMode int stereoMode; + @C.StereoMode public final 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. */ - public final @C.PcmEncoding int pcmEncoding; + @C.PcmEncoding public final 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. */ - public final @C.CryptoType int cryptoType; + @C.CryptoType public final 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 e14fd322e8..37c248d710 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. - private static final @RatingType int TYPE = RATING_TYPE_HEART; + @RatingType private static final 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 d8b1f30d71..e6b0502fa5 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 private @PictureType Integer artworkDataType; + @Nullable @PictureType private Integer artworkDataType; @Nullable private Uri artworkUri; @Nullable private Integer trackNumber; @Nullable private Integer totalTrackCount; - @Nullable private @FolderType Integer folderType; + @Nullable @FolderType private 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 53521b53a2..3c3451dac5 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. - private static final @RatingType int TYPE = RATING_TYPE_PERCENTAGE; + @RatingType private static final 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 ce136c505d..17a6532a6f 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,7 +686,8 @@ public interface Player { /** A builder for {@link Commands} instances. */ public static final class Builder { - private static final @Command int[] SUPPORTED_COMMANDS = { + @Command + private static final 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 d82055a7ac..0849a20f2d 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. - private static final @RatingType int TYPE = RATING_TYPE_STAR; + @RatingType private static final 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 e77e03bf8d..d460efc9e3 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. - private static final @RatingType int TYPE = RATING_TYPE_THUMB; + @RatingType private static final 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 50bf40032f..830cc3725c 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; - private final @C.FormatSupport int[] trackSupport; + @C.FormatSupport private final int[] trackSupport; private final @C.TrackType int trackType; private final boolean[] trackSelected; @@ -81,7 +81,8 @@ 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. */ - public @C.FormatSupport int getTrackSupport(int trackIndex) { + @C.FormatSupport + public int getTrackSupport(int trackIndex) { return trackSupport[trackIndex]; } @@ -225,7 +226,8 @@ 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 - final @C.FormatSupport int[] trackSupport = + @C.FormatSupport + final 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 6b926b00d2..5c366ef9e2 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,8 +51,7 @@ 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. */ - @Nullable - public static DrmInitData createSessionCreationData( + public static @Nullable 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 27483c1da2..575b80519f 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,7 +204,8 @@ public final class TrackGroup implements Bundleable { return language == null || language.equals(C.LANGUAGE_UNDETERMINED) ? "" : language; } - private static @C.RoleFlags int normalizeRoleFlags(@C.RoleFlags int roleFlags) { + @C.RoleFlags + private static 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 2ef624c30d..7877c71886 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. */ - public final @AdState int[] states; + @AdState public final 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 71949eeb94..cbd260ad4f 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; - private @LineType int lineType; + @LineType private int lineType; private @AnchorType int lineAnchor; private float position; private @AnchorType int positionAnchor; @@ -723,7 +723,8 @@ public final class Cue implements Bundleable { * @see Cue#lineType */ @Pure - public @LineType int getLineType() { + @LineType + public int getLineType() { return lineType; } @@ -743,7 +744,8 @@ public final class Cue implements Bundleable { * @see Cue#lineAnchor */ @Pure - public @AnchorType int getLineAnchor() { + @AnchorType + public int getLineAnchor() { return lineAnchor; } @@ -785,7 +787,8 @@ public final class Cue implements Bundleable { * @see Cue#positionAnchor */ @Pure - public @AnchorType int getPositionAnchor() { + @AnchorType + public int getPositionAnchor() { return positionAnchor; } @@ -807,7 +810,8 @@ public final class Cue implements Bundleable { * @see Cue#textSizeType */ @Pure - public @TextSizeType int getTextSizeType() { + @TextSizeType + public int getTextSizeType() { return textSizeType; } @@ -925,7 +929,8 @@ public final class Cue implements Bundleable { * @see Cue#verticalType */ @Pure - public @VerticalType int getVerticalType() { + @VerticalType + public 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 cc25ce391a..b7df92940d 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. */ - public final @TextAnnotation.Position int position; + @TextAnnotation.Position public final 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 46368d3b81..a273d74c1c 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. */ - public @MarkShape int markShape; + @MarkShape public int markShape; /** The mark fill for the text emphasis mark. */ - public @MarkShape int markFill; + @MarkShape public int markFill; /** The position of the text emphasis relative to the base text. */ - public final @TextAnnotation.Position int position; + @TextAnnotation.Position public final 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 d2f925d718..6bf5d01099 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. */ - public static @FileTypes.Type int inferFileTypeFromResponseHeaders( - Map> responseHeaders) { + @FileTypes.Type + public static int inferFileTypeFromResponseHeaders(Map> responseHeaders) { @Nullable List contentTypes = responseHeaders.get(HEADER_CONTENT_TYPE); @Nullable String mimeType = contentTypes == null || contentTypes.isEmpty() ? null : contentTypes.get(0); @@ -125,7 +125,8 @@ public final class FileTypes { * *

Returns {@link #UNKNOWN} if the mime type is {@code null}. */ - public static @FileTypes.Type int inferFileTypeFromMimeType(@Nullable String mimeType) { + @FileTypes.Type + public static int inferFileTypeFromMimeType(@Nullable String mimeType) { if (mimeType == null) { return FileTypes.UNKNOWN; } @@ -175,7 +176,8 @@ public final class FileTypes { } /** Returns the {@link Type} corresponding to the {@link Uri} provided. */ - public static @FileTypes.Type int inferFileTypeFromUri(Uri uri) { + @FileTypes.Type + public static 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 26cb1d9323..75c1b94566 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,7 +532,8 @@ 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}. */ - public static @C.Encoding int getEncoding(String mimeType, @Nullable String codec) { + @C.Encoding + public static int getEncoding(String mimeType, @Nullable String codec) { switch (mimeType) { case MimeTypes.AUDIO_MPEG: return C.ENCODING_MP3; @@ -703,7 +704,8 @@ public final class MimeTypes { } /** Returns the encoding for {@link #audioObjectTypeIndication}. */ - public @C.Encoding int getEncoding() { + @C.Encoding + public 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 20560d1202..58501d63cc 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,7 +84,8 @@ public final class NetworkTypeObserver { private final Object networkTypeLock; @GuardedBy("networkTypeLock") - private @C.NetworkType int networkType; + @C.NetworkType + private int networkType; /** * Returns a network type observer instance. @@ -130,7 +131,8 @@ public final class NetworkTypeObserver { } /** Returns the current network type. */ - public @C.NetworkType int getNetworkType() { + @C.NetworkType + public int getNetworkType() { synchronized (networkTypeLock) { return networkType; } @@ -161,7 +163,8 @@ public final class NetworkTypeObserver { } } - private static @C.NetworkType int getNetworkTypeFromConnectivityManager(Context context) { + @C.NetworkType + private static int getNetworkTypeFromConnectivityManager(Context context) { NetworkInfo networkInfo; @Nullable ConnectivityManager connectivityManager = @@ -194,7 +197,8 @@ public final class NetworkTypeObserver { } } - private static @C.NetworkType int getMobileNetworkType(NetworkInfo networkInfo) { + @C.NetworkType + private static 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 8bf799ec96..b21b247f76 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,7 +1558,8 @@ 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. */ - public static @C.PcmEncoding int getPcmEncoding(int bitDepth) { + @C.PcmEncoding + public static int getPcmEncoding(int bitDepth) { switch (bitDepth) { case 8: return C.ENCODING_PCM_8BIT; @@ -1668,7 +1669,8 @@ public final class Util { } /** Returns the {@link C.AudioUsage} corresponding to the specified {@link C.StreamType}. */ - public static @C.AudioUsage int getAudioUsageForStreamType(@C.StreamType int streamType) { + @C.AudioUsage + public static int getAudioUsageForStreamType(@C.StreamType int streamType) { switch (streamType) { case C.STREAM_TYPE_ALARM: return C.USAGE_ALARM; @@ -1689,8 +1691,8 @@ public final class Util { } /** Returns the {@link C.AudioContentType} corresponding to the specified {@link C.StreamType}. */ - public static @C.AudioContentType int getAudioContentTypeForStreamType( - @C.StreamType int streamType) { + @C.AudioContentType + public static int getAudioContentTypeForStreamType(@C.StreamType int streamType) { switch (streamType) { case C.STREAM_TYPE_ALARM: case C.STREAM_TYPE_DTMF: @@ -1707,7 +1709,8 @@ public final class Util { } /** Returns the {@link C.StreamType} corresponding to the specified {@link C.AudioUsage}. */ - public static @C.StreamType int getStreamTypeForAudioUsage(@C.AudioUsage int usage) { + @C.StreamType + public static int getStreamTypeForAudioUsage(@C.AudioUsage int usage) { switch (usage) { case C.USAGE_MEDIA: case C.USAGE_GAME: @@ -1757,8 +1760,7 @@ public final class Util { * "clearkey"}. * @return The derived {@link UUID}, or {@code null} if one could not be derived. */ - @Nullable - public static UUID getDrmUuid(String drmScheme) { + public static @Nullable UUID getDrmUuid(String drmScheme) { switch (Ascii.toLowerCase(drmScheme)) { case "widevine": return C.WIDEVINE_UUID; @@ -1780,8 +1782,8 @@ public final class Util { * MediaDrm.ErrorCodes} value. Returns {@link PlaybackException#ERROR_CODE_DRM_SYSTEM_ERROR} if * the provided error code isn't recognised. */ - public static @PlaybackException.ErrorCode int getErrorCodeForMediaDrmErrorCode( - int mediaDrmErrorCode) { + @PlaybackException.ErrorCode + public static int getErrorCodeForMediaDrmErrorCode(int mediaDrmErrorCode) { switch (mediaDrmErrorCode) { case MediaDrm.ErrorCodes.ERROR_PROVISIONING_CONFIG: case MediaDrm.ErrorCodes.ERROR_PROVISIONING_PARSE: @@ -1817,7 +1819,8 @@ public final class Util { * @param overrideExtension If not null, used to infer the type. * @return The content type. */ - public static @ContentType int inferContentType(Uri uri, @Nullable String overrideExtension) { + @ContentType + public static int inferContentType(Uri uri, @Nullable String overrideExtension) { return TextUtils.isEmpty(overrideExtension) ? inferContentType(uri) : inferContentType("." + overrideExtension); @@ -1829,7 +1832,8 @@ public final class Util { * @param uri The {@link Uri}. * @return The content type. */ - public static @ContentType int inferContentType(Uri uri) { + @ContentType + public static int inferContentType(Uri uri) { @Nullable String scheme = uri.getScheme(); if (scheme != null && Ascii.equalsIgnoreCase("rtsp", scheme)) { return C.TYPE_RTSP; @@ -1845,7 +1849,8 @@ public final class Util { * @param fileName Name of the file. It can include the path of the file. * @return The content type. */ - public static @ContentType int inferContentType(String fileName) { + @ContentType + public static int inferContentType(String fileName) { fileName = Ascii.toLowerCase(fileName); if (fileName.endsWith(".mpd")) { return C.TYPE_DASH; @@ -1874,8 +1879,8 @@ public final class Util { * @param mimeType If MIME type, or {@code null}. * @return The content type. */ - public static @ContentType int inferContentTypeForUriAndMimeType( - Uri uri, @Nullable String mimeType) { + @ContentType + public static int inferContentTypeForUriAndMimeType(Uri uri, @Nullable String mimeType) { if (mimeType == null) { return Util.inferContentType(uri); } @@ -2025,8 +2030,7 @@ public final class Util { * @return The original value of the file name before it was escaped, or null if the escaped * fileName seems invalid. */ - @Nullable - public static String unescapeFileName(String fileName) { + public static @Nullable 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 5aa002bdd6..9b291f6f85 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,8 +92,7 @@ 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. */ - @Nullable - public static String getAttributeValue(XmlPullParser xpp, String attributeName) { + public static @Nullable String getAttributeValue(XmlPullParser xpp, String attributeName) { int attributeCount = xpp.getAttributeCount(); for (int i = 0; i < attributeCount; i++) { if (xpp.getAttributeName(i).equals(attributeName)) { @@ -112,8 +111,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. */ - @Nullable - public static String getAttributeValueIgnorePrefix(XmlPullParser xpp, String attributeName) { + public static @Nullable 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 a4e998bb68..8ca9121dbf 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,7 +39,8 @@ public final class ColorInfo implements Bundleable { * made. */ @Pure - public static @C.ColorSpace int isoColorPrimariesToColorSpace(int isoColorPrimaries) { + @C.ColorSpace + public static int isoColorPrimariesToColorSpace(int isoColorPrimaries) { switch (isoColorPrimaries) { case 1: return C.COLOR_SPACE_BT709; @@ -61,8 +62,8 @@ public final class ColorInfo implements Bundleable { * mapping can be made. */ @Pure - public static @C.ColorTransfer int isoTransferCharacteristicsToColorTransfer( - int isoTransferCharacteristics) { + @C.ColorTransfer + public static int isoTransferCharacteristicsToColorTransfer(int isoTransferCharacteristics) { switch (isoTransferCharacteristics) { case 1: // BT.709. case 6: // SMPTE 170M. @@ -81,20 +82,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. */ - public final @C.ColorSpace int colorSpace; + @C.ColorSpace public final 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. */ - public final @C.ColorRange int colorRange; + @C.ColorRange public final 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. */ - public final @C.ColorTransfer int colorTransfer; + @C.ColorTransfer public final 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 a36e2715e1..792492dc4a 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 { - private @C.StreamType int lastStreamType; + @C.StreamType private 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 be8607b04d..0510193b06 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; - private @AudioFocusState int audioFocusState; + @AudioFocusState private 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. */ - public @PlayerCommand int updateAudioFocus( - boolean playWhenReady, @Player.State int playbackState) { + @PlayerCommand + public 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,7 +220,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; return playbackState == Player.STATE_IDLE || focusGainToRequest != AUDIOFOCUS_GAIN; } - private @PlayerCommand int requestAudioFocus() { + @PlayerCommand + private 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 73a145a2fe..ac35a5148a 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,7 +196,8 @@ public abstract class BaseRenderer implements Renderer, RendererCapabilities { // RendererCapabilities implementation. @Override - public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { + @AdaptiveSupport + public int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { return ADAPTIVE_NOT_SUPPORTED; } @@ -419,7 +420,8 @@ 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. */ - protected final @ReadDataResult int readSource( + @ReadDataResult + protected final 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 7751edaea5..034e593ad7 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; - private @ExtensionRendererMode int extensionRendererMode; + @ExtensionRendererMode private 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 c12843aadb..936f2e8e97 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. */ - public final @Type int type; + @Type public final 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}. */ - public final @FormatSupport int rendererFormatSupport; + @FormatSupport public final 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 0a2bafa858..47ec445f1c 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 @@ -203,12 +203,12 @@ import java.util.concurrent.TimeoutException; private final WifiLockManager wifiLockManager; private final long detachSurfaceTimeoutMs; - private @RepeatMode int repeatMode; + @RepeatMode private int repeatMode; private boolean shuffleModeEnabled; private int pendingOperationAcks; - private @DiscontinuityReason int pendingDiscontinuityReason; + @DiscontinuityReason private int pendingDiscontinuityReason; private boolean pendingDiscontinuity; - private @PlayWhenReadyChangeReason int pendingPlayWhenReadyChangeReason; + @PlayWhenReadyChangeReason private int pendingPlayWhenReadyChangeReason; private boolean foregroundMode; private SeekParameters seekParameters; private ShuffleOrder shuffleOrder; @@ -225,8 +225,8 @@ import java.util.concurrent.TimeoutException; @Nullable private SphericalGLSurfaceView sphericalGLSurfaceView; private boolean surfaceHolderSurfaceIsVideoOutput; @Nullable private TextureView textureView; - private @C.VideoScalingMode int videoScalingMode; - private @C.VideoChangeFrameRateStrategy int videoChangeFrameRateStrategy; + @C.VideoScalingMode private int videoScalingMode; + @C.VideoChangeFrameRateStrategy private int videoChangeFrameRateStrategy; private int surfaceWidth; private int surfaceHeight; @Nullable private DecoderCounters videoDecoderCounters; @@ -498,12 +498,14 @@ import java.util.concurrent.TimeoutException; return availableCommands; } - public @State int getPlaybackState() { + @State + public int getPlaybackState() { verifyApplicationThread(); return playbackInfo.playbackState; } - public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { + @PlaybackSuppressionReason + public int getPlaybackSuppressionReason() { verifyApplicationThread(); return playbackInfo.playbackSuppressionReason; } @@ -795,7 +797,8 @@ import java.util.concurrent.TimeoutException; } } - public @RepeatMode int getRepeatMode() { + @RepeatMode + public int getRepeatMode() { verifyApplicationThread(); return repeatMode; } @@ -1251,7 +1254,8 @@ import java.util.concurrent.TimeoutException; sendRendererMessage(TRACK_TYPE_VIDEO, MSG_SET_SCALING_MODE, videoScalingMode); } - public @C.VideoScalingMode int getVideoScalingMode() { + @C.VideoScalingMode + public int getVideoScalingMode() { return videoScalingMode; } @@ -1266,7 +1270,8 @@ import java.util.concurrent.TimeoutException; TRACK_TYPE_VIDEO, MSG_SET_CHANGE_FRAME_RATE_STRATEGY, videoChangeFrameRateStrategy); } - public @C.VideoChangeFrameRateStrategy int getVideoChangeFrameRateStrategy() { + @C.VideoChangeFrameRateStrategy + public int getVideoChangeFrameRateStrategy() { return videoChangeFrameRateStrategy; } @@ -2946,13 +2951,15 @@ import java.util.concurrent.TimeoutException; private static final class FrameMetadataListener implements VideoFrameMetadataListener, CameraMotionListener, PlayerMessage.Target { - public static final @MessageType int MSG_SET_VIDEO_FRAME_METADATA_LISTENER = + @MessageType + public static final int MSG_SET_VIDEO_FRAME_METADATA_LISTENER = Renderer.MSG_SET_VIDEO_FRAME_METADATA_LISTENER; - public static final @MessageType int MSG_SET_CAMERA_MOTION_LISTENER = + @MessageType + public static final int MSG_SET_CAMERA_MOTION_LISTENER = Renderer.MSG_SET_CAMERA_MOTION_LISTENER; - public static final @MessageType int MSG_SET_SPHERICAL_SURFACE_VIEW = Renderer.MSG_CUSTOM_BASE; + @MessageType public static final 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 c7fc668676..c893d49864 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; - public @DiscontinuityReason int discontinuityReason; + @DiscontinuityReason public int discontinuityReason; public boolean hasPlayWhenReadyChangeReason; - public @PlayWhenReadyChangeReason int playWhenReadyChangeReason; + @PlayWhenReadyChangeReason public 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; - private @Player.RepeatMode int repeatMode; + @Player.RepeatMode private int repeatMode; private boolean shuffleModeEnabled; private boolean foregroundMode; private boolean requestForRendererSleep; @@ -2935,8 +2935,7 @@ 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 */ @Nullable - static Object resolveSubsequentPeriod( + /* package */ static @Nullable 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 c51a656793..080b00002e 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. */ - public final @TimeoutOperation int timeoutOperation; + @TimeoutOperation public final 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 481e1e24d6..9be14c71b1 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,12 +166,14 @@ public abstract class NoSampleRenderer implements Renderer, RendererCapabilities // RendererCapabilities implementation. @Override - public @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { + @Capabilities + public int supportsFormat(Format format) throws ExoPlaybackException { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @Override - public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { + @AdaptiveSupport + public 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 d8295eb8ec..e525b5130d 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. */ - public final @Player.State int playbackState; + @Player.State public final 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}. */ - public final @PlaybackSuppressionReason int playbackSuppressionReason; + @PlaybackSuppressionReason public final 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 3c1f1dfe6b..1b6d6d03b6 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,7 +187,8 @@ public interface RendererCapabilities { * @return The combined {@link Capabilities} of the given {@link C.FormatSupport}, {@link * #ADAPTIVE_NOT_SUPPORTED} and {@link #TUNNELING_NOT_SUPPORTED}. */ - static @Capabilities int create(@C.FormatSupport int formatSupport) { + @Capabilities + static int create(@C.FormatSupport int formatSupport) { return create(formatSupport, ADAPTIVE_NOT_SUPPORTED, TUNNELING_NOT_SUPPORTED); } @@ -203,7 +204,8 @@ public interface RendererCapabilities { * @param tunnelingSupport The {@link TunnelingSupport}. * @return The combined {@link Capabilities}. */ - static @Capabilities int create( + @Capabilities + static int create( @C.FormatSupport int formatSupport, @AdaptiveSupport int adaptiveSupport, @TunnelingSupport int tunnelingSupport) { @@ -229,7 +231,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - static @Capabilities int create( + @Capabilities + static int create( @C.FormatSupport int formatSupport, @AdaptiveSupport int adaptiveSupport, @TunnelingSupport int tunnelingSupport, @@ -250,7 +253,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - static @C.FormatSupport int getFormatSupport(@Capabilities int supportFlags) { + @C.FormatSupport + static int getFormatSupport(@Capabilities int supportFlags) { return supportFlags & FORMAT_SUPPORT_MASK; } @@ -262,7 +266,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - static @AdaptiveSupport int getAdaptiveSupport(@Capabilities int supportFlags) { + @AdaptiveSupport + static int getAdaptiveSupport(@Capabilities int supportFlags) { return supportFlags & ADAPTIVE_SUPPORT_MASK; } @@ -274,7 +279,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - static @TunnelingSupport int getTunnelingSupport(@Capabilities int supportFlags) { + @TunnelingSupport + static int getTunnelingSupport(@Capabilities int supportFlags) { return supportFlags & TUNNELING_SUPPORT_MASK; } @@ -286,8 +292,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - static @HardwareAccelerationSupport int getHardwareAccelerationSupport( - @Capabilities int supportFlags) { + @HardwareAccelerationSupport + static int getHardwareAccelerationSupport(@Capabilities int supportFlags) { return supportFlags & HARDWARE_ACCELERATION_SUPPORT_MASK; } @@ -299,7 +305,8 @@ public interface RendererCapabilities { */ // Suppression needed for IntDef casting. @SuppressLint("WrongConstant") - static @DecoderSupport int getDecoderSupport(@Capabilities int supportFlags) { + @DecoderSupport + static 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 32fd2a0aea..a244389d98 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 @@ -387,7 +387,8 @@ public class SimpleExoPlayer extends BasePlayer } @Override - public @C.VideoScalingMode int getVideoScalingMode() { + @C.VideoScalingMode + public int getVideoScalingMode() { return player.getVideoScalingMode(); } @@ -398,7 +399,8 @@ public class SimpleExoPlayer extends BasePlayer } @Override - public @C.VideoChangeFrameRateStrategy int getVideoChangeFrameRateStrategy() { + @C.VideoChangeFrameRateStrategy + public int getVideoChangeFrameRateStrategy() { return player.getVideoChangeFrameRateStrategy(); } @@ -626,12 +628,14 @@ public class SimpleExoPlayer extends BasePlayer } @Override - public @State int getPlaybackState() { + @State + public int getPlaybackState() { return player.getPlaybackState(); } @Override - public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { + @PlaybackSuppressionReason + public int getPlaybackSuppressionReason() { 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 19b9f5c666..fe7f8c0f40 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; - private @C.StreamType int streamType; + @C.StreamType private 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 7ce368350b..f4470595c3 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,7 +148,8 @@ 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. */ - public @EventFlags int get(int index) { + @EventFlags + public 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 2c4ad1a8d7..29ea1322bd 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; - private @Player.DiscontinuityReason int discontinuityReason; + @Player.DiscontinuityReason private 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; - public final @C.SelectionReason int selectionReason; + @C.SelectionReason public final 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 aacc929b26..868bfb617c 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; - private @Player.DiscontinuityReason int discontinuityReason; + @Player.DiscontinuityReason private 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 fa2b0ab472..ba160ee9bc 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. */ - public final @C.PcmEncoding int encoding; + @C.PcmEncoding public final 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 53e9d50d90..20a87e6a9e 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; - private @ReinitializationState int decoderReinitializationState; + @ReinitializationState private int decoderReinitializationState; private boolean decoderReceivedBuffers; private boolean audioTrackNeedsConfigure; @@ -224,7 +224,8 @@ public abstract class DecoderAudioRenderer< } @Override - public final @Capabilities int supportsFormat(Format format) { + @Capabilities + public final int supportsFormat(Format format) { if (!MimeTypes.isAudio(format.sampleMimeType)) { return RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @@ -243,7 +244,8 @@ public abstract class DecoderAudioRenderer< * @param format The format, which has an audio {@link Format#sampleMimeType}. * @return The {@link C.FormatSupport} for this {@link Format}. */ - protected abstract @C.FormatSupport int supportsFormatInternal(Format format); + @C.FormatSupport + protected abstract int supportsFormatInternal(Format format); /** * Returns whether the renderer's {@link AudioSink} supports a given {@link Format}. @@ -260,7 +262,8 @@ public abstract class DecoderAudioRenderer< * * @see AudioSink#getFormatSupport(Format) (Format) */ - protected final @SinkFormatSupport int getSinkFormatSupport(Format format) { + @SinkFormatSupport + protected final 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 72b4b9da9c..8807031698 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; - private final @OffloadMode int offloadMode; - private @MonotonicNonNull StreamEventCallbackV29 offloadStreamEventCallbackV29; + @OffloadMode private final int offloadMode; + @MonotonicNonNull private 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; - private @MonotonicNonNull Configuration configuration; + @MonotonicNonNull private 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; - private @MonotonicNonNull byte[] preV21OutputBuffer; + @MonotonicNonNull private byte[] preV21OutputBuffer; private int preV21OutputBufferOffset; private int drainingAudioProcessorIndex; private boolean handledEndOfStream; @@ -652,7 +652,8 @@ public final class DefaultAudioSink implements AudioSink { } @Override - public @SinkFormatSupport int getFormatSupport(Format format) { + @SinkFormatSupport + public int getFormatSupport(Format format) { if (MimeTypes.AUDIO_RAW.equals(format.sampleMimeType)) { if (!Util.isEncodingLinearPcm(format.pcmEncoding)) { Log.w(TAG, "Invalid PCM encoding: " + format.pcmEncoding); @@ -2126,11 +2127,11 @@ public final class DefaultAudioSink implements AudioSink { public final Format inputFormat; public final int inputPcmFrameSize; - public final @OutputMode int outputMode; + @OutputMode public final int outputMode; public final int outputPcmFrameSize; public final int outputSampleRate; public final int outputChannelConfig; - public final @C.Encoding int outputEncoding; + @C.Encoding public final 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 e8e5edd1cd..ea248840de 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,7 +46,8 @@ public class ForwardingAudioSink implements AudioSink { } @Override - public @SinkFormatSupport int getFormatSupport(Format format) { + @SinkFormatSupport + public 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 acdadac344..8275c6dbcb 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,7 +282,8 @@ public class MediaCodecAudioRenderer extends MediaCodecRenderer implements Media } @Override - protected @Capabilities int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) + @Capabilities + protected 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 2ad3308b6b..cae3c00a00 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; - private @State int state; + @State private 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 57ffc46972..6b5adab946 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,7 +129,8 @@ import java.util.concurrent.Executor; } /** Delegates to Spatializer.getImmersiveAudioLevel() */ - public @ImmersiveAudioLevel int getImmersiveAudioLevel() { + @ImmersiveAudioLevel + public 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 1a82c88bee..17eb8ed381 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; - private @C.PcmEncoding int encoding; + @C.PcmEncoding private 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 5b0d984099..019c541f6d 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 { - private static final @C.PcmEncoding int OUTPUT_ENCODING = C.ENCODING_PCM_16BIT; + @C.PcmEncoding private static final 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 19170bd91d..560dfb78a7 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. */ - public final @DecoderReuseResult int result; + @DecoderReuseResult public final 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. */ - public final @DecoderDiscardReasons int discardReasons; + @DecoderDiscardReasons public final 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 4e2db30ac5..43c91d0f30 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,7 +254,8 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; // DrmSession implementation. @Override - public final @DrmSession.State int getState() { + @DrmSession.State + public final 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 22f2d3f5c7..4c50748e89 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 */ @Nullable volatile MediaDrmHandler mediaDrmHandler; + /* package */ volatile @Nullable MediaDrmHandler mediaDrmHandler; /** * @param uuid The UUID of the drm scheme. @@ -587,7 +587,8 @@ public class DefaultDrmSessionManager implements DrmSessionManager { } @Override - public @C.CryptoType int getCryptoType(Format format) { + @C.CryptoType + public 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 09b695a4cb..72ebf7dfb3 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. */ - public final @PlaybackException.ErrorCode int errorCode; + @PlaybackException.ErrorCode public final 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 53dcbded55..1b5ba9d0d0 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,7 +64,8 @@ public interface DrmSessionManager { } @Override - public @C.CryptoType int getCryptoType(Format format) { + @C.CryptoType + public 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 9e8b165899..7d52273d59 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,7 +70,8 @@ public final class DrmUtil { * @return The {@link PlaybackException.ErrorCode} that corresponds to the given DRM-related * exception. */ - public static @PlaybackException.ErrorCode int getErrorCodeForMediaDrmException( + @PlaybackException.ErrorCode + public static int getErrorCodeForMediaDrmException( Exception exception, @ErrorSource int errorSource) { if (Util.SDK_INT >= 21 && Api21.isMediaDrmStateException(exception)) { return Api21.mediaDrmStateExceptionToErrorCode(exception); @@ -125,8 +126,8 @@ public final class DrmUtil { } @DoNotInline - public static @PlaybackException.ErrorCode int mediaDrmStateExceptionToErrorCode( - Throwable throwable) { + @PlaybackException.ErrorCode + public static 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 444a72700e..796ea15169 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,7 +150,8 @@ public final class DummyExoMediaDrm implements ExoMediaDrm { } @Override - public @C.CryptoType int getCryptoType() { + @C.CryptoType + public 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 6981e88b8e..45b7885569 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; - private final @RequestType int requestType; + @RequestType private final int requestType; /** * Creates an instance with {@link #REQUEST_TYPE_UNKNOWN}. @@ -305,7 +305,8 @@ 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. */ - public @RequestType int getRequestType() { + @RequestType + public 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 69ad0f4277..2d02921c98 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,7 +339,8 @@ public final class FrameworkMediaDrm implements ExoMediaDrm { } @Override - public @C.CryptoType int getCryptoType() { + @C.CryptoType + public 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 e726bc5259..99412cd0ac 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}. */ - public final @Reason int reason; + @Reason public final 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 9db314e502..2af6a5cd1b 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,8 +37,7 @@ 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. */ - @Nullable - public static Pair getLicenseDurationRemainingSec(DrmSession drmSession) { + public static @Nullable 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 2154737c75..b5d814eeb7 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; - private @State int state; + @State private 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 9807a50c09..411d10ff53 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"; - private @Mode int asynchronousMode; + @Mode private 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 8c5b081b51..71a2108b59 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; - private @AdaptationWorkaroundMode int codecAdaptationWorkaroundMode; + @AdaptationWorkaroundMode private 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; - private @ReconfigurationState int codecReconfigurationState; - private @DrainState int codecDrainState; - private @DrainAction int codecDrainAction; + @ReconfigurationState private int codecReconfigurationState; + @DrainState private int codecDrainState; + @DrainAction private int codecDrainAction; private boolean codecReceivedBuffers; private boolean codecReceivedEos; private boolean codecHasOutputMediaFormat; @@ -435,12 +435,14 @@ public abstract class MediaCodecRenderer extends BaseRenderer { } @Override - public final @AdaptiveSupport int supportsMixedMimeTypeAdaptation() { + @AdaptiveSupport + public final int supportsMixedMimeTypeAdaptation() { return ADAPTIVE_NOT_SEAMLESS; } @Override - public final @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { + @Capabilities + public final int supportsFormat(Format format) throws ExoPlaybackException { try { return supportsFormat(mediaCodecSelector, format); } catch (DecoderQueryException e) { @@ -456,8 +458,9 @@ public abstract class MediaCodecRenderer extends BaseRenderer { * @return The {@link Capabilities} for this {@link Format}. * @throws DecoderQueryException If there was an error querying decoders. */ - protected abstract @Capabilities int supportsFormat( - MediaCodecSelector mediaCodecSelector, Format format) throws DecoderQueryException; + @Capabilities + protected abstract 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 4e9d0d3e61..491bb59939 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,7 +89,8 @@ public final class MetadataRenderer extends BaseRenderer implements Callback { } @Override - public @Capabilities int supportsFormat(Format format) { + @Capabilities + public 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 62d4d57814..5b2cc7d3ec 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. */ - public final @State int state; + @State public final 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}. */ - public final @FailureReason int failureReason; + @FailureReason public final 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 aeb04423d5..3348163046 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,7 +1097,8 @@ public final class DownloadHelper { } @Override - public @C.SelectionReason int getSelectionReason() { + @C.SelectionReason + public 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 4078ae4f41..e957a39fc7 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,7 +349,8 @@ public final class DownloadManager { * * @return The not met {@link Requirements.RequirementFlags}, or 0 if all requirements are met. */ - public @Requirements.RequirementFlags int getNotMetRequirements() { + @Requirements.RequirementFlags + public int getNotMetRequirements() { return notMetRequirements; } @@ -702,7 +703,7 @@ public final class DownloadManager { private final ArrayList downloads; private final HashMap activeTasks; - private @Requirements.RequirementFlags int notMetRequirements; + @Requirements.RequirementFlags private 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 db2df6cf10..84e250681f 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; - private final @RequirementFlags int requirements; + @RequirementFlags private final int requirements; /** @param requirements A combination of requirement flags. */ public Requirements(@RequirementFlags int requirements) { @@ -84,7 +84,8 @@ public final class Requirements implements Parcelable { } /** Returns the requirements. */ - public @RequirementFlags int getRequirements() { + @RequirementFlags + public int getRequirements() { return requirements; } @@ -141,7 +142,8 @@ public final class Requirements implements Parcelable { * @param context Any context. * @return The requirements that are not met, or 0. */ - public @RequirementFlags int getNotMetRequirements(Context context) { + @RequirementFlags + public int getNotMetRequirements(Context context) { @RequirementFlags int notMetRequirements = getNotMetNetworkRequirements(context); if (isChargingRequired() && !isDeviceCharging(context)) { notMetRequirements |= DEVICE_CHARGING; @@ -155,7 +157,8 @@ public final class Requirements implements Parcelable { return notMetRequirements; } - private @RequirementFlags int getNotMetNetworkRequirements(Context context) { + @RequirementFlags + private 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 5e4630c31c..6293cbf36d 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; - private @Requirements.RequirementFlags int notMetRequirements; + @Requirements.RequirementFlags private int notMetRequirements; @Nullable private NetworkCallback networkCallback; /** @@ -81,7 +81,8 @@ public final class RequirementsWatcher { * * @return Initial {@link Requirements.RequirementFlags RequirementFlags} that are not met, or 0. */ - public @Requirements.RequirementFlags int start() { + @Requirements.RequirementFlags + public 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 80ba959f5d..b23eb29c2a 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. */ - public final @Reason int reason; + @Reason public final 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 a52cbee997..42a89b7749 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,7 +456,8 @@ public final class DefaultMediaSourceFactory implements MediaSourceFactory { mediaSourceFactories = new HashMap<>(); } - public @C.ContentType int[] getSupportedTypes() { + @C.ContentType + public 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 7ff7d234fa..5161c29d60 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}. */ - public final @DataType int dataType; + @DataType public final 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 411440a090..04e7712608 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,7 +44,8 @@ public interface MediaSourceFactory extends MediaSource.Factory { } @Override - public @C.ContentType int[] getSupportedTypes() { + @C.ContentType + public 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 c4988a480d..601ab327cd 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. */ - public final @Reason int reason; + @Reason public final 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 5b5d73b3d2..4d3cb5b49b 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; - private @DataType int dataType; + @DataType private 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 fd09de97d8..41df5c6891 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; - private static final @C.PcmEncoding int PCM_ENCODING = C.ENCODING_PCM_16BIT; + @C.PcmEncoding private static final 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 cc9118c71f..7d5ddd2c55 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,7 +844,8 @@ public final class ServerSideAdInsertionMediaSource extends BaseMediaSource return positionUs; } - public @SampleStream.ReadDataResult int readData( + @SampleStream.ReadDataResult + public int readData( MediaPeriodImpl mediaPeriod, int streamIndex, FormatHolder formatHolder, @@ -1200,7 +1201,8 @@ public final class ServerSideAdInsertionMediaSource extends BaseMediaSource } @Override - public @ReadDataResult int readData( + @ReadDataResult + public 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 43fde00f8a..c0ee8c5aaa 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. */ - public final @DataType int type; + @DataType public final 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. */ - public final @C.SelectionReason int trackSelectionReason; + @C.SelectionReason public final 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 cf8f84e876..df37dc92f4 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,7 +538,8 @@ public final class OutputConsumerAdapterV30 implements MediaParser.OutputConsume return new DrmInitData(schemeType, schemeDatas); } - private static @SelectionFlags int getSelectionFlags(MediaFormat mediaFormat) { + @SelectionFlags + private static 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 937bb52287..ed085b0098 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; - private @InputBufferState int inputBufferState; + @InputBufferState private 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 887174d90b..d68e0a307f 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; - private @ReplacementState int decoderReplacementState; + @ReplacementState private int decoderReplacementState; @Nullable private Format streamFormat; @Nullable private SubtitleDecoder decoder; @Nullable private SubtitleInputBuffer nextInputBuffer; @@ -133,7 +133,8 @@ public final class TextRenderer extends BaseRenderer implements Callback { } @Override - public @Capabilities int supportsFormat(Format format) { + @Capabilities + public 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 ac2b6cbb25..97bc9decde 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 - private @C.SelectionFlags int disabledTextTrackSelectionFlags; + @C.SelectionFlags private 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). */ - public final @C.SelectionFlags int disabledTextTrackSelectionFlags; + @C.SelectionFlags public final int disabledTextTrackSelectionFlags; /** Returns an instance configured with default values. */ public static Parameters getDefaults(Context context) { @@ -2247,7 +2247,8 @@ public class DefaultTrackSelector extends MappingTrackSelector { } /** Returns to what extent the track is {@link SelectionEligibility eligible for selection}. */ - public abstract @SelectionEligibility int getSelectionEligibility(); + @SelectionEligibility + public abstract int getSelectionEligibility(); /** * Returns whether this track is compatible for an adaptive selection with the specified other @@ -2299,7 +2300,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { private final int preferredRoleFlagsScore; private final boolean hasMainOrNoRoleFlag; private final boolean allowMixedMimeTypes; - private final @SelectionEligibility int selectionEligibility; + @SelectionEligibility private final int selectionEligibility; private final boolean usesPrimaryDecoder; private final boolean usesHardwareAcceleration; private final int codecPreferenceScore; @@ -2366,7 +2367,8 @@ public class DefaultTrackSelector extends MappingTrackSelector { } @Override - public @SelectionEligibility int getSelectionEligibility() { + @SelectionEligibility + public int getSelectionEligibility() { return selectionEligibility; } @@ -2379,7 +2381,8 @@ public class DefaultTrackSelector extends MappingTrackSelector { && this.usesHardwareAcceleration == otherTrack.usesHardwareAcceleration)); } - private @SelectionEligibility int evaluateSelectionEligibility( + @SelectionEligibility + private int evaluateSelectionEligibility( @Capabilities int rendererSupport, @AdaptiveSupport int requiredAdaptiveSupport) { if ((format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) != 0) { // Ignore trick-play tracks for now. @@ -2491,7 +2494,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { return listBuilder.build(); } - private final @SelectionEligibility int selectionEligibility; + @SelectionEligibility private final int selectionEligibility; private final boolean isWithinConstraints; @Nullable private final String language; private final Parameters parameters; @@ -2583,7 +2586,8 @@ public class DefaultTrackSelector extends MappingTrackSelector { } @Override - public @SelectionEligibility int getSelectionEligibility() { + @SelectionEligibility + public int getSelectionEligibility() { return selectionEligibility; } @@ -2652,7 +2656,8 @@ public class DefaultTrackSelector extends MappingTrackSelector { .result(); } - private @SelectionEligibility int evaluateSelectionEligibility( + @SelectionEligibility + private int evaluateSelectionEligibility( @Capabilities int rendererSupport, boolean hasMappedVideoTracks) { if (!isSupported(rendererSupport, parameters.exceedRendererCapabilitiesIfNecessary)) { return SELECTION_ELIGIBILITY_NO; @@ -2699,7 +2704,7 @@ public class DefaultTrackSelector extends MappingTrackSelector { return listBuilder.build(); } - private final @SelectionEligibility int selectionEligibility; + @SelectionEligibility private final int selectionEligibility; private final boolean isWithinRendererCapabilities; private final boolean isDefault; private final boolean isForced; @@ -2764,7 +2769,8 @@ public class DefaultTrackSelector extends MappingTrackSelector { } @Override - public @SelectionEligibility int getSelectionEligibility() { + @SelectionEligibility + public 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 91f050899e..c2072cfe58 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; - private final @AdaptiveSupport int[] rendererMixedMimeTypeAdaptiveSupports; - private final @Capabilities int[][][] rendererFormatSupports; + @AdaptiveSupport private final int[] rendererMixedMimeTypeAdaptiveSupports; + @Capabilities private final int[][][] rendererFormatSupports; private final TrackGroupArray unmappedTrackGroups; /** @@ -178,7 +178,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param rendererIndex The renderer index. * @return The {@link RendererSupport}. */ - public @RendererSupport int getRendererSupport(int rendererIndex) { + @RendererSupport + public int getRendererSupport(int rendererIndex) { @RendererSupport int bestRendererSupport = RENDERER_SUPPORT_NO_TRACKS; @Capabilities int[][] rendererFormatSupport = rendererFormatSupports[rendererIndex]; for (@Capabilities int[] trackGroupFormatSupport : rendererFormatSupport) { @@ -213,7 +214,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param trackType The {@link C.TrackType track type}. * @return The {@link RendererSupport}. */ - public @RendererSupport int getTypeSupport(@C.TrackType int trackType) { + @RendererSupport + public int getTypeSupport(@C.TrackType int trackType) { @RendererSupport int bestRendererSupport = RENDERER_SUPPORT_NO_TRACKS; for (int i = 0; i < rendererCount; i++) { if (rendererTrackTypes[i] == trackType) { @@ -231,7 +233,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param trackIndex The index of the track within the track group. * @return The {@link Capabilities}. */ - public @Capabilities int getCapabilities(int rendererIndex, int groupIndex, int trackIndex) { + @Capabilities + public int getCapabilities(int rendererIndex, int groupIndex, int trackIndex) { return rendererFormatSupports[rendererIndex][groupIndex][trackIndex]; } @@ -243,7 +246,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param trackIndex The index of the track within the track group. * @return The {@link FormatSupport}. */ - public @FormatSupport int getTrackSupport(int rendererIndex, int groupIndex, int trackIndex) { + @FormatSupport + public int getTrackSupport(int rendererIndex, int groupIndex, int trackIndex) { return RendererCapabilities.getFormatSupport( getCapabilities(rendererIndex, groupIndex, trackIndex)); } @@ -265,7 +269,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * renderer are included when determining support. * @return The {@link AdaptiveSupport}. */ - public @AdaptiveSupport int getAdaptiveSupport( + @AdaptiveSupport + public 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. @@ -291,8 +296,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * @param groupIndex The index of the track group. * @return The {@link AdaptiveSupport}. */ - public @AdaptiveSupport int getAdaptiveSupport( - int rendererIndex, int groupIndex, int[] trackIndices) { + @AdaptiveSupport + public int getAdaptiveSupport(int rendererIndex, int groupIndex, int[] trackIndices) { int handledTrackCount = 0; @AdaptiveSupport int adaptiveSupport = RendererCapabilities.ADAPTIVE_SEAMLESS; boolean multipleMimeTypes = false; @@ -532,8 +537,9 @@ 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. */ - private static @Capabilities int[] getFormatSupport( - RendererCapabilities rendererCapabilities, TrackGroup group) throws ExoPlaybackException { + @Capabilities + private static 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)); @@ -550,7 +556,8 @@ public abstract class MappingTrackSelector extends TrackSelector { * renderer. * @throws ExoPlaybackException If an error occurs determining the adaptation support. */ - private static @AdaptiveSupport int[] getMixedMimeTypeAdaptationSupports( + @AdaptiveSupport + private static 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 ab7445ab9d..e606cfe148 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; - private @C.NetworkType int networkType; + @C.NetworkType private int networkType; private long totalElapsedTimeMs; private long totalBytesTransferred; private long bitrateEstimate; private long lastReportedBitrateEstimate; private boolean networkTypeOverrideSet; - private @C.NetworkType int networkTypeOverride; + @C.NetworkType private 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 0a5032b021..67d6109249 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. */ - public final @FallbackType int type; + @FallbackType public final 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 12f686532e..0296e093c1 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; - @Nullable private volatile T result; + private volatile @Nullable 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 87ef28706d..0ddacf8b1a 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; - private @VideoOutputMode int outputMode; + @VideoOutputMode private 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; - private @ReinitializationState int decoderReinitializationState; + @ReinitializationState private 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 3d2c9a7996..51e23dbbba 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,7 +103,8 @@ public final class DummySurface extends Surface { } } - private static @SecureMode int getSecureMode(Context context) { + @SecureMode + private static 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 acbe0221da..aded173b2a 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; - private @C.VideoScalingMode int scalingMode; + @C.VideoScalingMode private int scalingMode; private boolean renderedFirstFrameAfterReset; private boolean mayRenderFirstFrameAfterEnableIfNotStarted; private boolean renderedFirstFrameAfterEnable; @@ -339,7 +339,8 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer { } @Override - protected @Capabilities int supportsFormat(MediaCodecSelector mediaCodecSelector, Format format) + @Capabilities + protected 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 ca6c32270d..1875eea81a 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; - private @C.VideoChangeFrameRateStrategy int changeFrameRateStrategy; + @C.VideoChangeFrameRateStrategy private 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 b435ccb125..8d2c801fab 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,7 +56,8 @@ public final class CameraMotionRenderer extends BaseRenderer { } @Override - public @Capabilities int supportsFormat(Format format) { + @Capabilities + public 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 3f21b36cd7..9f2e1e697e 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,8 +58,7 @@ import java.util.zip.Inflater; * @param stereoMode A {@link C.StereoMode} value. * @return The projection or null if the data can't be decoded. */ - @Nullable - public static Projection decode(byte[] projectionData, @C.StereoMode int stereoMode) { + public static @Nullable 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. @@ -92,8 +91,7 @@ import java.util.zip.Inflater; return type == TYPE_PROJ; } - @Nullable - private static ArrayList parseProj(ParsableByteArray input) { + private static @Nullable ArrayList parseProj(ParsableByteArray input) { input.skipBytes(8); // size and type. int position = input.getPosition(); int limit = input.limit(); @@ -114,8 +112,7 @@ import java.util.zip.Inflater; return null; } - @Nullable - private static ArrayList parseMshp(ParsableByteArray input) { + private static @Nullable ArrayList parseMshp(ParsableByteArray input) { int version = input.readUnsignedByte(); if (version != 0) { return null; @@ -140,8 +137,7 @@ import java.util.zip.Inflater; } /** Parses MSHP data after the encoding_four_cc field. */ - @Nullable - private static ArrayList parseRawMshpData(ParsableByteArray input) { + private static @Nullable ArrayList parseRawMshpData(ParsableByteArray input) { ArrayList meshes = new ArrayList<>(); int position = input.getPosition(); int limit = input.limit(); @@ -164,8 +160,7 @@ import java.util.zip.Inflater; return meshes; } - @Nullable - private static Mesh parseMesh(ParsableByteArray input) { + private static @Nullable 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 b84d17176c..0fcff23c5e 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 - private volatile @C.StereoMode int defaultStereoMode; - private @C.StereoMode int lastStereoMode; + @C.StereoMode private volatile int defaultStereoMode; + @C.StereoMode private 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 f0ea43b622..923311db17 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; - public @Player.State int playbackState; + @Player.State public 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 34a9761318..5b0a858678 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,7 +71,8 @@ public class DecoderAudioRendererTest { } @Override - protected @C.FormatSupport int supportsFormatInternal(Format format) { + @C.FormatSupport + protected 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 e26a3c9d42..eea49bf5b8 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,7 +44,8 @@ public class DefaultAudioTrackBufferSizeProviderTest { public static class PcmTest { @Parameterized.Parameter(0) - public @C.PcmEncoding int encoding; + @C.PcmEncoding + public int encoding; @Parameterized.Parameter(1) public int channelCount; @@ -215,7 +216,8 @@ public class DefaultAudioTrackBufferSizeProviderTest { public static class EncodedTest { @Parameterized.Parameter(0) - public @C.Encoding int encoding; + @C.Encoding + public 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 e56d4bfb49..8eefe2d16a 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; - private final @Capabilities int supportValue; + @Capabilities private final int supportValue; /** * Returns {@link FakeRendererCapabilities} that advertises adaptive support for all tracks of @@ -2454,14 +2454,16 @@ public final class DefaultTrackSelectorTest { } @Override - public @Capabilities int supportsFormat(Format format) { + @Capabilities + public int supportsFormat(Format format) { return MimeTypes.getTrackType(format.sampleMimeType) == trackType ? supportValue : RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @Override - public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() { + @AdaptiveSupport + public int supportsMixedMimeTypeAdaptation() { return ADAPTIVE_SEAMLESS; } } @@ -2500,14 +2502,16 @@ public final class DefaultTrackSelectorTest { } @Override - public @Capabilities int supportsFormat(Format format) { + @Capabilities + public int supportsFormat(Format format) { return format.id != null && formatToCapability.containsKey(format.id) ? formatToCapability.get(format.id) : RendererCapabilities.create(C.FORMAT_UNSUPPORTED_TYPE); } @Override - public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() { + @AdaptiveSupport + public 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 9fa6df7142..64f98549cd 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,7 +244,8 @@ public final class MappingTrackSelectorTest { } @Override - public @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { + @Capabilities + public int supportsFormat(Format format) throws ExoPlaybackException { return MimeTypes.getTrackType(format.sampleMimeType) == trackType ? RendererCapabilities.create( C.FORMAT_HANDLED, ADAPTIVE_SEAMLESS, TUNNELING_NOT_SUPPORTED) @@ -252,7 +253,8 @@ public final class MappingTrackSelectorTest { } @Override - public @AdaptiveSupport int supportsMixedMimeTypeAdaptation() throws ExoPlaybackException { + @AdaptiveSupport + public 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 e9ef39fd4f..97a6ccda98 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(); - private @C.VideoOutputMode int outputMode; + @C.VideoOutputMode private int outputMode; @Override public String getName() { @@ -92,7 +92,8 @@ public final class DecoderVideoRendererTest { } @Override - public @Capabilities int supportsFormat(Format format) { + @Capabilities + public 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 7b49a76223..08816add89 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 - protected @Capabilities int supportsFormat( - MediaCodecSelector mediaCodecSelector, Format format) { + @Capabilities + protected 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 c53684a05b..e5b73087d5 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; - public final @TrackGroupCategory int trackGroupCategory; + @TrackGroupCategory public final 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 666a19d377..86fd8239df 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. - protected @C.SelectionFlags int parseSelectionFlagsFromRoleDescriptors( - List roleDescriptors) { + @C.SelectionFlags + protected int parseSelectionFlagsFromRoleDescriptors(List roleDescriptors) { @C.SelectionFlags int result = 0; for (int i = 0; i < roleDescriptors.size(); i++) { Descriptor descriptor = roleDescriptors.get(i); @@ -1491,7 +1491,8 @@ public class DashManifestParser extends DefaultHandler return result; } - protected @C.SelectionFlags int parseSelectionFlagsFromDashRoleScheme(@Nullable String value) { + @C.SelectionFlags + protected int parseSelectionFlagsFromDashRoleScheme(@Nullable String value) { if (value == null) { return 0; } @@ -1507,7 +1508,8 @@ public class DashManifestParser extends DefaultHandler // Role and Accessibility parsing. - protected @C.RoleFlags int parseRoleFlagsFromRoleDescriptors(List roleDescriptors) { + @C.RoleFlags + protected int parseRoleFlagsFromRoleDescriptors(List roleDescriptors) { @C.RoleFlags int result = 0; for (int i = 0; i < roleDescriptors.size(); i++) { Descriptor descriptor = roleDescriptors.get(i); @@ -1518,7 +1520,8 @@ public class DashManifestParser extends DefaultHandler return result; } - protected @C.RoleFlags int parseRoleFlagsFromAccessibilityDescriptors( + @C.RoleFlags + protected int parseRoleFlagsFromAccessibilityDescriptors( List accessibilityDescriptors) { @C.RoleFlags int result = 0; for (int i = 0; i < accessibilityDescriptors.size(); i++) { @@ -1533,8 +1536,8 @@ public class DashManifestParser extends DefaultHandler return result; } - protected @C.RoleFlags int parseRoleFlagsFromProperties( - List accessibilityDescriptors) { + @C.RoleFlags + protected int parseRoleFlagsFromProperties(List accessibilityDescriptors) { @C.RoleFlags int result = 0; for (int i = 0; i < accessibilityDescriptors.size(); i++) { Descriptor descriptor = accessibilityDescriptors.get(i); @@ -1546,7 +1549,8 @@ public class DashManifestParser extends DefaultHandler return result; } - protected @C.RoleFlags int parseRoleFlagsFromDashRoleScheme(@Nullable String value) { + @C.RoleFlags + protected int parseRoleFlagsFromDashRoleScheme(@Nullable String value) { if (value == null) { return 0; } @@ -1581,7 +1585,8 @@ public class DashManifestParser extends DefaultHandler } } - protected @C.RoleFlags int parseTvaAudioPurposeCsValue(@Nullable String value) { + @C.RoleFlags + protected 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 1ed9d47dd3..073f0a46a9 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}. */ - public final @PlaybackException.ErrorCode int reason; + @PlaybackException.ErrorCode public final 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 287d0185af..46fd495995 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; - private @HttpMethod int httpMethod; + @HttpMethod private int httpMethod; @Nullable private byte[] httpBody; private Map httpRequestHeaders; private long position; private long length; @Nullable private String key; - private @Flags int flags; + @Flags private 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. */ - public final @HttpMethod int httpMethod; + @HttpMethod public final 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}. */ - public final @Flags int flags; + @Flags public final 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 9d7ea30f72..f7c0847a10 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; - public final @Type int type; + @Type public final int type; /** * @deprecated Use {@link #HttpDataSourceException(DataSpec, int, int) @@ -347,8 +347,8 @@ public interface HttpDataSource extends DataSource { this.type = type; } - private static @PlaybackException.ErrorCode int assignErrorCode( - @PlaybackException.ErrorCode int errorCode, @Type int type) { + @PlaybackException.ErrorCode + private static 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 27388abcd5..880689f2bd 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; - private @CacheDataSource.Flags int flags; + @CacheDataSource.Flags private 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 bf54ce5a70..71ea215d2c 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 { - private @C.BufferFlags int flags; + @C.BufferFlags private 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 c80d3aff85..f4c57f061c 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 */ - public @C.CryptoMode int mode; + @C.CryptoMode public 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 7ecd14ff1f..4ffa262fa7 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; - private final @BufferReplacementMode int bufferReplacementMode; + @BufferReplacementMode private final 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 80b15db0d3..fde0a73d8b 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. */ - public @C.VideoOutputMode int mode; + @C.VideoOutputMode public 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 972af049c7..8ebe3b84fb 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. */ - private final @Type int type; + @Type private final 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 1c2d3fa37a..a71796cbb8 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; - 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; + @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 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 d1e29d73d6..aa505388b4 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. */ - public final @C.CryptoMode int cryptoMode; + @C.CryptoMode public final 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 1596f7228c..f11f237165 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; - private @C.BufferFlags int chunkFlags; + @C.BufferFlags private 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 e4a5e8a863..811956d842 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; - private @State int state; + @State private int state; private int marker; private int segmentLength; private long mp4StartPosition; @@ -126,8 +126,8 @@ public final class JpegExtractor implements Extractor { } @Override - public @ReadResult int read(ExtractorInput input, PositionHolder seekPosition) - throws IOException { + @ReadResult + public 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 7933caeb43..ccc017c29c 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; - private @C.BufferFlags int blockFlags; + @C.BufferFlags private int blockFlags; private int blockAdditionalId; private boolean blockHasReferenceBlock; @@ -529,7 +529,8 @@ public class MatroskaExtractor implements Extractor { * @see EbmlProcessor#getElementType(int) */ @CallSuper - protected @EbmlProcessor.ElementType int getElementType(int id) { + @EbmlProcessor.ElementType + protected int getElementType(int id) { switch (id) { case ID_EBML: case ID_SEGMENT: @@ -1905,7 +1906,8 @@ public class MatroskaExtractor implements Extractor { private final class InnerEbmlProcessor implements EbmlProcessor { @Override - public @ElementType int getElementType(int id) { + @ElementType + public int getElementType(int id) { return MatroskaExtractor.this.getElementType(id); } @@ -1977,16 +1979,16 @@ public class MatroskaExtractor implements Extractor { public int displayWidth = Format.NO_VALUE; public int displayHeight = Format.NO_VALUE; public int displayUnit = DISPLAY_UNIT_PIXELS; - public @C.Projection int projectionType = Format.NO_VALUE; + @C.Projection public int projectionType = Format.NO_VALUE; public float projectionPoseYaw = 0f; public float projectionPosePitch = 0f; public float projectionPoseRoll = 0f; public byte @MonotonicNonNull [] projectionData = null; - public @C.StereoMode int stereoMode = Format.NO_VALUE; + @C.StereoMode public int stereoMode = Format.NO_VALUE; public boolean hasColorInfo = false; - public @C.ColorSpace int colorSpace = Format.NO_VALUE; - public @C.ColorTransfer int colorTransfer = Format.NO_VALUE; - public @C.ColorRange int colorRange = Format.NO_VALUE; + @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 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 06e3c624c1..fb62350aa2 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; - private final @Flags int flags; + @Flags private final 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 817f7ab9c8..442758716a 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; - public @Track.Transformation int requiredSampleTransformation; + @Track.Transformation public 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 48d439126e..0c976bf55b 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. - private final @Flags int flags; + @Flags private final int flags; @Nullable private final Track sideloadedTrack; // Sideloaded data. @@ -1687,7 +1687,8 @@ public class FragmentedMp4Extractor implements Extractor { } /** Returns the {@link C.BufferFlags} corresponding to the current sample. */ - public @C.BufferFlags int getCurrentSampleFlags() { + @C.BufferFlags + public 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 7b2a90237d..4731569fca 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; - private final @Flags int flags; + @Flags private final 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; - private @State int parserState; + @State private 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; - private @FileType int fileType; + @FileType private 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; } - private @ReadResult int readSefData(ExtractorInput input, PositionHolder seekPosition) - throws IOException { + @ReadResult + private 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,7 +859,8 @@ public final class Mp4Extractor implements Extractor, SeekMap { * @param atomData The ftyp atom data. * @return The {@link FileType}. */ - private static @FileType int processFtypAtom(ParsableByteArray atomData) { + @FileType + private static int processFtypAtom(ParsableByteArray atomData) { atomData.setPosition(Atom.HEADER_SIZE); int majorBrand = atomData.readInt(); @FileType int fileType = brandToFileType(majorBrand); @@ -876,7 +877,8 @@ public final class Mp4Extractor implements Extractor, SeekMap { return FILE_TYPE_MP4; } - private static @FileType int brandToFileType(int brand) { + @FileType + private static 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 7d89e79f55..b2fcad1f5f 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; - private @State int readerState; + @State private int readerState; private int tailLength; public SefReader() { @@ -110,7 +110,8 @@ import java.util.List; readerState = STATE_SHOULD_CHECK_FOR_SEF; } - public @Extractor.ReadResult int read( + @Extractor.ReadResult + public int read( ExtractorInput input, PositionHolder seekPosition, List slowMotionMetadataEntries) @@ -249,7 +250,8 @@ import java.util.List; return new SlowMotionData(segments); } - private static @DataType int nameToDataType(String name) throws ParserException { + @DataType + private static int nameToDataType(String name) throws ParserException { switch (name) { case "SlowMotion_Data": return TYPE_SLOW_MOTION_DATA; @@ -267,7 +269,7 @@ import java.util.List; } private static final class DataReference { - public final @DataType int dataType; + @DataType public final 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 138c1e3ebf..eb0427a36a 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. */ - public final @Transformation int sampleTransformation; + @Transformation public final 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 f5df9f7db1..aed1bcf48f 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,7 +77,8 @@ public final class TrackEncryptionBox { schemeToCryptoMode(schemeType), keyId, defaultEncryptedBlocks, defaultClearBlocks); } - private static @C.CryptoMode int schemeToCryptoMode(@Nullable String schemeType) { + @C.CryptoMode + private static 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 2b7d0a1d75..61281f3840 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; - private @State int state; + @State private 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 360057d0af..639e11d4b7 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; - private @State int state; + @State private 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 c59e210547..6627a64b83 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; - private final @Flags int flags; + @Flags private final 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 62a68cb42c..3be6872853 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; - private @State int state; + @State private 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 970e8e121a..9d9d0fc656 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; - private final @Mode int mode; + @Mode private final 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 - public @ReadResult int read(ExtractorInput input, PositionHolder seekPosition) - throws IOException { + @ReadResult + public 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 8d64cb0255..7d9ba15495 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 - public @ReadResult int read(ExtractorInput input, PositionHolder seekPosition) - throws IOException { + @ReadResult + public int read(ExtractorInput input, PositionHolder seekPosition) throws IOException { assertInitialized(); switch (state) { case STATE_READING_FILE_TYPE: @@ -225,7 +225,8 @@ public final class WavExtractor implements Extractor { state = STATE_READING_SAMPLE_DATA; } - private @ReadResult int readSampleData(ExtractorInput input) throws IOException { + @ReadResult + private 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 95447b00d3..5d86358d77 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; - private @State int state; + @State private 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 c6df62bb5f..3f764f9fb2 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,7 +407,8 @@ public final class SsaDecoder extends SimpleSubtitleDecoder { } } - private static @Cue.AnchorType int toLineAnchor(@SsaStyle.SsaAlignment int alignment) { + @Cue.AnchorType + private static int toLineAnchor(@SsaStyle.SsaAlignment int alignment) { switch (alignment) { case SsaStyle.SSA_ALIGNMENT_BOTTOM_LEFT: case SsaStyle.SSA_ALIGNMENT_BOTTOM_CENTER: @@ -429,7 +430,8 @@ public final class SsaDecoder extends SimpleSubtitleDecoder { } } - private static @Cue.AnchorType int toPositionAnchor(@SsaStyle.SsaAlignment int alignment) { + @Cue.AnchorType + private static 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 8e09291312..ee306b678b 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; - public final @SsaAlignment int alignment; + @SsaAlignment public final int alignment; @Nullable @ColorInt public final Integer primaryColor; public final float fontSize; public final boolean bold; @@ -158,7 +158,8 @@ import java.util.regex.Pattern; } } - private static @SsaAlignment int parseAlignment(String alignmentStr) { + @SsaAlignment + private static int parseAlignment(String alignmentStr) { try { @SsaAlignment int alignment = Integer.parseInt(alignmentStr.trim()); if (isValidAlignment(alignment)) { @@ -372,7 +373,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+)"); - public final @SsaAlignment int alignment; + @SsaAlignment public final int alignment; @Nullable public final PointF position; private Overrides(@SsaAlignment int alignment, @Nullable PointF position) { @@ -450,7 +451,8 @@ import java.util.regex.Pattern; Float.parseFloat(Assertions.checkNotNull(y).trim())); } - private static @SsaAlignment int parseAlignmentOverride(String braceContents) { + @SsaAlignment + private static 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 bd0a5a834a..2650bcd0fb 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. */ - public final @MarkShape int markShape; + @MarkShape public final int markShape; /** The fill style of the text emphasis mark. */ - public final @TextEmphasisSpan.MarkFill int markFill; + @TextEmphasisSpan.MarkFill public final int markFill; /** The position of the text emphasis relative to the base text. */ - public final @Position int position; + @Position public final 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 57b5e1ec3a..593bfd7761 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; - public final @Cue.LineType int lineType; - public final @Cue.AnchorType int lineAnchor; + @Cue.LineType public final int lineType; + @Cue.AnchorType public final int lineAnchor; public final float width; public final float height; - public final @Cue.TextSizeType int textSizeType; + @Cue.TextSizeType public final int textSizeType; public final float textSize; - public final @Cue.VerticalType int verticalType; + @Cue.VerticalType public final 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 37eabd7d5f..c87c8b6b75 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; - private @OptionalBoolean int linethrough; - private @OptionalBoolean int underline; - private @OptionalBoolean int bold; - private @OptionalBoolean int italic; - private @FontSizeUnit int fontSizeUnit; + @OptionalBoolean private int linethrough; + @OptionalBoolean private int underline; + @OptionalBoolean private int bold; + @OptionalBoolean private int italic; + @FontSizeUnit private int fontSizeUnit; private float fontSize; @Nullable private String id; - private @RubyType int rubyType; - private @TextAnnotation.Position int rubyPosition; + @RubyType private int rubyType; + @TextAnnotation.Position private int rubyPosition; @Nullable private Layout.Alignment textAlign; @Nullable private Layout.Alignment multiRowAlign; - private @OptionalBoolean int textCombine; + @OptionalBoolean private int textCombine; @Nullable private TextEmphasis textEmphasis; private float shearPercentage; @@ -114,7 +114,8 @@ import java.lang.annotation.Target; * @return {@link #UNSPECIFIED}, {@link #STYLE_NORMAL}, {@link #STYLE_BOLD}, {@link #STYLE_BOLD} * or {@link #STYLE_BOLD_ITALIC}. */ - public @StyleFlags int getStyle() { + @StyleFlags + public int getStyle() { if (bold == UNSPECIFIED && italic == UNSPECIFIED) { return UNSPECIFIED; } @@ -291,7 +292,8 @@ import java.lang.annotation.Target; return this; } - public @RubyType int getRubyType() { + @RubyType + public int getRubyType() { return rubyType; } @@ -300,7 +302,8 @@ import java.lang.annotation.Target; return this; } - public @TextAnnotation.Position int getRubyPosition() { + @TextAnnotation.Position + public int getRubyPosition() { return rubyPosition; } @@ -354,7 +357,8 @@ import java.lang.annotation.Target; return this; } - public @FontSizeUnit int getFontSizeUnit() { + @FontSizeUnit + public 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 d250f0c03b..360018cbc5 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; - private @OptionalBoolean int linethrough; - private @OptionalBoolean int underline; - private @OptionalBoolean int bold; - private @OptionalBoolean int italic; - private @FontSizeUnit int fontSizeUnit; + @OptionalBoolean private int linethrough; + @OptionalBoolean private int underline; + @OptionalBoolean private int bold; + @OptionalBoolean private int italic; + @FontSizeUnit private int fontSizeUnit; private float fontSize; - private @TextAnnotation.Position int rubyPosition; + @TextAnnotation.Position private int rubyPosition; private boolean combineUpright; public WebvttCssStyle() { @@ -184,7 +184,8 @@ public final class WebvttCssStyle { * @return {@link #UNSPECIFIED}, {@link #STYLE_NORMAL}, {@link #STYLE_BOLD}, {@link #STYLE_BOLD} * or {@link #STYLE_BOLD_ITALIC}. */ - public @StyleFlags int getStyle() { + @StyleFlags + public int getStyle() { if (bold == UNSPECIFIED && italic == UNSPECIFIED) { return UNSPECIFIED; } @@ -273,7 +274,8 @@ public final class WebvttCssStyle { return this; } - public @FontSizeUnit int getFontSizeUnit() { + @FontSizeUnit + public int getFontSizeUnit() { return fontSizeUnit; } @@ -286,7 +288,8 @@ public final class WebvttCssStyle { return this; } - public @TextAnnotation.Position int getRubyPosition() { + @TextAnnotation.Position + public 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 0a726cff8a..5b73676b3e 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,7 +404,8 @@ public final class WebvttCueParser { } } - private static @Cue.AnchorType int parseLineAnchor(String s) { + @Cue.AnchorType + private static int parseLineAnchor(String s) { switch (s) { case "start": return Cue.ANCHOR_TYPE_START; @@ -428,7 +429,8 @@ public final class WebvttCueParser { builder.position = WebvttParserUtil.parsePercentage(s); } - private static @Cue.AnchorType int parsePositionAnchor(String s) { + @Cue.AnchorType + private static int parsePositionAnchor(String s) { switch (s) { case "line-left": case "start": @@ -445,7 +447,8 @@ public final class WebvttCueParser { } } - private static @Cue.VerticalType int parseVerticalAttribute(String s) { + @Cue.VerticalType + private static int parseVerticalAttribute(String s) { switch (s) { case "rl": return Cue.VERTICAL_TYPE_RL; @@ -457,7 +460,8 @@ public final class WebvttCueParser { } } - private static @TextAlignment int parseTextAlignment(String s) { + @TextAlignment + private static int parseTextAlignment(String s) { switch (s) { case "start": return TEXT_ALIGNMENT_START; @@ -605,7 +609,8 @@ public final class WebvttCueParser { } } - private static @TextAnnotation.Position int getRubyPosition( + @TextAnnotation.Position + private static int getRubyPosition( List styles, @Nullable String cueId, StartTag startTag) { List styleMatches = getApplicableStyles(styles, cueId, startTag); for (int i = 0; i < styleMatches.size(); i++) { @@ -617,7 +622,8 @@ public final class WebvttCueParser { return TextAnnotation.POSITION_UNKNOWN; } - private static @TextAnnotation.Position int firstKnownRubyPosition( + @TextAnnotation.Position + private static int firstKnownRubyPosition( @TextAnnotation.Position int position1, @TextAnnotation.Position int position2, @TextAnnotation.Position int position3) { @@ -762,16 +768,16 @@ public final class WebvttCueParser { public long startTimeUs; public long endTimeUs; public @MonotonicNonNull CharSequence text; - public @TextAlignment int textAlignment; + @TextAlignment public 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 - public @Cue.LineType int lineType; - public @Cue.AnchorType int lineAnchor; + @Cue.LineType public int lineType; + @Cue.AnchorType public int lineAnchor; public float position; - public @Cue.AnchorType int positionAnchor; + @Cue.AnchorType public int positionAnchor; public float size; - public @Cue.VerticalType int verticalType; + @Cue.VerticalType public int verticalType; public WebvttCueInfoBuilder() { startTimeUs = 0; @@ -853,7 +859,8 @@ public final class WebvttCueParser { } // https://www.w3.org/TR/webvtt1/#webvtt-cue-position-alignment - private static @Cue.AnchorType int derivePositionAnchor(@TextAlignment int textAlignment) { + @Cue.AnchorType + private static 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 94b789f2f6..e1a700f5ed 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,7 +178,8 @@ public class DefaultEbmlReaderTest { private final List events = new ArrayList<>(); @Override - public @EbmlProcessor.ElementType int getElementType(int id) { + @EbmlProcessor.ElementType + public 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 a40b608dcd..972d7876e2 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; - private static final @TtmlStyle.FontSizeUnit int FONT_SIZE_UNIT = TtmlStyle.FONT_SIZE_UNIT_EM; + @TtmlStyle.FontSizeUnit private static final 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 3bf1ae2ff8..ec5510225b 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, }; - private final @DefaultTsPayloadReaderFactory.Flags int payloadReaderFactoryFlags; + @DefaultTsPayloadReaderFactory.Flags private final 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 5d5d398370..e02383463b 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,7 +303,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; * has been {@link #CHUNK_PUBLICATION_STATE_REMOVED removed} or is definitely {@link * #CHUNK_PUBLICATION_STATE_PUBLISHED published}. */ - public @ChunkPublicationState int getChunkPublicationState(HlsMediaChunk mediaChunk) { + @ChunkPublicationState + public 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 9a77f444ea..44632fd260 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}. */ - public final @PlaylistType int playlistType; + @PlaylistType public final 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 39e5ff627e..3a2680277f 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,7 +1085,8 @@ public final class HlsPlaylistParser implements ParsingLoadable.Parser variableDefinitions) { + @C.RoleFlags + private static 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 526e47cd56..b22645aa3d 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. */ - public final @AuthenticationMechanism int authenticationMechanism; + @AuthenticationMechanism public final 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 5ff812bd82..6141e25b27 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; - private @RtspState int rtspState; + @RtspState private int rtspState; private boolean hasUpdatedTimelineAndTracks; private boolean receivedAuthorizationRequest; private boolean hasPendingPauseRequest; @@ -204,7 +204,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; } /** Returns the current {@link RtspState RTSP state}. */ - public @RtspState int getState() { + @RtspState + public 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 26b589ac24..0f1c94c097 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,7 +773,8 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; return sampleQueue.isReady(/* loadingFinished= */ canceled); } - public @ReadDataResult int read( + @ReadDataResult + public 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 8aa97986e9..df587c726d 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; - private @ReadingState int state; + @ReadingState private 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 44d7743fe6..8f46b43e74 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,7 +254,8 @@ import java.util.regex.Pattern; } } - private static @RtspRequest.Method int parseMethodString(String method) { + @RtspRequest.Method + private static 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 7526926565..7e27bc0e6c 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}. */ - public final @Method int method; + @Method public final 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 f56958dbf2..e29e081918 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; - private @C.BufferFlags int bufferFlags; + @C.BufferFlags private int bufferFlags; private long firstReceivedTimestamp; private int previousSequenceNumber; @@ -296,7 +296,8 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; /* divisor= */ MEDIA_CLOCK_FREQUENCY); } - private static @C.BufferFlags int getBufferFlagsFromNalType(int nalType) { + @C.BufferFlags + private static 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 826d6b8226..d61dad444a 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 @@ -540,7 +540,7 @@ public final class Transformer { @Nullable private MuxerWrapper muxerWrapper; @Nullable private ExoPlayer player; - private @ProgressState int progressState; + @ProgressState private int progressState; private Transformer( Context context, @@ -741,7 +741,8 @@ public final class Transformer { * @return The {@link ProgressState}. * @throws IllegalStateException If this method is called from the wrong thread. */ - public @ProgressState int getProgress(ProgressHolder progressHolder) { + @ProgressState + public 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 52e2fe3931..80244bc2a7 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,7 +67,8 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; * @return The {@link Capabilities} for this format. */ @Override - public final @Capabilities int supportsFormat(Format format) { + @Capabilities + public final 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 6028df370e..493e95cb09 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; - private @Download.FailureReason int failureReason; + @Download.FailureReason private 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 56024d05dc..20fabe37c7 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 { - private final @Player.RepeatMode int repeatMode; + @Player.RepeatMode private final 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; - private final @Player.TimelineChangeReason int expectedReason; + @Player.TimelineChangeReason private final 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 { - private final @Player.State int targetPlaybackState; + @Player.State private final 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 80aeeace9d..bf1ffdce0e 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 { - private final @C.PcmEncoding int inputPcmEncoding; + @C.PcmEncoding private final 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 a7e35f2e22..184b7a11e4 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; - private @Download.State int state; + @Download.State private 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 a4c9d99638..707e9c22ae 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; - private static final @DumpFilesAction int DUMP_FILE_ACTION = COMPARE_WITH_EXISTING; + @DumpFilesAction private static final 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 84bc9a9959..ed88822831 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,7 +396,8 @@ public final class FakeExoMediaDrm implements ExoMediaDrm { } @Override - public @C.CryptoType int getCryptoType() { + @C.CryptoType + public 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 4ef94a62f0..1018207de1 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,7 +160,8 @@ public class FakeRenderer extends BaseRenderer { } @Override - public @Capabilities int supportsFormat(Format format) throws ExoPlaybackException { + @Capabilities + public 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 6bfe1468e0..6ec284b8dc 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; - public final @C.BufferFlags int flags; + @C.BufferFlags public final 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 b1da2a93f2..79f1214810 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,12 +60,14 @@ public class StubPlayer extends BasePlayer { } @Override - public @State int getPlaybackState() { + @State + public int getPlaybackState() { throw new UnsupportedOperationException(); } @Override - public @PlaybackSuppressionReason int getPlaybackSuppressionReason() { + @PlaybackSuppressionReason + public 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 a02c482196..fa4851441c 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; - private @GzipSupport int gzipSupport; + @GzipSupport private 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; - private final @GzipSupport int gzipSupport; + @GzipSupport private final int gzipSupport; private Resource( String path, @@ -221,7 +221,8 @@ public class WebServerDispatcher extends Dispatcher { } /** Returns the level of gzip support the server should provide for this resource. */ - public @GzipSupport int getGzipSupport() { + @GzipSupport + public 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 7142677c2a..2e81bff452 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; - private final @TextAnnotation.Position int position; + @TextAnnotation.Position private final 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 { - private final @TextEmphasisSpan.MarkShape int markShape; - private final @TextEmphasisSpan.MarkFill int markFill; - private final @TextAnnotation.Position int position; + @TextEmphasisSpan.MarkShape private final int markShape; + @TextEmphasisSpan.MarkFill private final int markFill; + @TextAnnotation.Position private final int position; private MarkAndPosition( @TextEmphasisSpan.MarkShape int markShape,