diff options
| -rw-r--r-- | media/java/android/media/MediaCodec.java | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/media/java/android/media/MediaCodec.java b/media/java/android/media/MediaCodec.java index ccc23b7069ba..8756f1e2266d 100644 --- a/media/java/android/media/MediaCodec.java +++ b/media/java/android/media/MediaCodec.java @@ -2320,6 +2320,10 @@ final public class MediaCodec { */ public final void start() { native_start(); + synchronized(mBufferLock) { + cacheBuffers(true /* input */); + cacheBuffers(false /* input */); + } } private native final void native_start(); @@ -3951,9 +3955,6 @@ 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 @@ -3992,9 +3993,6 @@ 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 |