History log of /frameworks/base/core/jni/android/graphics/SurfaceTexture.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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
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
721bfaa63d14f0ac858d32431ab2eff582143b0f 14-Apr-2012 Jamie Gennis <jgennis@google.com> SurfaceTexture: fix updateTexImage JNI


Change-Id: I0271bed44c58e0c9a03eda4886eb2c1ee76e041f
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
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
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
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
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
ec46b4e1ca89d7c3a9ad70ded58da08b5e19f08f 04-Aug-2011 Mathias Agopian <mathias@google.com> Add a 'release' method to the SurfaceTexture public Java API

Bug: 5063618
Change-Id: I689cb0c01c14e597ccfb4eb0972e64fa570bd4e8
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
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
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
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
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

Change-Id: I6a5470c32611ea6f38e9167779450f50635cabd3
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
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.


Change-Id: Ife131a0c2a826ac27342e11b8a6c42ff49e1bea7
846db33313aa0899fa7928256c6734964bd92520 04-Mar-2011 Glenn Kasten <gkasten@google.com> Bug 3515073 Add ANativeWindow_fromSurfaceTexture

This is similar to ANativeWindow_fromSurface.

Change-Id: Iaadc06a5d0d50685c34876aa89488c16e7cfaa65
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
b0ba48c95ea8768a051100c5adb4c906caa1e080 10-Jan-2011 Jamie Gennis <jgennis@google.com> Add getTransformMatrix to the SurfaceTexture API.

Change-Id: Icd11ed4982220be9d08b00498aef02531610ce1f
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