diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/NalUnitUtil.java b/libraries/common/src/main/java/androidx/media3/common/util/NalUnitUtil.java similarity index 99% rename from libraries/extractor/src/main/java/androidx/media3/extractor/NalUnitUtil.java rename to libraries/common/src/main/java/androidx/media3/common/util/NalUnitUtil.java index 354b59f666..6a6c8775ee 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/NalUnitUtil.java +++ b/libraries/common/src/main/java/androidx/media3/common/util/NalUnitUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package androidx.media3.extractor; +package androidx.media3.common.util; import static java.lang.Math.min; @@ -22,9 +22,6 @@ import androidx.media3.common.C; import androidx.media3.common.ColorInfo; import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; -import androidx.media3.common.util.Assertions; -import androidx.media3.common.util.Log; -import androidx.media3.common.util.UnstableApi; import java.nio.ByteBuffer; import java.util.Arrays; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ParsableNalUnitBitArray.java b/libraries/common/src/main/java/androidx/media3/common/util/ParsableNalUnitBitArray.java similarity index 98% rename from libraries/extractor/src/main/java/androidx/media3/extractor/ParsableNalUnitBitArray.java rename to libraries/common/src/main/java/androidx/media3/common/util/ParsableNalUnitBitArray.java index 295e3774da..e4896020b9 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ParsableNalUnitBitArray.java +++ b/libraries/common/src/main/java/androidx/media3/common/util/ParsableNalUnitBitArray.java @@ -13,10 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package androidx.media3.extractor; - -import androidx.media3.common.util.Assertions; -import androidx.media3.common.util.UnstableApi; +package androidx.media3.common.util; /** * Wraps a byte array, providing methods that allow it to be read as a NAL unit bitstream. diff --git a/libraries/extractor/src/test/java/androidx/media3/extractor/NalUnitUtilTest.java b/libraries/common/src/test/java/androidx/media3/common/util/NalUnitUtilTest.java similarity index 98% rename from libraries/extractor/src/test/java/androidx/media3/extractor/NalUnitUtilTest.java rename to libraries/common/src/test/java/androidx/media3/common/util/NalUnitUtilTest.java index dd5f108bd1..4c7b0bcda9 100644 --- a/libraries/extractor/src/test/java/androidx/media3/extractor/NalUnitUtilTest.java +++ b/libraries/common/src/test/java/androidx/media3/common/util/NalUnitUtilTest.java @@ -13,12 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package androidx.media3.extractor; +package androidx.media3.common.util; import static com.google.common.truth.Truth.assertThat; -import androidx.media3.common.util.Assertions; -import androidx.media3.common.util.Util; import androidx.test.ext.junit.runners.AndroidJUnit4; import java.nio.ByteBuffer; import java.util.Arrays; diff --git a/libraries/extractor/src/test/java/androidx/media3/extractor/ParsableNalUnitBitArrayTest.java b/libraries/common/src/test/java/androidx/media3/common/util/ParsableNalUnitBitArrayTest.java similarity index 98% rename from libraries/extractor/src/test/java/androidx/media3/extractor/ParsableNalUnitBitArrayTest.java rename to libraries/common/src/test/java/androidx/media3/common/util/ParsableNalUnitBitArrayTest.java index 8940ef0b76..f325bd1c4b 100644 --- a/libraries/extractor/src/test/java/androidx/media3/extractor/ParsableNalUnitBitArrayTest.java +++ b/libraries/common/src/test/java/androidx/media3/common/util/ParsableNalUnitBitArrayTest.java @@ -13,12 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package androidx.media3.extractor; +package androidx.media3.common.util; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.fail; -import androidx.media3.common.util.Assertions; import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecRenderer.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecRenderer.java index a37ef84282..83bbda7c6d 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecRenderer.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/MediaCodecRenderer.java @@ -53,6 +53,7 @@ import androidx.media3.common.MimeTypes; import androidx.media3.common.PlaybackException; import androidx.media3.common.util.Assertions; import androidx.media3.common.util.Log; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.TimedValueQueue; import androidx.media3.common.util.TraceUtil; import androidx.media3.common.util.UnstableApi; @@ -76,7 +77,6 @@ import androidx.media3.exoplayer.source.MediaPeriod; import androidx.media3.exoplayer.source.SampleStream; import androidx.media3.exoplayer.source.SampleStream.ReadDataResult; import androidx.media3.exoplayer.source.SampleStream.ReadFlags; -import androidx.media3.extractor.NalUnitUtil; import java.lang.annotation.Documented; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; diff --git a/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/RtspMediaTrack.java b/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/RtspMediaTrack.java index b96d3d54b9..60fbb483d3 100644 --- a/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/RtspMediaTrack.java +++ b/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/RtspMediaTrack.java @@ -17,11 +17,11 @@ package androidx.media3.exoplayer.rtsp; import static androidx.media3.common.util.Assertions.checkArgument; import static androidx.media3.common.util.Assertions.checkNotNull; +import static androidx.media3.common.util.NalUnitUtil.NAL_START_CODE; import static androidx.media3.common.util.Util.castNonNull; import static androidx.media3.exoplayer.rtsp.MediaDescription.MEDIA_TYPE_AUDIO; import static androidx.media3.exoplayer.rtsp.RtpPayloadFormat.getMimeTypeFromRtpMediaType; import static androidx.media3.exoplayer.rtsp.SessionDescription.ATTR_CONTROL; -import static androidx.media3.extractor.NalUnitUtil.NAL_START_CODE; import android.net.Uri; import android.util.Base64; @@ -33,11 +33,11 @@ import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; import androidx.media3.common.ParserException; import androidx.media3.common.util.CodecSpecificDataUtil; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableBitArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; import androidx.media3.extractor.AacUtil; -import androidx.media3.extractor.NalUnitUtil; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; diff --git a/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH264Reader.java b/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH264Reader.java index 9f6d48872a..94ed41a518 100644 --- a/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH264Reader.java +++ b/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH264Reader.java @@ -23,12 +23,12 @@ import static androidx.media3.exoplayer.rtsp.reader.RtpReaderUtils.toSampleTimeU import androidx.media3.common.C; import androidx.media3.common.ParserException; import androidx.media3.common.util.Log; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.Util; import androidx.media3.exoplayer.rtsp.RtpPacket; import androidx.media3.exoplayer.rtsp.RtpPayloadFormat; import androidx.media3.extractor.ExtractorOutput; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.TrackOutput; import org.checkerframework.checker.nullness.qual.MonotonicNonNull; import org.checkerframework.checker.nullness.qual.RequiresNonNull; diff --git a/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH265Reader.java b/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH265Reader.java index 725dd178ae..f3b6d25c3e 100644 --- a/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH265Reader.java +++ b/libraries/exoplayer_rtsp/src/main/java/androidx/media3/exoplayer/rtsp/reader/RtpH265Reader.java @@ -22,12 +22,12 @@ import static androidx.media3.exoplayer.rtsp.reader.RtpReaderUtils.toSampleTimeU import androidx.media3.common.C; import androidx.media3.common.ParserException; import androidx.media3.common.util.Log; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.Util; import androidx.media3.exoplayer.rtsp.RtpPacket; import androidx.media3.exoplayer.rtsp.RtpPayloadFormat; import androidx.media3.extractor.ExtractorOutput; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.TrackOutput; import org.checkerframework.checker.nullness.qual.MonotonicNonNull; import org.checkerframework.checker.nullness.qual.RequiresNonNull; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/AvcConfig.java b/libraries/extractor/src/main/java/androidx/media3/extractor/AvcConfig.java index 3463da01b2..9a449d67a4 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/AvcConfig.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/AvcConfig.java @@ -19,9 +19,10 @@ import androidx.annotation.Nullable; import androidx.media3.common.Format; import androidx.media3.common.ParserException; import androidx.media3.common.util.CodecSpecificDataUtil; +import androidx.media3.common.util.NalUnitUtil; +import androidx.media3.common.util.NalUnitUtil.SpsData; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.UnstableApi; -import androidx.media3.extractor.NalUnitUtil.SpsData; import java.util.ArrayList; import java.util.List; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/HevcConfig.java b/libraries/extractor/src/main/java/androidx/media3/extractor/HevcConfig.java index ad2c0851dc..71ed70aa89 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/HevcConfig.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/HevcConfig.java @@ -20,6 +20,7 @@ import androidx.media3.common.C; import androidx.media3.common.Format; import androidx.media3.common.ParserException; import androidx.media3.common.util.CodecSpecificDataUtil; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.UnstableApi; import java.util.Collections; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/flv/VideoTagPayloadReader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/flv/VideoTagPayloadReader.java index c2709461e8..7a9f5a767e 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/flv/VideoTagPayloadReader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/flv/VideoTagPayloadReader.java @@ -19,9 +19,9 @@ import androidx.media3.common.C; import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; import androidx.media3.common.ParserException; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.extractor.AvcConfig; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.TrackOutput; /** Parses video tags from an FLV stream and extracts H.264 nal units. */ diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/mkv/MatroskaExtractor.java b/libraries/extractor/src/main/java/androidx/media3/extractor/mkv/MatroskaExtractor.java index 0eedce346d..1de02e5444 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/mkv/MatroskaExtractor.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/mkv/MatroskaExtractor.java @@ -37,6 +37,7 @@ import androidx.media3.common.MimeTypes; import androidx.media3.common.ParserException; import androidx.media3.common.util.Log; import androidx.media3.common.util.LongArray; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; @@ -50,7 +51,6 @@ import androidx.media3.extractor.ExtractorOutput; import androidx.media3.extractor.ExtractorsFactory; import androidx.media3.extractor.HevcConfig; import androidx.media3.extractor.MpegAudioUtil; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.PositionHolder; import androidx.media3.extractor.SeekMap; import androidx.media3.extractor.TrackOutput; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/FragmentedMp4Extractor.java b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/FragmentedMp4Extractor.java index f425998000..22b9192cee 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/FragmentedMp4Extractor.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/FragmentedMp4Extractor.java @@ -34,6 +34,7 @@ import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; import androidx.media3.common.ParserException; import androidx.media3.common.util.Log; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.TimestampAdjuster; import androidx.media3.common.util.UnstableApi; @@ -46,7 +47,6 @@ import androidx.media3.extractor.ExtractorInput; import androidx.media3.extractor.ExtractorOutput; import androidx.media3.extractor.ExtractorsFactory; import androidx.media3.extractor.GaplessInfoHolder; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.PositionHolder; import androidx.media3.extractor.SeekMap; import androidx.media3.extractor.TrackOutput; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Mp4Extractor.java b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Mp4Extractor.java index 3fdcda92c5..a12211adc1 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Mp4Extractor.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Mp4Extractor.java @@ -31,6 +31,7 @@ import androidx.media3.common.Metadata; import androidx.media3.common.MimeTypes; import androidx.media3.common.ParserException; import androidx.media3.common.util.Assertions; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.extractor.Ac3Util; @@ -40,7 +41,6 @@ import androidx.media3.extractor.ExtractorInput; import androidx.media3.extractor.ExtractorOutput; import androidx.media3.extractor.ExtractorsFactory; import androidx.media3.extractor.GaplessInfoHolder; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.PositionHolder; import androidx.media3.extractor.SeekMap; import androidx.media3.extractor.SeekPoint; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H262Reader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H262Reader.java index e6884611b5..90d9c57071 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H262Reader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H262Reader.java @@ -23,11 +23,11 @@ import androidx.annotation.Nullable; import androidx.media3.common.C; import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; import androidx.media3.extractor.ExtractorOutput; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.TrackOutput; import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator; import java.util.Arrays; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H263Reader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H263Reader.java index 11c81fef99..92200855e0 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H263Reader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H263Reader.java @@ -26,11 +26,11 @@ import androidx.media3.common.C; import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; import androidx.media3.common.util.Log; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableBitArray; import androidx.media3.common.util.ParsableByteArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.extractor.ExtractorOutput; -import androidx.media3.extractor.NalUnitUtil; import androidx.media3.extractor.TrackOutput; import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator; import java.lang.annotation.Documented; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java index cd4d3416d1..c93f8a2158 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H264Reader.java @@ -24,13 +24,13 @@ import androidx.media3.common.Format; import androidx.media3.common.MimeTypes; import androidx.media3.common.util.Assertions; import androidx.media3.common.util.CodecSpecificDataUtil; +import androidx.media3.common.util.NalUnitUtil; +import androidx.media3.common.util.NalUnitUtil.SpsData; import androidx.media3.common.util.ParsableByteArray; +import androidx.media3.common.util.ParsableNalUnitBitArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; import androidx.media3.extractor.ExtractorOutput; -import androidx.media3.extractor.NalUnitUtil; -import androidx.media3.extractor.NalUnitUtil.SpsData; -import androidx.media3.extractor.ParsableNalUnitBitArray; import androidx.media3.extractor.TrackOutput; import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator; import java.util.ArrayList; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java index a0ab3aaa8d..e15091d3ba 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/H265Reader.java @@ -24,12 +24,12 @@ import androidx.media3.common.MimeTypes; import androidx.media3.common.util.Assertions; import androidx.media3.common.util.CodecSpecificDataUtil; import androidx.media3.common.util.Log; +import androidx.media3.common.util.NalUnitUtil; import androidx.media3.common.util.ParsableByteArray; +import androidx.media3.common.util.ParsableNalUnitBitArray; import androidx.media3.common.util.UnstableApi; import androidx.media3.common.util.Util; import androidx.media3.extractor.ExtractorOutput; -import androidx.media3.extractor.NalUnitUtil; -import androidx.media3.extractor.ParsableNalUnitBitArray; import androidx.media3.extractor.TrackOutput; import androidx.media3.extractor.ts.TsPayloadReader.TrackIdGenerator; import java.util.Collections; diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/SefSlowMotionFlattener.java b/libraries/transformer/src/main/java/androidx/media3/transformer/SefSlowMotionFlattener.java index 5e99932323..eea3300694 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/SefSlowMotionFlattener.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/SefSlowMotionFlattener.java @@ -18,7 +18,7 @@ package androidx.media3.transformer; import static androidx.media3.common.util.Assertions.checkArgument; import static androidx.media3.common.util.Assertions.checkState; -import static androidx.media3.extractor.NalUnitUtil.NAL_START_CODE; +import static androidx.media3.common.util.NalUnitUtil.NAL_START_CODE; import static java.lang.Math.min; import androidx.annotation.Nullable;