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

Commit fbf71624 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 54c38fdc 3c3763d2
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;