summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Wonsik Kim <wonsik@google.com> 2022-05-14 00:05:05 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2022-05-14 00:05:05 +0000
commit4f9ab851b350260be9958ef9d52e6a5f702bfaaf (patch)
treef809b54ada4c5bf8be130f6307febf9d3ea6d9ef
parent6562eb87f35f48999a34f27889b11e179269d5a8 (diff)
parent07358dfea5d63baf80608536c2a3dff6ed0f44e1 (diff)
Merge "MediaCodec: don't cache buffers until requested"
-rw-r--r--media/java/android/media/MediaCodec.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/media/java/android/media/MediaCodec.java b/media/java/android/media/MediaCodec.java
index 72dd2bd43eb6..3dc927c6442f 100644
--- a/media/java/android/media/MediaCodec.java
+++ b/media/java/android/media/MediaCodec.java
@@ -2282,10 +2282,6 @@ final public class MediaCodec {
*/
public final void start() {
native_start();
- synchronized(mBufferLock) {
- cacheBuffers(true /* input */);
- cacheBuffers(false /* input */);
- }
}
private native final void native_start();
@@ -3917,6 +3913,9 @@ final public class MediaCodec {
+ "objects and attach to QueueRequest objects.");
}
if (mCachedInputBuffers == null) {
+ cacheBuffers(true /* input */);
+ }
+ if (mCachedInputBuffers == null) {
throw new IllegalStateException();
}
// FIXME: check codec status
@@ -3955,6 +3954,9 @@ final public class MediaCodec {
+ "Please use getOutputFrame to get output frames.");
}
if (mCachedOutputBuffers == null) {
+ cacheBuffers(false /* input */);
+ }
+ if (mCachedOutputBuffers == null) {
throw new IllegalStateException();
}
// FIXME: check codec status