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

Commit c3aa7691 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "CCodec: fix handling buffers in extra slots" am: 29d39630

Original change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1793533

Change-Id: I2c7e0888c819f847b1fd9e6d18d9b8deb5313fd9
parents f3678488 29d39630
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -248,7 +248,7 @@ status_t CCodecBufferChannel::queueInputBufferInternal(
                bool released = input->buffers->releaseBuffer(buffer, nullptr, true);
                ALOGV("[%s] queueInputBuffer: buffer copied; %sreleased",
                      mName, released ? "" : "not ");
                buffer.clear();
                buffer = copy;
            } else {
                ALOGW("[%s] queueInputBuffer: failed to copy a buffer; this may cause input "
                      "buffer starvation on component.", mName);
@@ -335,10 +335,10 @@ status_t CCodecBufferChannel::queueInputBufferInternal(
    } else {
        Mutexed<Input>::Locked input(mInput);
        bool released = false;
        if (buffer) {
            released = input->buffers->releaseBuffer(buffer, nullptr, true);
        } else if (copy) {
        if (copy) {
            released = input->extraBuffers.releaseSlot(copy, nullptr, true);
        } else if (buffer) {
            released = input->buffers->releaseBuffer(buffer, nullptr, true);
        }
        ALOGV("[%s] queueInputBuffer: buffer%s %sreleased",
              mName, (buffer == nullptr) ? "(copy)" : "", released ? "" : "not ");
+1 −0
Original line number Diff line number Diff line
@@ -129,6 +129,7 @@ sp<Codec2Buffer> InputBuffers::cloneAndReleaseBuffer(const sp<MediaCodecBuffer>
    if (!copy->copy(c2buffer)) {
        return nullptr;
    }
    copy->meta()->extend(buffer->meta());
    return copy;
}