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

Commit 86873be3 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Fix gapless SBR"

parents 0431f4ad b6e9b891
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -224,6 +224,7 @@ private:
    sp<IdleToLoadedState> mIdleToLoadedState;
    sp<FlushingState> mFlushingState;
    sp<SkipCutBuffer> mSkipCutBuffer;
    int32_t mSampleRate;

    AString mComponentName;
    uint32_t mFlags;
+10 −2
Original line number Diff line number Diff line
@@ -494,7 +494,8 @@ void ACodec::BufferInfo::checkReadFence(const char *dbg) {
////////////////////////////////////////////////////////////////////////////////

ACodec::ACodec()
    : mQuirks(0),
    : mSampleRate(0),
      mQuirks(0),
      mNode(0),
      mNativeWindowUsageBits(0),
      mSentFormat(false),
@@ -2452,6 +2453,7 @@ status_t ACodec::setupAACCodec(
    } else {
        ALOGW("did not set AudioAndroidAacPresentation due to error %d when setting AudioAac", res);
    }
    mSampleRate = sampleRate;
    return res;
}

@@ -4464,8 +4466,14 @@ void ACodec::sendFormatChange(const sp<AMessage> &reply) {
        reply->setRect("crop", left, top, right + 1, bottom + 1);
    } else if (mime == MEDIA_MIMETYPE_AUDIO_RAW &&
               (mEncoderDelay || mEncoderPadding)) {
        int32_t channelCount;
        int32_t channelCount, sampleRate;
        CHECK(notify->findInt32("channel-count", &channelCount));
        CHECK(mOutputFormat->findInt32("sample-rate", &sampleRate));
        if (mSampleRate != 0 && sampleRate != 0) {
            mEncoderDelay = mEncoderDelay * sampleRate / mSampleRate;
            mEncoderPadding = mEncoderPadding * sampleRate / mSampleRate;
            mSampleRate = sampleRate;
        }
        if (mSkipCutBuffer != NULL) {
            size_t prevbufsize = mSkipCutBuffer->size();
            if (prevbufsize != 0) {