From 0b5443c4505452718711b1858b74792444578fcb Mon Sep 17 00:00:00 2001 From: Colin Kho Date: Fri, 9 Aug 2024 15:16:18 -0700 Subject: [PATCH] Make Extractor/Mp4 Atom Parsing code reusable by external custom mp4 extractors --- .../java/androidx/media3/extractor/mp4/AtomParsers.java | 6 +++--- .../main/java/androidx/media3/extractor/mp4/Sniffer.java | 2 +- .../androidx/media3/extractor/mp4/TrackSampleTable.java | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/AtomParsers.java b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/AtomParsers.java index 2cec2512fb..887d318406 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/AtomParsers.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/AtomParsers.java @@ -62,7 +62,7 @@ import java.util.Objects; /** Utility methods for parsing MP4 format atom payloads according to ISO/IEC 14496-12. */ @SuppressWarnings("ConstantField") -/* package */ final class AtomParsers { +public final class AtomParsers { private static final String TAG = "AtomParsers"; @@ -317,7 +317,7 @@ import java.util.Objects; * @throws ParserException Thrown if the trak atom can't be parsed. */ @Nullable - private static Track parseTrak( + public static Track parseTrak( Mp4Box.ContainerBox trak, LeafBox mvhd, long duration, @@ -401,7 +401,7 @@ import java.util.Objects; * @return Sample table described by the stbl atom. * @throws ParserException Thrown if the stbl atom can't be parsed. */ - private static TrackSampleTable parseStbl( + public static TrackSampleTable parseStbl( Track track, Mp4Box.ContainerBox stblAtom, GaplessInfoHolder gaplessInfoHolder) throws ParserException { SampleSizeBox sampleSizeBox; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Sniffer.java b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Sniffer.java index 58f427e0b2..0fd3fc41ed 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Sniffer.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Sniffer.java @@ -27,7 +27,7 @@ import java.io.IOException; * Provides methods that peek data from an {@link ExtractorInput} and return whether the input * appears to be in MP4 format. */ -/* package */ final class Sniffer { +public final class Sniffer { /** Brand stored in the ftyp atom for QuickTime media. */ public static final int BRAND_QUICKTIME = 0x71742020; diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/TrackSampleTable.java b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/TrackSampleTable.java index 7f2c046865..59b84a8b50 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/TrackSampleTable.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/TrackSampleTable.java @@ -20,7 +20,7 @@ import androidx.media3.common.util.Assertions; import androidx.media3.common.util.Util; /** Sample table for a track in an MP4 file. */ -/* package */ final class TrackSampleTable { +public final class TrackSampleTable { /** The track corresponding to this sample table. */ public final Track track;