Commit eb8c6862 by hoangtc Committed by Oliver Woodman

Fix a bug with MetadataRetriever getMedatadata query.

When getMedatadata from an ExtractorMediaPeriod, due to the MediaPeriod refreshing its Timeline twice, the MetadataRetriever may wrongly reset periodIndex of the current trackGroup to C.TIME_UNSET, which makes it unable to handle subsequent metadata queries.

This CL changes the MetadataRetriever to keep track of periodUid of the current trackGroup instead of period index. PeriodUid is not changed on timeline refreshing, so is not prone the existing problem.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=201969350
parent de57f098
......@@ -72,6 +72,8 @@ dependencies {
testImplementation 'org.robolectric:robolectric:' + robolectricVersion
testImplementation 'com.google.auto.value:auto-value-annotations:' + autoValueVersion
testAnnotationProcessor 'com.google.auto.value:auto-value:' + autoValueVersion
androidTestImplementation 'com.google.auto.value:auto-value-annotations:' + autoValueVersion
androidTestAnnotationProcessor 'com.google.auto.value:auto-value:' + autoValueVersion
}
ext {
......
......@@ -41,5 +41,7 @@ dependencies {
api 'com.google.truth:truth:' + truthVersion
implementation 'com.android.support:support-annotations:' + supportLibraryVersion
implementation project(modulePrefix + 'library-core')
implementation 'com.google.auto.value:auto-value-annotations:' + autoValueVersion
annotationProcessor 'com.google.auto.value:auto-value:' + autoValueVersion
testImplementation project(modulePrefix + 'testutils-robolectric')
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment