Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 90c65657 authored by Andreas Huber's avatar Andreas Huber
Browse files

Make AwesomePlayer's reset process more verbose to track down ANRs.

Change-Id: I8c9fa872263796ba61b3e8de6bc05d50f57833f5
related-to-bug: 3302399
parent cf7775a8
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -357,11 +357,15 @@ status_t AwesomePlayer::setDataSource_l(const sp<MediaExtractor> &extractor) {
}

void AwesomePlayer::reset() {
    LOGI("reset");

    Mutex::Autolock autoLock(mLock);
    reset_l();
}

void AwesomePlayer::reset_l() {
    LOGI("reset_l");

    if (mDecryptHandle != NULL) {
            mDrmManagerClient->setPlaybackStatus(mDecryptHandle,
                    Playback::STOP, 0);
@@ -384,6 +388,10 @@ void AwesomePlayer::reset_l() {
        }
    }

    if (mFlags & PREPARING) {
        LOGI("waiting until preparation is completes.");
    }

    while (mFlags & PREPARING) {
        mPreparedCondition.wait(mLock);
    }
@@ -407,6 +415,8 @@ void AwesomePlayer::reset_l() {
    }
    mAudioSource.clear();

    LOGI("audio source cleared");

    mTimeSource = NULL;

    delete mAudioPlayer;
@@ -447,6 +457,8 @@ void AwesomePlayer::reset_l() {
        IPCThreadState::self()->flushCommands();
    }

    LOGI("video source cleared");

    mDurationUs = -1;
    mFlags = 0;
    mExtractorFlags = 0;
@@ -463,6 +475,8 @@ void AwesomePlayer::reset_l() {
    mFileSource.clear();

    mBitrate = -1;

    LOGI("reset_l completed");
}

void AwesomePlayer::notifyListener_l(int msg, int ext1, int ext2) {