Merge "MediaCodec: don't cache buffers until requested"
This commit is contained in:
@@ -2282,10 +2282,6 @@ final public class MediaCodec {
|
|||||||
*/
|
*/
|
||||||
public final void start() {
|
public final void start() {
|
||||||
native_start();
|
native_start();
|
||||||
synchronized(mBufferLock) {
|
|
||||||
cacheBuffers(true /* input */);
|
|
||||||
cacheBuffers(false /* input */);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
private native final void native_start();
|
private native final void native_start();
|
||||||
|
|
||||||
@@ -3916,6 +3912,9 @@ final public class MediaCodec {
|
|||||||
+ "Please obtain MediaCodec.LinearBlock or HardwareBuffer "
|
+ "Please obtain MediaCodec.LinearBlock or HardwareBuffer "
|
||||||
+ "objects and attach to QueueRequest objects.");
|
+ "objects and attach to QueueRequest objects.");
|
||||||
}
|
}
|
||||||
|
if (mCachedInputBuffers == null) {
|
||||||
|
cacheBuffers(true /* input */);
|
||||||
|
}
|
||||||
if (mCachedInputBuffers == null) {
|
if (mCachedInputBuffers == null) {
|
||||||
throw new IllegalStateException();
|
throw new IllegalStateException();
|
||||||
}
|
}
|
||||||
@@ -3954,6 +3953,9 @@ final public class MediaCodec {
|
|||||||
+ "is not compatible with CONFIGURE_FLAG_USE_BLOCK_MODEL. "
|
+ "is not compatible with CONFIGURE_FLAG_USE_BLOCK_MODEL. "
|
||||||
+ "Please use getOutputFrame to get output frames.");
|
+ "Please use getOutputFrame to get output frames.");
|
||||||
}
|
}
|
||||||
|
if (mCachedOutputBuffers == null) {
|
||||||
|
cacheBuffers(false /* input */);
|
||||||
|
}
|
||||||
if (mCachedOutputBuffers == null) {
|
if (mCachedOutputBuffers == null) {
|
||||||
throw new IllegalStateException();
|
throw new IllegalStateException();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user