History log of /frameworks/base/media/jni/android_media_MediaCodec.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d393216f8a2186eebdb8615c61787ae599c1432f 05-Mar-2016 Jeff Tinker <jtinker@google.com> Add error code to MediaCodec.CryptoException

Added a code to represent unsupported operations

bug: 25929554
Change-Id: Id8bfa092f29de073db19c4d7444f89249ea2cdd5
/frameworks/base/media/jni/android_media_MediaCodec.cpp
e872ac45f79ca2c0b538df891d983e3d5e037574 04-Mar-2016 Jeff Tinker <jtinker@google.com> Fix uninitialized crypto pattern

Apps built against an older API don't have the recently
added pattern field in MediaCodec.CryptoInfo which causes
the crypto pattern fields to be uninitialized. This change
ensures the pattern is initialized in all cases.

bug: 27477422
Change-Id: I5796bf5fbca93dba5bf9a2b74c1c6638b9e90f65
/frameworks/base/media/jni/android_media_MediaCodec.cpp
d4ea5d3eb630476a43da2adb4ac518360bd64758 18-Dec-2015 Jeff Tinker <jtinker@google.com> Support AES-CBC sample encryption in MediaDrm

bug:23719082
Change-Id: I06eb39bd8ad9b55ea0da4011258cac62a8c21ae1
/frameworks/base/media/jni/android_media_MediaCodec.cpp
3ccb34d7070d73ba6c7842801b070b41de32b842 10-Nov-2015 Jeff Tinker <jtinker@google.com> Improve MediaCodec.CryptoException log messages

The message being logged is "Unknown error" even for
known error types. This change provides more descriptive
error strings, for the case when the message isn't
explicitly provided by the DRM plugin.

Change-Id: Ic86478d7685cd33e21ecd2f875ef7dbed351e52e
related-to-bug: 25477595
/frameworks/base/media/jni/android_media_MediaCodec.cpp
434a481b2191562582c79be29f24c2e0b5ca60d0 24-Sep-2015 Elliott Hughes <enh@google.com> am ea1831d2: am b57dd722: resolved conflicts for a884d81e to stage-aosp-master

* commit 'ea1831d211ea0e6b2d161c714bb0786369ef2df5':
constify JNINativeMethod function pointer tables
b57dd722f1dc0663417da37d3a82f8283ad3c982 24-Sep-2015 Elliott Hughes <enh@google.com> resolved conflicts for a884d81e to stage-aosp-master

Change-Id: Ice485967fa96f13786024b6939b826638e906ff0
76f6a86de25e1bf74717e047e55fd44b089673f3 19-Sep-2015 Daniel Micay <danielmicay@gmail.com> constify JNINativeMethod function pointer tables

Change-Id: I4036c924958221cbc644724f8eb01c5de3cd7954
/frameworks/base/media/jni/android_media_MediaCodec.cpp
e5b641e6effda54945577e9348df86213b38baeb 04-Sep-2015 Aaron Vaage <vaage@google.com> Resolving createByteBufferFromABuffer null input

It was found that createByteBufferFromABuffer was recieving a NULL buffer in bug
22726278. Based on returning NULL when buffer->base() == NULL, returning NULL
when buffer == NULL. This does not fix bug 22726278 - but address a problem found
while looking into it.

Bug: 22726278
Change-Id: I933b6a4a535d803576a4cdd7a1ffaf4a428c3201
/frameworks/base/media/jni/android_media_MediaCodec.cpp
96a2a957e42e04be817b60bb27199f3846f00fc9 02-Jul-2015 Jeff Tinker <jtinker@google.com> Report specific exception type on decrypt with invalid session

bug: 22235465
Change-Id: Ic1e1a86529d4f2246b9768799aacde5cd1070d04
/frameworks/base/media/jni/android_media_MediaCodec.cpp
d8578577b02cf6360402eb8726e964d18b46434d 06-Jun-2015 Lajos Molnar <lajos@google.com> media: hook up OnFrameRenderedListener events to framework events

