Merge "Improve seeking for Xing header without TOC" am: cd17b7453d

am: 28301383d3

Change-Id: Ic2be37ece7c93a5633b28ec3e73e0d8796c9ac7b
gugelfrei
Marco Nelissen 6 years ago committed by android-build-merger
commit 1204711cd9

@ -44,7 +44,7 @@ bool XINGSeeker::getDuration(int64_t *durationUs) {
}
bool XINGSeeker::getOffsetForTime(int64_t *timeUs, off64_t *pos) {
if (mSizeBytes == 0 || !mTOCValid || mDurationUs < 0) {
if (mSizeBytes == 0 || mDurationUs < 0) {
return false;
}
@ -54,7 +54,7 @@ bool XINGSeeker::getOffsetForTime(int64_t *timeUs, off64_t *pos) {
fx = 0.0f;
} else if( percent >= 100.0f ) {
fx = 256.0f;
} else {
} else if (mTOCValid) {
int a = (int)percent;
float fa, fb;
if ( a == 0 ) {
@ -68,6 +68,8 @@ bool XINGSeeker::getOffsetForTime(int64_t *timeUs, off64_t *pos) {
fb = 256.0f;
}
fx = fa + (fb-fa)*(percent-a);
} else {
fx = percent * 2.56f;
}
*pos = (int)((1.0f/256.0f)*fx*mSizeBytes) + mFirstFramePos;

Loading…
Cancel
Save