From aac2e9e1566a3bb0ef811ebd3a56b538324c95c1 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Mon, 24 Jan 2011 10:30:05 -0800 Subject: [PATCH] Make AwesomePlayer's reset process more verbose to track down ANRs (again) Change-Id: I0d66994cc4295fd5ceeaaf151ce913ed0dd995f9 related-to-bug: 3362836 --- media/libstagefright/AwesomePlayer.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp index 89b3dab46d733..11ac56ce296ee 100644 --- a/media/libstagefright/AwesomePlayer.cpp +++ b/media/libstagefright/AwesomePlayer.cpp @@ -378,11 +378,14 @@ status_t AwesomePlayer::setDataSource_l(const sp &extractor) { } void AwesomePlayer::reset() { + LOGI("reset"); + Mutex::Autolock autoLock(mLock); reset_l(); } void AwesomePlayer::reset_l() { + LOGI("reset_l"); mDisplayWidth = 0; mDisplayHeight = 0; @@ -408,6 +411,10 @@ void AwesomePlayer::reset_l() { } } + if (mFlags & PREPARING) { + LOGI("waiting until preparation is completes."); + } + while (mFlags & PREPARING) { mPreparedCondition.wait(mLock); } @@ -431,6 +438,8 @@ void AwesomePlayer::reset_l() { } mAudioSource.clear(); + LOGI("audio source cleared"); + mTimeSource = NULL; delete mAudioPlayer; @@ -471,6 +480,8 @@ void AwesomePlayer::reset_l() { IPCThreadState::self()->flushCommands(); } + LOGI("video source cleared"); + mDurationUs = -1; mFlags = 0; mExtractorFlags = 0; @@ -487,6 +498,8 @@ void AwesomePlayer::reset_l() { mFileSource.clear(); mBitrate = -1; + + LOGI("reset_l completed"); } void AwesomePlayer::notifyListener_l(int msg, int ext1, int ext2) {