Bug: 20503131
Change-Id: Ife6d4862d14daf5b9659307af57417bd3532e8fe
/frameworks/base/media/jni/android_media_MediaCodec.cpp
80283cd747d247780a5336bad6b41811175fd282 13-May-2015 Chong Zhang <chz@google.com> Merge "MediaCodec: rename usePersistentInputSurface to setInputSurface" into mnc-dev
9560ddb48af0e2da7743452f8d9d6d9cd34d8438 13-May-2015 Chong Zhang <chz@google.com> MediaCodec: rename usePersistentInputSurface to setInputSurface

bug: 21045402
Change-Id: I510a3a694367b8e5a21f4a4fa2a338031fed8991
/frameworks/base/media/jni/android_media_MediaCodec.cpp
c53ad69bcc920cdbdb15685ddad1d864631bb4f7 08-May-2015 Ronghua Wu <ronghuawu@google.com> media: merge CodecException's getErrorCode and getReason.

And unhide getErrorCode.

Bug: 20950388
Change-Id: I19c5ddaadfcdd446777e341f73edb75ca184d32f
/frameworks/base/media/jni/android_media_MediaCodec.cpp
4971de2a2efe448171b87471ad65e986c3608c21 02-May-2015 Lajos Molnar <lajos@google.com> Merge "media: hook up MediaCodec.setSurface" into mnc-dev
8034d60f6e044deafe48501dfbfe17c31284bc17 28-Apr-2015 Chong Zhang <chz@google.com> MediaCodec: implement persistent input surface APIs

Bug: 19127604
Bug: 19489395

Change-Id: If0d723c9ecd6fe81d9df210bd2fd026b8603ea4a
/frameworks/base/media/jni/android_media_MediaCodec.cpp
5e02ba977ede1e38c9f206057ec3f0f1e89ba943 02-May-2015 Lajos Molnar <lajos@google.com> media: hook up MediaCodec.setSurface

Bug: 11990461
Change-Id: Id2dc952594c21c6be68e4ffd039c7f74006a2374
/frameworks/base/media/jni/android_media_MediaCodec.cpp
fb621e8737392ef10acbba083b46aedf6583c9a4 28-Apr-2015 Ronghua Wu <ronghuawu@google.com> media: set codec exception reason.

Bug: 19620911
Change-Id: I13c007bc82b367680e9a15dc6caed6ef8a81d0a6
/frameworks/base/media/jni/android_media_MediaCodec.cpp
9e9ec943ce7620bbfcadc2f8986a80ac58003e47 16-Apr-2015 Ronghua Wu <ronghuawu@google.com> media: add reason to CodecException ctor.

Bug: 19620911
Change-Id: I3e9d1824c438253e9a7c303478f3cb75d0bb5c75
/frameworks/base/media/jni/android_media_MediaCodec.cpp
41eedcf3114f853e506a4d0d969db3b94bb187ba 14-Apr-2015 Ronghua Wu <ronghuawu@google.com> Revert "media: add new MediaCodec Callback onCodecReleased."

This reverts commit 4c302e8b141cd490733130e86e44fa4f216de457.

Change-Id: I563ba6419cf61968bf356c5b096445dde55abac2
/frameworks/base/media/jni/android_media_MediaCodec.cpp
4c302e8b141cd490733130e86e44fa4f216de457 19-Mar-2015 Ronghua Wu <ronghuawu@google.com> media: add new MediaCodec Callback onCodecReleased.

Bug: 19620911
Change-Id: I2912c570678861daf1516757dda2160ffddcfa8d
/frameworks/base/media/jni/android_media_MediaCodec.cpp
63834f4d23a97b27d830a301328329c7ef682bd5 04-Mar-2015 Lajos Molnar <lajos@google.com> media: update AMessage to use handler instead of handler-id

Bug: 19607784
Change-Id: Ia18746830816bcade510e5137bf8ce6258181ac0
/frameworks/base/media/jni/android_media_MediaCodec.cpp
336d3eabc0d57fd2d1b8a9aa4ade7a0450cf183e 29-Aug-2014 Jeff Tinker <jtinker@google.com> Add support for max-res decode

