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

Commit 8fb0a5ff authored by Marco Nelissen's avatar Marco Nelissen Committed by Android (Google) Code Review
Browse files

Merge "Improve AudioPlayer position reporting"

parents 2bff6407 1eb0e4a2
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -437,8 +437,11 @@ size_t AudioPlayer::fillBuffer(void *data, size_t size) {
                        kKeyTime, &mPositionTimeMediaUs));

            mPositionTimeRealUs =
                ((mNumFramesPlayed + size_done / mFrameSize) * 1000000)
                -mLatencyUs + ((mNumFramesPlayed + size_done / mFrameSize) * 1000000)
                    / mSampleRate;
            if (mPositionTimeRealUs < 0) {
                mPositionTimeRealUs = 0;
            }

            ALOGV("buffer->size() = %d, "
                 "mPositionTimeMediaUs=%.2f mPositionTimeRealUs=%.2f",
@@ -493,7 +496,9 @@ int64_t AudioPlayer::getRealTimeUs() {
int64_t AudioPlayer::getRealTimeUsLocked() const {
    CHECK(mStarted);
    CHECK_NE(mSampleRate, 0);
    return -mLatencyUs + (mNumFramesPlayed * 1000000) / mSampleRate;
    int64_t t = -mLatencyUs + (mNumFramesPlayed * 1000000) / mSampleRate;
    if (t < 0) return 0;
    return t;
}

int64_t AudioPlayer::getMediaTimeUs() {