summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-12-21 10:22:33 -0800
committerAndreas Huber <andih@google.com>2010-12-21 10:22:33 -0800
commit3831a066bcf1019864a94d2bc7b4c9241efc5c22 (patch)
tree13addfa6d2406f60574c3393a153f133d13690b9 /media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
parent54c02a58e5ad4b7b2668f63caa9d189e958f5544 (diff)
downloadframeworks_av-3831a066bcf1019864a94d2bc7b4c9241efc5c22.zip
frameworks_av-3831a066bcf1019864a94d2bc7b4c9241efc5c22.tar.gz
frameworks_av-3831a066bcf1019864a94d2bc7b4c9241efc5c22.tar.bz2
Squashed commit of the following:
commit 63be8ceb8b2354fb997a277c0092abae015ecf10 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:45:34 2010 -0800 Enable handling of discontinuities that involve potential format changes. Change-Id: I21848a113db8764abb54bdcf302b0923253eaf4d commit d18a7f80ec09af382026809263dcbbfa9e7a9ec8 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:45:01 2010 -0800 Signal whether or not a format change occured as part of the discontinuity. Change-Id: I06e64f542f4369549c9cebbb892dc612346ae43d commit c400adbd5fdbd65cfef7aed9ec65bcaace4bb69b Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:44:46 2010 -0800 A little more instrumentation of ACodec Change-Id: I07f4aeccbbd15cdd9f80f48c3f92ee984ef6d92b commit 1d802ee01f47b3cdc5b89502cec7fbb595e197a3 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:43:58 2010 -0800 Only sync audio/video queues if both types of media are actually present. Change-Id: Ic88edf9bb1ebd4034c08747cce9877a4e28e0d35 commit e402da39d9a4d8b75653a78f728e20a3ef0fb497 Author: Andreas Huber <andih@google.com> Date: Fri Dec 17 13:42:24 2010 -0800 Disable the random seek for now. Change-Id: Iddd597b546e2f229e88214f9bdd6452bb188105e Change-Id: I27c4d9ba916080be94ce6117dbb095e9022ed62b
Diffstat (limited to 'media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp')
-rw-r--r--media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp b/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
index d1ed222..1d78808 100644
--- a/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
+++ b/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
@@ -42,7 +42,8 @@ NuPlayer::Decoder::Decoder(
NuPlayer::Decoder::~Decoder() {
}
-void NuPlayer::Decoder::configure(const sp<MetaData> &meta) {
+void NuPlayer::Decoder::configure(
+ const sp<MetaData> &meta, bool ignoreCodecSpecificData) {
CHECK(mCodec == NULL);
CHECK(mWrapper == NULL);
@@ -54,6 +55,10 @@ void NuPlayer::Decoder::configure(const sp<MetaData> &meta) {
sp<AMessage> format = makeFormat(meta);
+ if (ignoreCodecSpecificData) {
+ mCSD.clear();
+ }
+
if (mSurface != NULL) {
format->setObject("surface", mSurface);
}
@@ -282,5 +287,14 @@ void NuPlayer::Decoder::signalResume() {
}
}
+void NuPlayer::Decoder::initiateShutdown() {
+ if (mCodec != NULL) {
+ mCodec->initiateShutdown();
+ } else {
+ CHECK(mWrapper != NULL);
+ mWrapper->initiateShutdown();
+ }
+}
+
} // namespace android