diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2015-11-03 17:48:54 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2015-11-03 17:48:54 -0800 |
commit | fc4da68969ef979905ce29018a22460fe8c73dba (patch) | |
tree | 51d6ef569397a4cfffc66af28581ba7f41e44c33 /media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp | |
parent | f140e521f51b2d48c1f983c2790f4ab55b6dfac9 (diff) | |
parent | a729f437f5f46efbd366721d7d4f398186ce77cd (diff) | |
download | frameworks_av-fc4da68969ef979905ce29018a22460fe8c73dba.zip frameworks_av-fc4da68969ef979905ce29018a22460fe8c73dba.tar.gz frameworks_av-fc4da68969ef979905ce29018a22460fe8c73dba.tar.bz2 |
Merge "nuplayer: Drop frames with DATACORRUPT flag"
Diffstat (limited to 'media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp b/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp index baea834..0bffafe 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp +++ b/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp @@ -597,6 +597,14 @@ bool NuPlayer::Decoder::handleAnOutputBuffer( reply->setSize("buffer-ix", index); reply->setInt32("generation", mBufferGeneration); + if ((flags & MediaCodec::BUFFER_FLAG_DATACORRUPT) && + AVNuUtils::get()->dropCorruptFrame()) { + ALOGV("[%s] dropping corrupt buffer at time %lld as requested.", + mComponentName.c_str(), (long long)timeUs); + reply->post(); + return true; + } + if (eos) { ALOGI("[%s] saw output EOS", mIsAudio ? "audio" : "video"); |