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

Commit 3151219a authored by Wonsik Kim's avatar Wonsik Kim Committed by Cherrypicker Worker
Browse files

CCodecBufferChannel: remove assumption that pipeline clears quickly on input EOS

Bug: 223315440
Test: presubmit
Change-Id: I78dbf8062ddfec8861733c25cf85e2369c1cbf19
(cherry picked from commit 05b51202)
Merged-In: I78dbf8062ddfec8861733c25cf85e2369c1cbf19
parent a2469775
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -2098,12 +2098,13 @@ status_t CCodecBufferChannel::setSurface(const sp<Surface> &newSurface) {
}

PipelineWatcher::Clock::duration CCodecBufferChannel::elapsed() {
    // When client pushed EOS, we want all the work to be done quickly.
    // Otherwise, component may have stalled work due to input starvation up to
    // the sum of the delay in the pipeline.
    // TODO(b/231253301): When client pushed EOS, the pipeline could have less
    //                    number of frames.
    size_t n = 0;
    if (!mInputMetEos) {
    size_t outputDelay = mOutput.lock()->outputDelay;
    {
        Mutexed<Input>::Locked input(mInput);
        n = input->inputDelay + input->pipelineDelay + outputDelay;
    }