bug: 16034599
Change-Id: I12124aef03518600a27de45bae24eef9c9735be5
/frameworks/base/media/jni/android_media_MediaCodec.cpp
5f9aa0bcea8be860fdf5a35476435616cb5f44f3 31-Jul-2014 Andy Hung <hunga@google.com> Update exception handling for MediaCodec

Throw MediaCodec.CodecException (versus IllegalStateException).
Print out status error codes as found (See MediaError.h for details).
Update error code mapping to CryptoException.

Bug: 12034929
Bug: 13976475
Change-Id: I23b951cb06807413f087c238a1d3526659f06e7b
/frameworks/base/media/jni/android_media_MediaCodec.cpp
7de28d34f1ca3a727a8325cf3304f2fe03d2ac59 25-Jul-2014 Lajos Molnar <lajos@google.com> Implement MediaCodec.getImage methods

Bug: 10706245
Change-Id: Icbac5538a27ffdb53d974e2e1f8dc5afe02fb391
/frameworks/base/media/jni/android_media_MediaCodec.cpp
1e6e8018a4f914210b615bfca0f818fd13574228 16-Jul-2014 Lajos Molnar <lajos@google.com> MediaCodec: add reset() + documentation fixes

Bug: 12034929
Change-Id: I38f89a2e4c41e0ceb3fdae4522b9c04f6c43a4f1
/frameworks/base/media/jni/android_media_MediaCodec.cpp
7be24522ce2e1821ad45e7ada7c3f91e6814889a 14-Jul-2014 Lajos Molnar <lajos@google.com> MediaExtractor: set buffer offset/limit in readSampleData

also fix setting offset/limit in MediaCodec's getBuffer.

Bug: 13008204
Change-Id: Iadf0f006cfccc2546971cc5384058e1a2721780b
/frameworks/base/media/jni/android_media_MediaCodec.cpp
94686d13cacbec1ce7cf5fd0178fffb037d03cc1 12-Jul-2014 Chong Zhang <chz@google.com> MediaCodec: change onError cb to send CodecException

Bug: 11990118
Change-Id: I8b6112f126c2f473f64e2aad6ffcfbc3f1d6e64a
/frameworks/base/media/jni/android_media_MediaCodec.cpp
d4023114e8cf7ec7db4d07958a303699b658f2c0 12-Jul-2014 Lajos Molnar <lajos@google.com> MediaCodec: add new buffer and format APIs

Bug: 14562236
Bug: 14297827
Bug: 13008204
Bug: 10706245
Bug: 10672559
Bug: 9175531

Change-Id: Ia94d34f625e532619a9ed344eb27e0d26647982f
/frameworks/base/media/jni/android_media_MediaCodec.cpp
8d5e556b2b76278000a506382fdf594c071e1fbd 09-Jul-2014 Chong Zhang <chz@google.com> MediaCodec async callbacks

Bug: 11990118

Change-Id: I210d4302e1fd7e1a48d2228fd3f4f20c16b18a75
/frameworks/base/media/jni/android_media_MediaCodec.cpp
7c513b6bef8ed4dfc28e0af6c8594563fdb9f436 09-May-2014 Lajos Molnar <lajos@google.com> Added MediaCodec.releaseOutputBuffer() method with render timestamp

Bug: 11784827
Change-Id: I67097c8e69b40ef3baa436f0e7731d28c696735c
/frameworks/base/media/jni/android_media_MediaCodec.cpp
fad6fa7a04e9227f621dfea9e90f6b867c40af86 30-Apr-2014 Narayan Kamath <narayan@google.com> am 21ccb07f: am 414d9405: am 56cd8dbf: Merge "Cast CallVoidMethod\'s size_t parameters to jint"

* commit '21ccb07fbe97097b6540097d89dd456447779178':
Cast CallVoidMethod's size_t parameters to jint
7ac4f560dfe754eb4fe0d279fa03c1d9b3a7a5af 24-Mar-2014 Lajos Molnar <lajos@google.com> MediaCodec: avoid silent array overflow in queueSecureInputBuffer()

