History log of /frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a3e1d7b43eeee44ab80571bd4a0c2425b443d578 22-Apr-2017 Jiwen 'Steve' Cai <jwcai@google.com> SurfaceTexture: setConsumerIsProtected

When in a protected context, SurfaceTexture should call
setConsumerIsProtected Instead of setting consumer usage bits to
indicate the producer that the consumer can handle protected content.

Bug: 35726763
Test: videoplayer-nodrm-protected.apk and videoplayer-drm-protected.apk
both works.

Change-Id: I0028c040e727691e1e42226c0b66de075fe5515d
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
df7707cb4f34138b423dde493fccfa4e7fb50c20 01-Mar-2017 Mathias Agopian <mathias@google.com> fallout of cleaning-up libutils includes

Test: run & compile
Bug: n/a
Change-Id: I0f6a0be03f4b120b1b5876aae0c0618c025d9f2b
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
a7993241a96ff8832bac5fbc052d8a9ac6e72877 21-Feb-2017 Andreas Gampe <agampe@google.com> Graphics: Make SurfaceTexture compile-time initializable

Ensure that all static initializer code can be executed in the
compiler. Move native field caching into the native method
registration function.

Bug: 34956610
Test: m
Test: Device boots (Pixel)
Change-Id: Icf68c8fbadcaaa133a152942a3a7ba7aba84a1df
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
f1cb02e7b53e22655f0e14041b0abf73f51a11b0 14-Feb-2017 Mathias Agopian <mathias@google.com> fallout of splitting rect.h out of libandroid.

- Main goal here: libandroid now links against
libarect and export its includes.

- Also fix some wrongful makefiles that included
headers without proper dependency list.

Test: built and booted device
Bug: 35164655
Change-Id: Iae17b966bba00fe53424486a75eebff468873787
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
afe9a4c67c2e2988c76232796f017a992a6f2a28 13-Apr-2016 Craig Donner <cdonner@google.com> Minor changes needed to support EXT_protected_content.

Bug: 22775237
Change-Id: I40affa4f2cb245b8acd0106a2ee21a06cb9f9162
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
59ee472c95373c15bb32e72d68433397efdf9da8 06-Apr-2016 Craig Donner <cdonner@google.com> Downgrades error messages about not being able to detect whether we are in protected mode or not to informational messages. If there is no GL context, then we are by definition not in protected mode, and still return false as advertised, thus there's no need for an error message.

Bug: 27926028

Change-Id: Ia791a989b92be17bc31f9221654168347d60eed9
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
4bbb8504a755fd273cd8e6be3d6e2fbc7ccbc2a4 12-Jan-2016 Craig Donner <cdonner@google.com> Setting consumer protected mode on from SurfaceTexture when in a protected context.

Bug: 22775237
Bug: 22855417

Change-Id: I9608ba08b28b02f3df1cc334fdc22d645831f1f6
/frameworks/base/core/jni/android/graphics/SurfaceTexture.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/core/jni/android/graphics/SurfaceTexture.cpp
e442b63c837c8852546f9fa7ba28985e8eea7290 20-Aug-2015 Pablo Ceballos <pceballos@google.com> Implement single buffer mode using setMaxBufferCount

Bug 13174928

Change-Id: I5319c3d7d07b8ddeaf8fd8e8efe0dbfb58d5c1ac
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
ef9db7d81b0ce1093944b9e3d5efb6ab756f5cbc 09-Jun-2015 Eino-Ville Talvala <etalvala@google.com> Add more specific consumer names for common buffer queue endpoints.

Change-Id: I744bdcba6e60e5efd8865f725b09a9f791d76160
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
6d8371e73ff6452be5a23089e7edeb8d6d96f065 15-May-2015 John Reck <jreck@google.com> Check for setting to already set

Bug: 20105644
Change-Id: Ia79d2ae5c725c139d2b7c423a899be625cb8f14f
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
7d13d9db1ef90063cb542ccd6554042a6a3263b7 21-Nov-2014 Andreas Gampe <agampe@google.com> resolved conflicts for merge of 3fc5e3ca to lmp-mr1-dev-plus-aosp

Change-Id: Id8286e5a4381315a6060251a8055b0f1d1a96019
ed6b9dff563c5e22f040ff37e12c0d771e0478ae 21-Nov-2014 Andreas Gampe <agampe@google.com> Frameworks/base: Consistency in core/jni

Make consistent use of core_jni_helpers for registration.

Translate some #ifdefs into const bools.

Change-Id: I37639aa053dd50f003a552cbd8550dddecc811c5
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
2c34b5e8136eac0332dac294cb06a6a98eac1c14 04-Nov-2014 Dan Stoza <stoza@google.com> Add a BufferItem parameter to onFrameAvailable

Passes the BufferItem for the queued buffer to the onFrameAvailable
callback so the consumer can track the BufferQueue's contents.

Bug: 18111837
Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
493f2e11909e2d5839ca81ddc66d48d538192478 26-Jun-2014 Dan Stoza <stoza@google.com> SurfaceTexture: Allow creation in detached mode

Adds a constructor that doesn't require a GLES texture name and sets
up the SurfaceTexture in detached mode.

Bug: 15616428
Change-Id: I375495f481bfbe43b3830ab7d124cef8f1be0ac6
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
c7282e57cd01f1576baac04356bf99bee34e4c18 07-May-2014 Jeff Brown <jeffbrown@google.com> Fix crash due to texture view callback threading invariants.

Allow the client of a SurfaceTexture to specify the Handler to
which the update callback should be directed to avoid unnecessary
scheduling ping-pong between threads.

Fixed an invalid assumption in TextureView that it is attached
to the main looper which could result in a crash under certain
circumstances. In normal app processes, it is true that TextureViews
must be created on the main looper since hardware rendering is
currently only supported on the main looper. However, in the
system server, UI components run a different thread. Although
hardware rendering is normally disabled in the system server,
it may be enabled for certain developer features.

Bug: 14445309
Change-Id: I5ae17ad018b9ef05ba87ec2f972c7c82e2bca70a
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
0dc146be5a6cd0c33910d5b18885df46873a93cb 12-Mar-2014 Dan Stoza <stoza@google.com> Remove deprecated BufferQueue constructor

Bug: 13415624
Change-Id: Ib9788bca98fca22e0e4d81756d4aa3b29d5d5af2
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
9b311c900dcc3666febf52c1bed8eae7ce1f2815 05-Feb-2014 Andy McFadden <fadden@android.com> Pass a thread name to AttachCurrentThread

Reduces logspam from ART.

Bug 12896873

Change-Id: I82ae8e2dbba3918071d9c28f5ae5c882f8dcab3a
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
72aa313ff4c91e7b2aae3d37067f9201b2b0fdbe 13-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in SurfaceTexture

Long is used in SurfaceTexture class to store
pointers 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: I771aa62c42bc865e644c63fd48f309782dd03e73
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
a86ab640f7bb0bf3cb4eaed80473ca8c5d131903 30-Aug-2013 Igor Murashkin <iam@google.com> Surface: Change OutOfResourcesException to be a runtime exception

- Deprecates SurfaceTexture.OutOfResourcesException, it wasn't used
- Make all JNI code throw only Surface.OutOfResourcesException
- Get rid of redundant SurfaceControl.OutOfResourcesException

Bug: 10566539
Change-Id: I58126260771b9ccff6a69c672ce7719b9f98138d
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
e3eae73abb5e429d9747f9c36ab025219e68bb26 09-Aug-2013 Mathias Agopian <mathias@google.com> fix-up dependencies to gl headers

Change-Id: I9f176847587db1f9ccee2bc425106d277ffceee6
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
52a9a10b6b8c7b7a9f97777541841b94d4fd9754 02-Aug-2013 Mathias Agopian <mathias@google.com> Clearly separate consumer and producer interfaces

Bug: 9265647
Change-Id: Ic68e91788d0a05251e1d2fb9f9d4de403c7099bf
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
e591b49de038a9942cbcc77540c03e85c96e3dcb 25-Jul-2013 Mathias Agopian <mathias@google.com> single buffer mode for SurfaceTexture

Bug: 9891035
Change-Id: Ib9cc2b64f7ff3c084ef1d7db442db8e7a24a923d
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
e32632682ca9207bd247ca27012cf670b5c23f54 17-Jul-2013 Mathias Agopian <mathias@google.com> update to new Consumer APIs

Change-Id: I8649f3add40e0aeeeb0396b98e2cb93312e8e990
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
b550929b7a4b0d5f9645a7a1ebf287d3f13cf1af 13-Jul-2013 Mathias Agopian <mathias@google.com> always pass the BufferQueue explicitely to consumers

Change-Id: I32e380979a3f4c6b1dfb440cc5b5c3d30d7607db
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
b1d90c8f60f71422196c337f1d078b68867f5710 07-Mar-2013 Mathias Agopian <mathias@google.com> fix JNI use of incStrong/decStrong

Change-Id: Ia11b404dea483dc19bbc30f4d7bcff516655e180
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
52800617946c456e78ed010c82d0ec4358368164 15-Feb-2013 Mathias Agopian <mathias@google.com> Refactoring: Rename SurfaceTextureClient to Surface

Change-Id: I5a218ca11abeeec05e3a4c3cfc581bcc788814ea
/frameworks/base/core/jni/android/graphics/SurfaceTexture.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/core/jni/android/graphics/SurfaceTexture.cpp
82bb813f112d9565faa990e32dbe833f96461892 12-Dec-2012 Jamie Gennis <jgennis@google.com> stop using a deprecated SurfaceTextureClient ctor

Change-Id: Ie6196ba4896c0ab37b9aed3d1a4ffd04c99c5f80
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
c99db2bc460cc795947d99076da380e22a21e493 29-Oct-2012 Igor Murashkin <iam@google.com> Updated android.graphics.SurfaceTexture to use wp for FrameAvailableListener

Bug: 7425644
Change-Id: I7ccdc0ef421df7240d6cff9222c37411b1ecaf01
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
917a3b34a33f703503d05aaef4af955a09553703 18-Sep-2012 Jamie Gennis <jgennis@google.com> SurfaceTexture: remove call to doGLFenceWait

This call is no longer needed as the default behavior of the native
SurfaceTexture class is to do the wait whenever updateTexImage is called.

Change-Id: I995686a5989409e21b00fac913bd33c11f806998
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
f09263e957a3f132899458fc5afe859ba9d62d2e 10-Sep-2012 Jamie Gennis <jgennis@google.com> SurfaceTexture: add updateTexImage synchronization

This change makes the SurfaceTexture JNI updateTexImage call the native
SurfaceTexture's doGLFenceWait method to perform the needed synchronization.

Change-Id: Ie70a1fe6b44d439d1ffe7b97689a421ff8c02fda
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
721bfaa63d14f0ac858d32431ab2eff582143b0f 14-Apr-2012 Jamie Gennis <jgennis@google.com> SurfaceTexture: fix updateTexImage JNI

Sigh...

Change-Id: I0271bed44c58e0c9a03eda4886eb2c1ee76e041f
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
2b4bfa5efec7df408b4db127961cfc9aca9e57cf 13-Apr-2012 Jamie Gennis <jgennis@google.com> SurfaceTexture: update API docs

This change updates the SurfaceTexture API docs and modifies the behavior of
the updateTexImage to produce an IllegalStateException when not attached to a
GLES context.

Change-Id: I5a0875927785108960985c567d571d5f7033256a
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
c6d993077761fc737bbb0f4db44b961a4e7b6bbb 05-Apr-2012 Jamie Gennis <jgennis@google.com> SurfaceTexture: add GL context attach & detach

This change adds Java API support for detaching a SurfaceTexture from one GLES
context and then attaching it to a different one.

Change-Id: I8eed4b0d0e339c11598cb0408d9f4f2d99b3aa06
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
3762c311729fe9f3af085c14c5c1fb471d994c03 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
8564c8da817a845353d213acd8636b76f567b234 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/157065

Bug: 5449033
Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
b89d88f531ee39927f8f554baaae5ecc9101ba9d 10-Nov-2011 Mathias Agopian <mathias@google.com> Define, document, and test the behavior of very large SurfaceTextures

updateTexImage() now throws a runtime exception when its native
counterpart fails

Bug: 5506633

Change-Id: I151a6f685d465966e7df4df624412ab2da62e95f
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
ec46b4e1ca89d7c3a9ad70ded58da08b5e19f08f 04-Aug-2011 Mathias Agopian <mathias@google.com> Add a 'release' method to the SurfaceTexture public Java API

Bug: 5063618
Change-Id: I689cb0c01c14e597ccfb4eb0972e64fa570bd4e8
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
bd5404d0312752e7c8946e8540129f0d2d97bcd7 27-Jun-2011 Jamie Gennis <jgennis@google.com> SurfaceTexture: change onFrameAvailable behavior

This change alters the conditions under which the onFrameAvailable
callback gets called by the C++ SurfaceTexture class. The new behavior
is to call the callback whenever a frame gets queued that will be
visible to the buffer consumer. This means that buffers queued in
synchronous mode always trigger the callback, as those buffers will
remain pending until they are consumed. Buffers queued in asynchronous
mode will only trigger the callback if there was not previously an
unconsumed buffer pending.

The new behavior means that a consumer should perform a draw operation
exactly once for every onFrameAvailable call that it recieves. This
change also modifies SurfaceFlinger and the SurfaceTexture JNI to
support of the new behavior.

Change-Id: I8b2c6e00961d3d58b11c6af50b555b6e4c5f5b40
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
436b50f0dcfd0c3ec397d860e8f98abbce231e23 26-Jun-2011 Jamie Gennis <jgennis@google.com> Merge "SurfaceTexture: detach from Dalvik when necessary."
0904d0af81e8a0a5404d6c03f4dcea02bea8170d 24-Jun-2011 Grace Kloba <klobag@google.com> Add allowSynchronousMode to SurfaceTexture constructor.

Change-Id: I54f30a3c16bbe6b813f3bcd1d389da5627531304
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
0a8fd9b610b2de92930c92d71ac184dc9e2bcb4d 21-Jun-2011 Jamie Gennis <jgennis@google.com> SurfaceTexture: detach from Dalvik when necessary.

This change adds a call to detach from the Davlik VM in SurfaceTexture
JNI calls that caused an attach.

Change-Id: I8e0d7d596680bd25ac42f8db4ca8343a62827255
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
925bcaabde5a21687b51caa7ab329310a819f068 22-Jun-2011 Grace Kloba <klobag@google.com> Fix the issue where onFrameAvailable is not triggered if SurfaceTexture is in sync mode.

If there is more frame after updateTexImage, trigger the listener again.

Change-Id: I1415ae9a914cc8bb139cb369464b1f6a2aa24058
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
84293fb9625a3ab7d7d302436bea05441b8d7316 18-Jun-2011 Jamie Gennis <jgennis@google.com> SurfaceTexture: attach to Dalvik when needed.

This change fixes a bug in the SurfaceTexture JNI where a thread that
the Dalvik VM was not aware of calls the onFrameAvailable callback.
When this happens the callback needs to first attach the thread to the
VM before attempting to post the onFrameAvailable event for Java code to
handle.

Change-Id: I6a5470c32611ea6f38e9167779450f50635cabd3
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
050316184b01c0d1a01c46afae7429b89a27c31b 07-Jun-2011 tedbo <tedbo@google.com> Add ParcelSurfaceTexture Java class to enable ISurfaceTexture sharing via Binder.

This adds a new ParcelSurfaceTexture.java class that can be instantiated with
a SurfaceTexture and used to send the corresponding ISurfaceTexture interface
to another process via Binder. The ParcelSurfaceTexture java object can then
be used to create an ANativeWindow based on the SurfaceTextureClient interface.

Change-Id: Ie38ea948b866e52f36a6d0f6cde19b54a8546817
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
c5f94d8a4779050125145396ca83fbc862c7ed6b 18-Feb-2011 Eino-Ville Talvala <etalvala@google.com> Add support for timestamps into SurfaceTexture.

API addition: The timestamps are represented as nanoseconds from some
arbitrary time point. Like the SurfaceTexture transform matrix, the
timestamp retrieved by getTimestamp is for the last frame sent to the
GL texture using updateTexImage().

Camera HAL change: Expect vendors to set these timestamps using
native_window_set_buffers_timestamp(). For now, they are
autogenerated by SurfaceTextureClient if set_buffers_timestamp() is
never called, but such timing is likely not accurate enough to pass a
CTS test.

bug:3300707

Change-Id: Ife131a0c2a826ac27342e11b8a6c42ff49e1bea7
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
846db33313aa0899fa7928256c6734964bd92520 04-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 3515073 Add ANativeWindow_fromSurfaceTexture

This is similar to ANativeWindow_fromSurface.

Change-Id: Iaadc06a5d0d50685c34876aa89488c16e7cfaa65
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
376590d668e22a918439877b55faf075427b13f3 13-Jan-2011 Jamie Gennis <jgennis@google.com> Implement SurfaceTexture frame-available callback.

This change implements the onFrameAvailable callback for the
SurfaceTexture java class. It includes the C++ SurfaceTexture code as
well as the JNI and Java code to enable the callback.

Change-Id: Ifd8b8e7ad46ee70cba6da1c2e96dab8045d1ea30
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
b0ba48c95ea8768a051100c5adb4c906caa1e080 10-Jan-2011 Jamie Gennis <jgennis@google.com> Add getTransformMatrix to the SurfaceTexture API.

Change-Id: Icd11ed4982220be9d08b00498aef02531610ce1f
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
6714efc5e0c52953b65e774de0003e22377e7d39 20-Dec-2010 Jamie Gennis <jgennis@google.com> Add the SurfaceTexture java class.

This class exposes to Java the application-side interface to the
SurfaceTexture C++ class.

Change-Id: I0dba42aad90257c7adbde6fa362658c0717b70d0
/frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp