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

Commit d353c840 authored by James Dong's avatar James Dong Committed by Android (Google) Code Review
Browse files

Merge "HW audio encoder expects timestamp via kKeyTime from each input buffer" into gingerbread

parents 46b84d5b d015ccf6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -49,6 +49,7 @@ enum {
    kKeyNTPTime           = 'ntpT',  // uint64_t (ntp-timestamp)
    kKeyTargetTime        = 'tarT',  // int64_t (usecs)
    kKeyDriftTime         = 'dftT',  // int64_t (usecs)
    kKeyAnchorTime        = 'ancT',  // int64_t (usecs)
    kKeyDuration          = 'dura',  // int64_t (usecs)
    kKeyColorFormat       = 'colf',
    kKeyPlatformPrivate   = 'priv',  // pointer
+3 −1
Original line number Diff line number Diff line
@@ -316,8 +316,10 @@ status_t AudioSource::read(
        }

        if (numFramesRecorded == 0) {
            buffer->meta_data()->setInt64(kKeyTime, mStartTimeUs);
            buffer->meta_data()->setInt64(kKeyAnchorTime, mStartTimeUs);
        }

        buffer->meta_data()->setInt64(kKeyTime, mStartTimeUs + mPrevSampleTimeUs);
        buffer->meta_data()->setInt64(kKeyDriftTime, readTimeUs - mInitialReadTimeUs);
        CHECK(timestampUs > mPrevSampleTimeUs);
        mPrevSampleTimeUs = timestampUs;
+1 −1
Original line number Diff line number Diff line
@@ -243,7 +243,7 @@ status_t AACEncoder::read(
            if (mInputBuffer->meta_data()->findInt64(kKeyDriftTime, &timeUs)) {
                wallClockTimeUs = timeUs;
            }
            if (mInputBuffer->meta_data()->findInt64(kKeyTime, &timeUs)) {
            if (mInputBuffer->meta_data()->findInt64(kKeyAnchorTime, &timeUs)) {
                mAnchorTimeUs = timeUs;
            }
            readFromSource = true;
+1 −1
Original line number Diff line number Diff line
@@ -174,7 +174,7 @@ status_t AMRNBEncoder::read(
            if (mInputBuffer->meta_data()->findInt64(kKeyDriftTime, &timeUs)) {
                wallClockTimeUs = timeUs;
            }
            if (mInputBuffer->meta_data()->findInt64(kKeyTime, &timeUs)) {
            if (mInputBuffer->meta_data()->findInt64(kKeyAnchorTime, &timeUs)) {
                mAnchorTimeUs = timeUs;
            }
        } else {
+1 −1
Original line number Diff line number Diff line
@@ -224,7 +224,7 @@ status_t AMRWBEncoder::read(
            if (mInputBuffer->meta_data()->findInt64(kKeyDriftTime, &timeUs)) {
                wallClockTimeUs = timeUs;
            }
            if (mInputBuffer->meta_data()->findInt64(kKeyTime, &timeUs)) {
            if (mInputBuffer->meta_data()->findInt64(kKeyAnchorTime, &timeUs)) {
                mAnchorTimeUs = timeUs;
            }
            readFromSource = true;