Bug: 13006907
Change-Id: I7e1a1e37a677f8b2cf500e1cc52f4c2ff40fa470
/frameworks/base/media/jni/android_media_MediaCodec.cpp
fef85ef152ab176fd96dbe3047c8025136fa8560 05-Mar-2014 Ashok Bhat <ashok.bhat@arm.com> Cast CallVoidMethod's size_t parameters to jint

offset and size variables are passed to set method
of MediaCodec.BufferInfo java class. The corresponding
actual parameters of set method are of int type in java.

These variables are expected to fit in jint as they
indicate the offset and size of data in a media codec
buffer.

The variables are cast to jint, prior to passing to
java method, to avoid problems caused by automatic
type promotion of parameters when passed to a
variadic function, CallVoidMethod.

Change-Id: I39e202306f1b7122448c947f6d275f00251bb33a
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
/frameworks/base/media/jni/android_media_MediaCodec.cpp
128b012cc8c2369136bb8450bc91c81aebe18506 02-Mar-2014 Chong Zhang <chz@google.com> fix MediaCodec release deadlock and resource leak

Bug: 12910147
Change-Id: I5f2c02b6ad5bfcd88797c6aa79dcaa23d030eacf
/frameworks/base/media/jni/android_media_MediaCodec.cpp
aba671392d6606e35726c350a28d0c9b36ebfe16 22-Oct-2013 Andreas Huber <andih@google.com> API that allows usage of MediaCodec APIs without polling.

Change-Id: Iebccdd3aec74a2cfa9ad0bf16c0c6006a3b72999
related-to-bug: 11990118
/frameworks/base/media/jni/android_media_MediaCodec.cpp
075e9a19ce645752f8282bc19c91b25978a7dc52 06-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in media classes

For storing pointers, long is used in media classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Idc4ca0124d03df7f9cef412488abafd020e5e774
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
/frameworks/base/media/jni/android_media_MediaCodec.cpp
fd2e50086c4f4e2bb064c76a1de73e10c172f387 25-Sep-2013 Marco Nelissen <marcone@google.com> Fix hang

b/10855561

Change-Id: I29b046b835ce0ca3644e5c2e8f9bca5c0b380d4b
/frameworks/base/media/jni/android_media_MediaCodec.cpp
226065bbe60cf32b33a5f86d27e2db88138e4486 12-Aug-2013 Andreas Huber <andih@google.com> Expose MediaCodec.setParameters API to

- change video target bitrate on the fly
- request sync frames
- temporarily suspend feeding input buffers to the encoder

Change-Id: If5cf1162b2eeb28ac08288ecfa9f0e9823dd972e
/frameworks/base/media/jni/android_media_MediaCodec.cpp
8d5f3e31c914e29129f50fe9830d71adf52ab5cf 12-Aug-2013 Andreas Huber <andih@google.com> Manage jclass objects (and most jobjects) in jni code using ScopedLocalRef

for safer refcounting. Previously jclass objects were not DeleteLocalRef'ed
at all, leading us to exhaust the local ref pool quickly in certain
circumstances.

This change also makes sure we properly serialize int64_t entries when
converting from AMessage to HashMap and boosts thread priority for
java-instantiated MediaCodecs slightly from NORMAL to FOREGROUND.

Change-Id: I4ebdd8a5ca6b3442698c9f86fcc31af8c199aaf5
/frameworks/base/media/jni/android_media_MediaCodec.cpp
3ed38266c1647c6219ae5ad89cb3f867cf66caaa 03-Aug-2013 Jeff Tinker <jtinker@google.com> Define error codes for MediaCodec.CryptoException

Define specific failure cases so apps have the information they
need to deal with these conditions.

Also adds a new ResourceBusyException to MediaDrm

Change-Id: Iaecf269d58108f28179974b05671bf29b9fe4b7d
related-to-bug: 10157154
related-to-bug: 9695816
/frameworks/base/media/jni/android_media_MediaCodec.cpp
e20a6d5c479909f37af748a81a6e5a5deb7b6e2c 08-Apr-2013 Marco Nelissen <marcone@google.com> Add support for common encryption

