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

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

Merge "MediaCodecSource: Support zero length CSD from encoders" am: 4bdc846f...

Merge "MediaCodecSource: Support zero length CSD from encoders" am: 4bdc846f am: b2cb6a46 am: 0c619e89

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

Change-Id: I9522b38cd1508040967627e76eb37857189a26c8
parents 5db490c0 0c619e89
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -943,10 +943,17 @@ void MediaCodecSource::onMessageReceived(const sp<AMessage> &msg) {

            sp<MediaCodecBuffer> outbuf;
            status_t err = mEncoder->getOutputBuffer(index, &outbuf);
            if (err != OK || outbuf == NULL || outbuf->data() == NULL
                || outbuf->size() == 0) {
            if (err != OK || outbuf == NULL || outbuf->data() == NULL) {
                signalEOS();
                break;
            } else if (outbuf->size() == 0) {
                // Zero length CSD buffers are not treated as an error
                if (flags & MediaCodec::BUFFER_FLAG_CODECCONFIG) {
                    mEncoder->releaseOutputBuffer(index);
                } else {
                    signalEOS();
                }
                break;
            }

            MediaBufferBase *mbuf = new MediaBuffer(outbuf->size());