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

Commit aed7e541 authored by Ruchika Ashtankar's avatar Ruchika Ashtankar
Browse files

Benchmark: Update EOS condition for SDK encoder

Test: atest com.android.media.benchmark.tests.EncoderTest

Bug: 148757097

Change-Id: I90c7884ae06843d1851067229850cf215a1e46e6
parent 377e9b02
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -134,7 +134,6 @@ public class Decoder {
                    mStats.addOutputTime();
                    onOutputAvailable(mediaCodec, outputBufferId, bufferInfo);
                    if (mSawOutputEOS) {
                        Log.i(TAG, "Saw output EOS");
                        synchronized (mLock) { mLock.notify(); }
                    }
                }
@@ -211,9 +210,6 @@ public class Decoder {
                    }
                    onOutputAvailable(mCodec, outputBufferId, outputBufferInfo);
                }
                if (outputBufferInfo.flags == MediaCodec.BUFFER_FLAG_END_OF_STREAM) {
                    Log.i(TAG, "Saw output EOS");
                }
            }
        }
        mInputBuffer.clear();
@@ -269,8 +265,8 @@ public class Decoder {
            BufferInfo bufInfo = mInputBufferInfo.get(mIndex);
            inputCodecBuffer.put(mInputBuffer.get(mIndex).array());
            mIndex++;
            if (bufInfo.flags == MediaCodec.BUFFER_FLAG_END_OF_STREAM) {
                mSawInputEOS = true;
            mSawInputEOS = (bufInfo.flags & MediaCodec.BUFFER_FLAG_END_OF_STREAM) != 0;
            if (mSawInputEOS) {
                Log.i(TAG, "Saw input EOS");
            }
            mStats.addFrameSize(bufInfo.size);
@@ -308,6 +304,9 @@ public class Decoder {
            }
        }
        mediaCodec.releaseOutputBuffer(outputBufferId, false);
        mSawOutputEOS = (outputBufferInfo.flags == MediaCodec.BUFFER_FLAG_END_OF_STREAM);
        mSawOutputEOS = (outputBufferInfo.flags & MediaCodec.BUFFER_FLAG_END_OF_STREAM) != 0;
        if (mSawOutputEOS) {
            Log.i(TAG, "Saw output EOS");
        }
    }
}
+3 −3
Original line number Diff line number Diff line
@@ -260,12 +260,12 @@ public class Encoder {
        }
        mStats.addFrameSize(outputBuffer.remaining());
        mediaCodec.releaseOutputBuffer(outputBufferId, false);
        mSawOutputEOS = (outputBufferInfo.flags == MediaCodec.BUFFER_FLAG_END_OF_STREAM);
        mSawOutputEOS = (outputBufferInfo.flags & MediaCodec.BUFFER_FLAG_END_OF_STREAM) != 0;
    }

    private void onInputAvailable(MediaCodec mediaCodec, int inputBufferId) throws IOException {
        if (mSawOutputEOS || inputBufferId < 0) {
            if (mSawOutputEOS) {
        if (mSawInputEOS || inputBufferId < 0) {
            if (mSawInputEOS) {
                Log.i(TAG, "Saw input EOS");
            }
            return;