Change-Id: I2d56a6a90dff3ce1c37296934fca01b8a2ca0f89
/frameworks/base/media/jni/android_media_MediaCodec.cpp
2621e40d0e0a496a96575768b7e2b70e3b3be640 19-Feb-2013 Andy McFadden <fadden@android.com> Implement Surface input to MediaCodec.

Adds two new public methods to MediaCodec, and one new public
constant to MediaCodecInfo (currently @hidden).

Bug 7991062

Change-Id: I830a9794e92334ad05c870cc5fc90be4652147a5
/frameworks/base/media/jni/android_media_MediaCodec.cpp
52800617946c456e78ed010c82d0ec4358368164 15-Feb-2013 Mathias Agopian <mathias@google.com> Refactoring: Rename SurfaceTextureClient to Surface

Change-Id: I5a218ca11abeeec05e3a4c3cfc581bcc788814ea
/frameworks/base/media/jni/android_media_MediaCodec.cpp
eca3eb5983fb8e8cea17175869f86cda7613dd60 20-Dec-2012 Marco Nelissen <marcone@google.com> Merge "Don't create weird ByteBuffers"
cbbea8e651feb580f439e28359d72589709fb120 19-Dec-2012 Marco Nelissen <marcone@google.com> Don't create weird ByteBuffers

Ensure that we don't create ByteBuffers with a NULL memory pointer
but nonzero size.
b/7892060

Change-Id: I2fc52e19fd05e698c38d94275e738e23a2999e1f
/frameworks/base/media/jni/android_media_MediaCodec.cpp
d47f7d8b5fe3a3861d7cbdc5f912235407823c8e 18-Dec-2012 Andy McFadden <fadden@android.com> Rename ISurfaceTexture and SurfaceTexture

The C++ class names don't match what the classes do, so rename
ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to
GLConsumer.

Bug 7736700

Change-Id: I08e677faf2ebb418ef131d0a8008e01037db0e50
/frameworks/base/media/jni/android_media_MediaCodec.cpp
056ef2ed5ff92b742fe53f2498c596ec1f6bed3c 25-Sep-2012 Martin Storsjo <martin@martin.st> MediaCodec: Allow getting the chosen component name

Currently, when the codec was opened by createDecoder/EncoderByType,
the caller does not know what codec actually was chosen, and
(for encoders) thus cannot know what color formats it supports.

This adds new public API.

Change-Id: Ie471f40f8104b37d27ced3dba5a54facc6504b1b
/frameworks/base/media/jni/android_media_MediaCodec.cpp
64a55af0ac700baecb0877235eb42caac59a3560 26-Aug-2012 Jeff Brown <jeffbrown@google.com> Add plumbing for new surface flinger display API.

Cleaned up the implementation of Surface and SurfaceSession
to use more consistent naming and structure.

Added JNI for all of the new surface flinger display API calls.

Enforced the requirement that all Surfaces created by
the window manager be named.

Updated the display manager service to use the new methods.

Change-Id: I2a658f1bfd0437e1c6f9d22df8d4ffcce7284ca2
/frameworks/base/media/jni/android_media_MediaCodec.cpp
d932de9aff49d1d9f752ad479b42854d2557c881 13-Jul-2012 Martin Storsjo <martin@martin.st> mediacodec: Don't crash if trying to open a codec that does not exist

Change-Id: If75e3156517993629f50622a84a9ac573fced815
/frameworks/base/media/jni/android_media_MediaCodec.cpp
3dd7fd08a8a1d658b0aac8590f1fd922e056f689 08-May-2012 Andreas Huber <andih@google.com> Return codec buffers that are marked as having host endianness.

Change-Id: Iedfd829d108e65ee368909af14ace68b63e0e168
related-to-bug: 6364139
/frameworks/base/media/jni/android_media_MediaCodec.cpp
60d610bf103379277a4b29a7ead4f013f6128e4e 03-May-2012 Andreas Huber <andih@google.com> Various changes to Media* APIs requested by the api council.

Change-Id: Iec2f50c99cf5f00a442737231361334e9ab46340
related-to-bug: 6432753
/frameworks/base/media/jni/android_media_MediaCodec.cpp
b12a5390694e8525ac61d7377e266e31d124c815 30-Apr-2012 Andreas Huber <andih@google.com> New API to set the video rendering mode on a MediaCodec instance.

