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

Commit eac3f36c authored by Eric Laurent's avatar Eric Laurent Committed by Android (Google) Code Review
Browse files

Merge "fix deep buffer logic in NuPlayer." into lmp-mr1-dev

parents aac745f2 d88c3caf
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1119,7 +1119,7 @@ void NuPlayer::openAudioSink(const sp<AMessage> &format, bool offloadOnly) {
    // Current code will just make that we select deep buffer
    // with video which should not be a problem as it should
    // not prevent from keeping A/V sync.
    if (hasVideo &&
    if (!hasVideo &&
            mSource->getDuration(&durationUs) == OK &&
            durationUs
                > AUDIO_SINK_MIN_DEEP_BUFFER_DURATION_US) {
+7 −6
Original line number Diff line number Diff line
@@ -1374,8 +1374,9 @@ bool NuPlayer::Renderer::onOpenAudioSink(
                return offloadingAudio();
            }
            ALOGV("openAudioSink: try to open AudioSink in offload mode");
            flags |= AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD;
            flags &= ~AUDIO_OUTPUT_FLAG_DEEP_BUFFER;
            uint32_t offloadFlags = flags;
            offloadFlags |= AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD;
            offloadFlags &= ~AUDIO_OUTPUT_FLAG_DEEP_BUFFER;
            audioSinkChanged = true;
            mAudioSink->close();
            err = mAudioSink->open(
@@ -1386,7 +1387,7 @@ bool NuPlayer::Renderer::onOpenAudioSink(
                    8 /* bufferCount */,
                    &NuPlayer::Renderer::AudioSinkCallback,
                    this,
                    (audio_output_flags_t)flags,
                    (audio_output_flags_t)offloadFlags,
                    &offloadInfo);

            if (err == OK) {
@@ -1410,9 +1411,9 @@ bool NuPlayer::Renderer::onOpenAudioSink(
        }
    }
    if (!offloadOnly && !offloadingAudio()) {
        flags &= ~AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD;
        ALOGV("openAudioSink: open AudioSink in NON-offload mode");

        uint32_t pcmFlags = flags;
        pcmFlags &= ~AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD;
        audioSinkChanged = true;
        mAudioSink->close();
        mCurrentOffloadInfo = AUDIO_INFO_INITIALIZER;
@@ -1424,7 +1425,7 @@ bool NuPlayer::Renderer::onOpenAudioSink(
                    8 /* bufferCount */,
                    NULL,
                    NULL,
                    (audio_output_flags_t)flags),
                    (audio_output_flags_t)pcmFlags),
                 (status_t)OK);
        mAudioSink->start();
    }