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

Commit bf4e3eca authored by christosts's avatar christosts Committed by Automerger Merge Worker
Browse files

Log additional NuPlayer information in bug reports am: 9aacf195

parents 1d320173 9aacf195
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -67,6 +67,7 @@ bool AWakeLock::acquire() {
            if (status.isOk()) {
                mWakeLockToken = binder;
                mWakeLockCount++;
                ALOGI("AwakeLock acquired");
                return true;
            }
        }
@@ -93,6 +94,7 @@ void AWakeLock::release(bool force) {
            IPCThreadState::self()->restoreCallingIdentity(token);
        }
        mWakeLockToken.clear();
        ALOGI("AwakeLock released");
    }
}

+10 −0
Original line number Diff line number Diff line
@@ -3032,6 +3032,16 @@ const char *NuPlayer::getDataSourceType() {
    }
 }

 void NuPlayer::dump(AString& logString) {
    logString.append("renderer(");
    if (mRenderer != nullptr) {
        mRenderer->dump(logString);
    } else {
        logString.append("null");
    }
    logString.append(")");
 }

// Modular DRM begin
status_t NuPlayer::prepareDrm(const uint8_t uuid[16], const Vector<uint8_t> &drmSessionId)
{
+5 −2
Original line number Diff line number Diff line
@@ -969,13 +969,16 @@ status_t NuPlayerDriver::dump(
    }

    if (locked) {
        snprintf(buf, sizeof(buf), "  state(%d), atEOS(%d), looping(%d), autoLoop(%d)\n",
        snprintf(buf, sizeof(buf), "  state(%d), atEOS(%d), looping(%d), autoLoop(%d), ",
                mState, mAtEOS, mLooping, mAutoLoop);
        logString.append(buf);
        mPlayer->dump(logString);
        logString.append("\n");
        mLock.unlock();
    } else {
        snprintf(buf, sizeof(buf), "  NPD(%p) lock is taken\n", this);
    }
        logString.append(buf);
    }

    for (size_t i = 0; i < trackStats.size(); ++i) {
        const sp<AMessage> &stats = trackStats.itemAt(i);
+41 −0
Original line number Diff line number Diff line
@@ -478,6 +478,23 @@ void NuPlayer::Renderer::closeAudioSink() {
    msg->postAndAwaitResponse(&response);
}

void NuPlayer::Renderer::dump(AString& logString) {
    Mutex::Autolock autoLock(mLock);
    logString.append("paused(");
    logString.append(mPaused);
    logString.append("), offloading(");
    logString.append(offloadingAudio());
    logString.append("), wakelock(acquired=");
    mWakelockAcquireEvent.dump(logString);
    logString.append(", timeout=");
    mWakelockTimeoutEvent.dump(logString);
    logString.append(", release=");
    mWakelockReleaseEvent.dump(logString);
    logString.append(", cancel=");
    mWakelockCancelEvent.dump(logString);
    logString.append(")");
}

void NuPlayer::Renderer::changeAudioFormat(
        const sp<AMessage> &format,
        bool offloadOnly,
@@ -792,6 +809,10 @@ void NuPlayer::Renderer::onMessageReceived(const sp<AMessage> &msg) {
        {
            int32_t generation;
            CHECK(msg->findInt32("drainGeneration", &generation));
            mWakelockTimeoutEvent.updateValues(
                    uptimeMillis(),
                    generation,
                    mAudioOffloadPauseTimeoutGeneration);
            if (generation != mAudioOffloadPauseTimeoutGeneration) {
                break;
            }
@@ -807,6 +828,10 @@ void NuPlayer::Renderer::onMessageReceived(const sp<AMessage> &msg) {
        {
            int32_t generation;
            CHECK(msg->findInt32("drainGeneration", &generation));
            mWakelockReleaseEvent.updateValues(
                uptimeMillis(),
                generation,
                mAudioOffloadPauseTimeoutGeneration);
            if (generation != mAudioOffloadPauseTimeoutGeneration) {
                break;
            }
@@ -1914,6 +1939,9 @@ void NuPlayer::Renderer::onAudioTearDown(AudioTearDownReason reason) {
void NuPlayer::Renderer::startAudioOffloadPauseTimeout() {
    if (offloadingAudio()) {
        mWakeLock->acquire();
        mWakelockAcquireEvent.updateValues(uptimeMillis(),
                                           mAudioOffloadPauseTimeoutGeneration,
                                           mAudioOffloadPauseTimeoutGeneration);
        sp<AMessage> msg = new AMessage(kWhatAudioOffloadPauseTimeout, this);
        msg->setInt32("drainGeneration", mAudioOffloadPauseTimeoutGeneration);
        msg->post(kOffloadPauseMaxUs);
@@ -1930,6 +1958,9 @@ void NuPlayer::Renderer::cancelAudioOffloadPauseTimeout() {
    // Note: The acquired wakelock prevents the device from suspending
    // immediately after offload pause (in case a resume happens shortly thereafter).
    mWakeLock->release(true);
    mWakelockCancelEvent.updateValues(uptimeMillis(),
                                      mAudioOffloadPauseTimeoutGeneration,
                                      mAudioOffloadPauseTimeoutGeneration);
    ++mAudioOffloadPauseTimeoutGeneration;
}

@@ -2165,4 +2196,14 @@ void NuPlayer::Renderer::onChangeAudioFormat(
    notify->post();
}

void NuPlayer::Renderer::WakeLockEvent::dump(AString& logString) {
  logString.append("[");
  logString.append(mTimeMs);
  logString.append(",");
  logString.append(mEventTimeoutGeneration);
  logString.append(",");
  logString.append(mRendererTimeoutGeneration);
  logString.append("]");
}

}  // namespace android
+2 −0
Original line number Diff line number Diff line
@@ -104,6 +104,8 @@ struct NuPlayer : public AHandler {

    void setTargetBitrate(int bitrate /* bps */);

    void dump(AString& logString);

protected:
    virtual ~NuPlayer();

Loading