Change-Id: I6d765bb4cab7bcf29f09364293c24e8a6930078b
related-to-bug: 6364139
/frameworks/base/media/jni/android_media_MediaCodec.cpp
bfc56f497de0d18125366a02a93e61cdc0891be4 19-Apr-2012 Andreas Huber <andih@google.com> DRM errors signaled by the CryptoPlugin are now visible to MediaCodec clients

through a custom exception "MediaCodec.CryptoException".

Change-Id: I30215e9e13bab68abad23e27dcead7c1accd07f1
related-to-bug: 6365261
/frameworks/base/media/jni/android_media_MediaCodec.cpp
91befdc0c4710234840cdfd853e7d30e8f9de62c 18-Apr-2012 Andreas Huber <andih@google.com> Information required to decrypt buffers is now packaged into MediaCodec.CryptoInfo

New API on MediaExtractor to retrieve a CryptoInfo structure where applicable.

Change-Id: I18edfc9ac56a4544c8f17cba24401b96dacbff7d
related-to-bug: 6275919
/frameworks/base/media/jni/android_media_MediaCodec.cpp
07ea426e3ae8915ca6bf67135f523f42cd920af0 11-Apr-2012 Andreas Huber <andih@google.com> Unhide new media related java APIs.

Change-Id: If0b8201eaca74f51f3499b6ecdfb73088586ee24
/frameworks/base/media/jni/android_media_MediaCodec.cpp
9e6bcce17d13bd4f7bba5f8fbcc2e6a0d695274b 06-Apr-2012 Andreas Huber <andih@google.com> New JAVA API to support submitting encrypted buffers of input data.

Change-Id: Ib0df9a9427b4580946179860495b26f743558597
related-to-bug: 6275919
/frameworks/base/media/jni/android_media_MediaCodec.cpp
8240d9239d9aabed75c49f9d4d69fd8a5fe4c899 04-Apr-2012 Andreas Huber <andih@google.com> New Crypto JAVA class to facilitate decryption via MediaCodec.

Change-Id: Ic4e395faa84f003793c2804f2badabab9e7f1034
related-to-bug: 6275919
/frameworks/base/media/jni/android_media_MediaCodec.cpp
0e97fc248eaea7b4c95053618ddedf0af638110e 03-Apr-2012 Andreas Huber <andih@google.com> More DRM/crypto support.

related-to-bug: 6275919
Change-Id: I9179c03f1f91f939afcb3b1c6514a200bf586c93
/frameworks/base/media/jni/android_media_MediaCodec.cpp
c52b980277f08aee7981b1fdbca7a89464cf66d9 12-Mar-2012 Andreas Huber <andih@google.com> Documentation/API update for MediaCodec/MediaExtractor, fixes to MediaCodec.

and MediaExtractor.readSampleData now works with a non-direct byte buffer.

Change-Id: Ifbe5c152d9550c34d3b1d493e12a223eb98e8b4e
/frameworks/base/media/jni/android_media_MediaCodec.cpp
4484bdd2f99a753b0801f0c13ca8a2b7bc38695a 29-Feb-2012 Andreas Huber <andih@google.com> Separate the notion of "stop" from that of "release", i.e.

stop - means transition back to LOADED state and keeping the component
instance allocated.

release - means we get rid of the component completely.

Change-Id: I40ad01ce70821faaad43f57999249904f9144924
/frameworks/base/media/jni/android_media_MediaCodec.cpp
8335f1ccccedb6655d96d9d5b697a7f0938235dd 26-Feb-2012 Mathias Agopian <mathias@google.com> fix libgui header location

Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
/frameworks/base/media/jni/android_media_MediaCodec.cpp
88572f7a3e9d7ef85c26865a0150f3c2041561c2 21-Feb-2012 Andreas Huber <andih@google.com> Implementation of a java media codec interface and associated tools.

Change-Id: I13e54062d4de584355c5d82bb027a68aeaf2923b
/frameworks/base/media/jni/android_media_MediaCodec.cpp