3gp或者mp4文件的duration长度为0,在SampleIterator::seekTo函数返回错误码-1007

如果3gp或者mp4文件的duration长度为0,则会在SampleIterator::seekTo函数返回错误码-1007,即ERROR_MALFORMED错误。

if (mTable->mSampleToChunkOffset < 0

|| mTable->mChunkOffsetOffset < 0
|| mTable->mSampleSizeOffset < 0
|| mTable->mTimeToSampleCount == 0) {
return ERROR_MALFORMED;

}


调用关系为:

1. MPEG4Extractor类的read函数调用SampleTable类的getMetaDataForSample函数,

status_t err =
mSampleTable->getMetaDataForSample(
mCurrentSampleIndex, &offset, &size, &dts, &isSyncSample);

2.SampleTable类的getMetaDataForSample函数调用SampleIterator类的seekTo函数

status_t err;
if ((err = mSampleIterator->seekTo(sampleIndex)) != OK) {
return err;
}

3.SampleIterator类的seekTo函数返回ERROR_MALFORMED错误

if (mTable->mSampleToChunkOffset < 0

|| mTable->mChunkOffsetOffset < 0
|| mTable->mSampleSizeOffset < 0
|| mTable->mTimeToSampleCount == 0) {
return ERROR_MALFORMED;

}


发布了0 篇原创文章 · 获赞 1 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览