Loading media/libstagefright/NuMediaExtractor.cpp +20 −22 Original line number Diff line number Diff line Loading @@ -430,18 +430,6 @@ status_t NuMediaExtractor::unselectTrack(size_t index) { return OK; } void NuMediaExtractor::releaseOneSample(TrackInfo *info) { if (info == NULL || info->mSamples.empty()) { return; } auto it = info->mSamples.begin(); if (it->mBuffer != NULL) { it->mBuffer->release(); } info->mSamples.erase(it); } void NuMediaExtractor::releaseTrackSamples(TrackInfo *info) { if (info == NULL) { return; Loading Loading @@ -472,7 +460,7 @@ ssize_t NuMediaExtractor::fetchAllTrackSamples( fetchTrackSamples(info, seekTimeUs, mode); status_t err = info->mFinalResult; if (err != OK && err != ERROR_END_OF_STREAM) { if (err != OK && err != ERROR_END_OF_STREAM && info->mSamples.empty()) { return err; } Loading Loading @@ -527,14 +515,6 @@ void NuMediaExtractor::fetchTrackSamples(TrackInfo *info, info->mFinalResult = err; if (err != OK && err != ERROR_END_OF_STREAM) { ALOGW("read on track %zu failed with error %d", info->mTrackIndex, err); size_t count = mediaBuffers.size(); for (size_t id = 0; id < count; ++id) { MediaBufferBase *mbuf = mediaBuffers[id]; if (mbuf != NULL) { mbuf->release(); } } return; } size_t count = mediaBuffers.size(); Loading Loading @@ -584,8 +564,26 @@ status_t NuMediaExtractor::advance() { TrackInfo *info = &mSelectedTracks.editItemAt(minIndex); releaseOneSample(info); if (info == NULL || info->mSamples.empty()) { return ERROR_END_OF_STREAM; } auto it = info->mSamples.begin(); if (it->mBuffer != NULL) { it->mBuffer->release(); } info->mSamples.erase(it); if (info->mSamples.empty()) { minIndex = fetchAllTrackSamples(); if (minIndex < 0) { return ERROR_END_OF_STREAM; } info = &mSelectedTracks.editItemAt(minIndex); if (info == NULL || info->mSamples.empty()) { return ERROR_END_OF_STREAM; } } return OK; } Loading media/libstagefright/include/media/stagefright/NuMediaExtractor.h +0 −1 Original line number Diff line number Diff line Loading @@ -149,7 +149,6 @@ private: MediaSource::ReadOptions::SeekMode mode = MediaSource::ReadOptions::SEEK_CLOSEST_SYNC); void releaseOneSample(TrackInfo *info); void releaseTrackSamples(TrackInfo *info); void releaseAllTrackSamples(); Loading Loading
media/libstagefright/NuMediaExtractor.cpp +20 −22 Original line number Diff line number Diff line Loading @@ -430,18 +430,6 @@ status_t NuMediaExtractor::unselectTrack(size_t index) { return OK; } void NuMediaExtractor::releaseOneSample(TrackInfo *info) { if (info == NULL || info->mSamples.empty()) { return; } auto it = info->mSamples.begin(); if (it->mBuffer != NULL) { it->mBuffer->release(); } info->mSamples.erase(it); } void NuMediaExtractor::releaseTrackSamples(TrackInfo *info) { if (info == NULL) { return; Loading Loading @@ -472,7 +460,7 @@ ssize_t NuMediaExtractor::fetchAllTrackSamples( fetchTrackSamples(info, seekTimeUs, mode); status_t err = info->mFinalResult; if (err != OK && err != ERROR_END_OF_STREAM) { if (err != OK && err != ERROR_END_OF_STREAM && info->mSamples.empty()) { return err; } Loading Loading @@ -527,14 +515,6 @@ void NuMediaExtractor::fetchTrackSamples(TrackInfo *info, info->mFinalResult = err; if (err != OK && err != ERROR_END_OF_STREAM) { ALOGW("read on track %zu failed with error %d", info->mTrackIndex, err); size_t count = mediaBuffers.size(); for (size_t id = 0; id < count; ++id) { MediaBufferBase *mbuf = mediaBuffers[id]; if (mbuf != NULL) { mbuf->release(); } } return; } size_t count = mediaBuffers.size(); Loading Loading @@ -584,8 +564,26 @@ status_t NuMediaExtractor::advance() { TrackInfo *info = &mSelectedTracks.editItemAt(minIndex); releaseOneSample(info); if (info == NULL || info->mSamples.empty()) { return ERROR_END_OF_STREAM; } auto it = info->mSamples.begin(); if (it->mBuffer != NULL) { it->mBuffer->release(); } info->mSamples.erase(it); if (info->mSamples.empty()) { minIndex = fetchAllTrackSamples(); if (minIndex < 0) { return ERROR_END_OF_STREAM; } info = &mSelectedTracks.editItemAt(minIndex); if (info == NULL || info->mSamples.empty()) { return ERROR_END_OF_STREAM; } } return OK; } Loading
media/libstagefright/include/media/stagefright/NuMediaExtractor.h +0 −1 Original line number Diff line number Diff line Loading @@ -149,7 +149,6 @@ private: MediaSource::ReadOptions::SeekMode mode = MediaSource::ReadOptions::SEEK_CLOSEST_SYNC); void releaseOneSample(TrackInfo *info); void releaseTrackSamples(TrackInfo *info); void releaseAllTrackSamples(); Loading