diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghReader.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghReader.java index 09e7fbc54d..3a2fb5ebed 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghReader.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghReader.java @@ -32,7 +32,6 @@ 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.MpeghUtil; import androidx.media3.extractor.TrackOutput; import com.google.common.collect.ImmutableList; import java.lang.annotation.Documented; @@ -164,6 +163,7 @@ public final class MpeghReader implements ElementaryStreamReader { if (continueRead(data, headerScratchBytes, MpeghUtil.MAX_MHAS_PACKET_HEADER_SIZE)) { parseHeader(); // write the packet header to output + headerScratchBytes.setPosition(0); output.sampleData(headerScratchBytes, header.headerLength); // MHAS packet header finished -> obtain the packet payload state = STATE_READING_PACKET_PAYLOAD; @@ -177,7 +177,6 @@ public final class MpeghReader implements ElementaryStreamReader { } writeSampleData(data); if (payloadBytesRead == header.packetLength) { - dataScratchBytes.setPosition(0); ParsableBitArray bitArray = new ParsableBitArray(dataScratchBytes.getData()); if (header.packetType == MpeghUtil.MhasPacketHeader.PACTYP_MPEGH3DACFG) { parseConfig(bitArray); @@ -254,7 +253,6 @@ public final class MpeghReader implements ElementaryStreamReader { * @throws ParserException if a valid {@link MpeghUtil.Mpegh3daConfig} cannot be parsed. */ private void parseHeader() throws ParserException { - headerScratchBytes.setPosition(0); // parse the MHAS packet header header = MpeghUtil.parseMhasPacketHeader(new ParsableBitArray(headerScratchBytes.getData())); diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/MpeghUtil.java b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghUtil.java similarity index 99% rename from libraries/extractor/src/main/java/androidx/media3/extractor/MpeghUtil.java rename to libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghUtil.java index 58b2118af0..580fa2aa5d 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/MpeghUtil.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/ts/MpeghUtil.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.extractor.ts; import static java.lang.annotation.ElementType.TYPE_USE; @@ -31,7 +31,7 @@ import java.lang.annotation.Target; /** Utility methods for parsing MPEG-H frames, which are access units in MPEG-H bitstreams. */ @UnstableApi -public final class MpeghUtil { +/* package */ final class MpeghUtil { /** See ISO_IEC_23003-8;2022, 14.4.4. */ private static final int MHAS_SYNC_WORD = 0xC001A5;