diff --git a/libraries/extractor/src/main/java/androidx/media3/extractor/amr/AmrExtractor.java b/libraries/extractor/src/main/java/androidx/media3/extractor/amr/AmrExtractor.java index 2260a55a8e..d7a6e0ec1b 100644 --- a/libraries/extractor/src/main/java/androidx/media3/extractor/amr/AmrExtractor.java +++ b/libraries/extractor/src/main/java/androidx/media3/extractor/amr/AmrExtractor.java @@ -139,9 +139,6 @@ public final class AmrExtractor implements Extractor { private static final byte[] amrSignatureNb = Util.getUtf8Bytes("#!AMR\n"); private static final byte[] amrSignatureWb = Util.getUtf8Bytes("#!AMR-WB\n"); - /** Theoretical maximum frame size for a AMR frame. */ - private static final int MAX_FRAME_SIZE_BYTES = frameSizeBytesByTypeWb[8]; - /** * The required number of samples in the stream with same sample size to classify the stream as a * constant-bitrate-stream. @@ -284,10 +281,12 @@ public final class AmrExtractor implements Extractor { hasOutputFormat = true; String mimeType = isWideBand ? MimeTypes.AUDIO_AMR_WB : MimeTypes.AUDIO_AMR_NB; int sampleRate = isWideBand ? SAMPLE_RATE_WB : SAMPLE_RATE_NB; + // Theoretical maximum frame size for a AMR frame. + int maxInputSize = isWideBand ? frameSizeBytesByTypeWb[8] : frameSizeBytesByTypeNb[7]; trackOutput.format( new Format.Builder() .setSampleMimeType(mimeType) - .setMaxInputSize(MAX_FRAME_SIZE_BYTES) + .setMaxInputSize(maxInputSize) .setChannelCount(1) .setSampleRate(sampleRate) .build()); diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.0.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.0.dump index 8430964566..6cab18f874 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.0.dump @@ -8,7 +8,7 @@ track 0: sample count = 218 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.unknown_length.dump index 8430964566..6cab18f874 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb.amr.unknown_length.dump @@ -8,7 +8,7 @@ track 0: sample count = 218 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.0.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.0.dump index ceef911773..2ed249d16b 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.0.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.0.dump @@ -11,7 +11,7 @@ track 0: sample count = 218 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.1.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.1.dump index a4cb365b4b..e12b429169 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.1.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.1.dump @@ -11,7 +11,7 @@ track 0: sample count = 146 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.2.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.2.dump index 57fb75cc10..b4d0d0d226 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.2.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.2.dump @@ -11,7 +11,7 @@ track 0: sample count = 73 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.3.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.3.dump index a77bd61f7e..bb9c247b6b 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.3.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.3.dump @@ -11,7 +11,7 @@ track 0: sample count = 1 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.unknown_length.dump b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.unknown_length.dump index 8430964566..6cab18f874 100644 --- a/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.unknown_length.dump +++ b/libraries/test_data/src/test/assets/extractordumps/amr/sample_nb_cbr.amr.unknown_length.dump @@ -8,7 +8,7 @@ track 0: sample count = 218 format 0: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample 0: diff --git a/libraries/test_data/src/test/assets/transformerdumps/amr/sample_nb.amr/original.dump b/libraries/test_data/src/test/assets/transformerdumps/amr/sample_nb.amr/original.dump index efc23b54d9..05ef9a17d8 100644 --- a/libraries/test_data/src/test/assets/transformerdumps/amr/sample_nb.amr/original.dump +++ b/libraries/test_data/src/test/assets/transformerdumps/amr/sample_nb.amr/original.dump @@ -1,6 +1,6 @@ format audio: sampleMimeType = audio/3gpp - maxInputSize = 61 + maxInputSize = 32 channelCount = 1 sampleRate = 8000 sample: