History log of /frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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