Adjust LAME MP3 trim metadata to decoded PCM timeline#3200
Open
Tolriq wants to merge 1 commit intoandroidx:mainfrom
Open
Adjust LAME MP3 trim metadata to decoded PCM timeline#3200Tolriq wants to merge 1 commit intoandroidx:mainfrom
Tolriq wants to merge 1 commit intoandroidx:mainfrom
Conversation
LAME/Xing encoder delay and padding fields are offset from the skip/discard samples used when trimming decoded PCM. Account for this offset for LAME, Lavf, and Lavc headers when parsing gapless metadata. This matches the decoded PCM trimming expectations used by FFmpeg and updates extractor dumps and the gapless end-to-end assertion accordingly. Test: ./gradlew :lib-extractor:testDebugUnitTest --tests androidx.media3.extractor.mp3.ConstantBitrateSeekerTest --tests androidx.media3.extractor.mp3.Mp3ExtractorTest --tests androidx.media3.extractor.mp3.XingFrameTest Test: ./gradlew :lib-exoplayer:testDebugUnitTest --tests androidx.media3.exoplayer.e2etest.EndToEndGaplessTest
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
LAME/Xing encoder delay and padding fields are offset from the skip/discard samples used when trimming decoded PCM. Account for this offset for LAME, Lavf, and Lavc headers when parsing gapless metadata.
This matches the decoded PCM trimming expectations used by FFmpeg and updates extractor dumps and the gapless end-to-end assertion accordingly.
Test: ./gradlew :lib-extractor:testDebugUnitTest --tests androidx.media3.extractor.mp3.ConstantBitrateSeekerTest --tests androidx.media3.extractor.mp3.Mp3ExtractorTest --tests androidx.media3.extractor.mp3.XingFrameTest
Test: ./gradlew :lib-exoplayer:testDebugUnitTest --tests androidx.media3.exoplayer.e2etest.EndToEndGaplessTest