2c8207e9627fe6c7a90e31fae8d71ae49df56845 |
|
24-May-2012 |
Mathias Agopian <mathias@google.com> |
add the ability to reject buffers in SurfaceTexture::updateTexImage SurfaceFlinger is using this new feature to reject buffers that don't have the right size. Bug: 6498869 Change-Id: I8a7250a47db6c082a357b703feb3b9d0fc8d3443
/frameworks/native/include/gui/SurfaceTexture.h
|
5c1139fea3cc0fd9847a6594d853a458152b2fbc |
|
09-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: improve texture matrix computation This change reduces the shrinking of the crop rectangle in some cases. It adds a way to inform the SurfaceTexture that its texture will be used without bilinear interpolation, and uses knowledge of the pixel format to avoid shrinking unecessarily. Change-Id: I72365f39f74ecb7fcc51b4cf42f2d0fa97727212
/frameworks/native/include/gui/SurfaceTexture.h
|
d72f233ffa125856a44976a50a66ceb669f49ab2 |
|
07-May-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: Add support for post-xform crops. This change adds support for specifying a crop rectangle to a SurfaceTextureClient that is in post-transformed coordinate space. Change-Id: I247901de343e71b32850f7ae3bac62dfa612ad3d Bug: 6299171
/frameworks/native/include/gui/SurfaceTexture.h
|
efc7ab6dcea8c22ddd7c0259ef4ab4bbf1e93044 |
|
18-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: Add plumbing for active rectangle This change adds the plumbing to SurfaceTextureClient, BufferQueue, and SurfaceTexture to get the active rectangle passed to the ANativeWindow to the buffer consumer. Change-Id: I35da0889b266327ebb079b6a7136fa3e2e8b00e6
/frameworks/native/include/gui/SurfaceTexture.h
|
a0db308c3d62301ae41b2e2bcf295c4ee4c7b08e |
|
23-Apr-2012 |
Mathias Agopian <mathias@google.com> |
remove SurfaceTexture::connect() use BufferQueue::connect() instead Change-Id: I04aab7cf11304bf962cde38470747f3b19ddba42
/frameworks/native/include/gui/SurfaceTexture.h
|
85b217668d6840c8e6a109adfb99461313676f8d |
|
14-Apr-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Remove fixed USAGE_HW_TEXTURE flag from BufferQueue. USAGE_HW_TEXTURE applies to SurfaceTexture, not to all uses of BufferQueue. Refactor accordingly. Change-Id: Ic7add5e1f2bbec3d3e796ba7f15eaa0633945d8f
/frameworks/native/include/gui/SurfaceTexture.h
|
016c8cbce4dde21f2703b9865f52d16b8d5d5ae2 |
|
04-Apr-2012 |
Daniel Lam <dalam@google.com> |
Enabled cropping support in SurfaceTexture SurfaceTexture will modify the crop rect so it matches the desired output aspect ratio when the scaling mode is NATIVE_WINDOW_SCALING_MODE_CROP. Added a test for this new scaling mode. Change-Id: I60f24dcbc294b65cd10a393d9e27d40f07d27bb6
/frameworks/native/include/gui/SurfaceTexture.h
|
9abe1ebc9575dc5a19bf1dfce6e9b02e03374457 |
|
27-Mar-2012 |
Daniel Lam <dalam@google.com> |
Fixed disconnect bug in SurfaceTexture BufferQueue's disconnect could race with updateTexImage where invalid buffers could be released. Additionally fixed similar bug with setBufferCount. Tests were added to stress the disconnect mechanism. Change-Id: I9afa4c64f3e025984e8a9e8d924852a71d044716
/frameworks/native/include/gui/SurfaceTexture.h
|
74bed55fff0132be319bcd1703970516ae28b3a9 |
|
29-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add context attach & detach This change adds the detachFromContext and attachToContext methods to SurfaceTexture. These methods allow the SurfaceTexture to switch from one consumer GLES context to another. This change also includes a few cleanups to the error return codes in updateTexImage. Change-Id: I0df1eb599aa7b6f58f07431f242f8f09269559ed
/frameworks/native/include/gui/SurfaceTexture.h
|
ce561372186c7549a8a5fe996ac5965cda087007 |
|
20-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: have ST::updateTexImage check the GL ctx This change adds a check to SurfaceTexture::updateTexImage to verify that the current GL context is the same as the one that was used for previous updateTexImage calls. Change-Id: If02d2f787bcfdb528046dc9ddf6665f8a90e1bf4
/frameworks/native/include/gui/SurfaceTexture.h
|
fa5b40ebb8923133df12dc70591bfe35b3f1c9b3 |
|
15-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: add BQ consumer buffer free notifications This change adds a new callback for BufferQueue consumers to be notified when the BufferQueue frees some or all of its buffers. This is needed to retain SurfaceTexture behavior where all buffers would be freed when the producer disconnects. This change also modifies the SurfaceTextureGLToGLTest.EglDestroySurfaceUnrefsBuffers test to catch when the buffers are not freed. The implementation is a little complicated because it needs to avoid circular sp<> references across what will be a binder interface (so wp<> can't be used directly). It also needs to avoid the possibility of locking the BufferQueue and consumer (e.g. SurfaceTexture) mutexes in the wrong order. This change also includes a few additional fixes and test cleanups. Change-Id: I27b77d0af15cb4b135f4b63573f634f5f0da2182
/frameworks/native/include/gui/SurfaceTexture.h
|
b267579ba8dfe3f47d2a481c5a3c2254e3d565a1 |
|
23-Feb-2012 |
Daniel Lam <dalam@google.com> |
SurfaceTexture: Fully refactored from BufferQueue SurfaceTexture and BufferQueue are separate objects. Change-Id: I230bc0ae6f78d0f9b2b5df902f40ab443ed5a055
/frameworks/native/include/gui/SurfaceTexture.h
|
eae59d2ea77ef57aab203fb185a880ce37ac38d6 |
|
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
Removed dependecies between BufferQueue and SurfaceTexture Refactored SurfaceTexture and BufferQueue such that share no protected members. Created an consumer facing interface for BufferQueue in preparation of connecting SurfaceTexture and BufferQueue through a binder. Change-Id: I938e63e085128148c58d0e26c7213b30145c109f
/frameworks/native/include/gui/SurfaceTexture.h
|
9b10c47e112afc3600380895046a4a56e34cf6a8 |
|
27-Feb-2012 |
Daniel Lam <dalam@google.com> |
Revert "Removed dependecies between BufferQueue and SurfaceTexture" This reverts commit a631399f71dbc7659d2f241968f85d337726ae61
/frameworks/native/include/gui/SurfaceTexture.h
|
333023884112259f145bb23c41a05211198d9792 |
|
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
Removed dependecies between BufferQueue and SurfaceTexture Refactored SurfaceTexture and BufferQueue such that share no protected members. Created an consumer facing interface for BufferQueue in preparation of connecting SurfaceTexture and BufferQueue through a binder. Change-Id: Iff55e740e36a7f70c9f7a17ee7a5af38e3d21f0f
/frameworks/native/include/gui/SurfaceTexture.h
|
b856052c00dfef70d0957482c72c2979ffc4733a |
|
31-Jan-2012 |
Daniel Lam <dalam@google.com> |
Refactored query function from SurfaceTexture into BufferQueue Change-Id: Id1cb6cc38d01edb4fcfcad867c5a7693bdcc3ab1
/frameworks/native/include/gui/SurfaceTexture.h
|
6b091c53000c843211c218ce40287a7edca9bc63 |
|
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
Refactored ISurfaceTexture calls from SurfaceTexture into BufferQueue. Change-Id: I514f6b802f6b49c9ae27bed37bf0b9d23da03c9a
/frameworks/native/include/gui/SurfaceTexture.h
|
86edf4f6470ee0f108bf40d3c1d23bf0a78c9c38 |
|
14-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add EGL_KHR_fence_sync option This change adds a compile-time option for SurfaceTexture to use the EGL_KHR_fence_sync extension to synchronize access to Gralloc buffers. Bug: 5122031 Change-Id: I7e973a358631fff5308acf377581b811911fe790
/frameworks/native/include/gui/SurfaceTexture.h
|
59769469e4b9b2d8b12c020eb44b030b3927a50b |
|
20-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: default to swap interval 1 This change explicitly sets swap interval 1 on the window when an EGLSurface is created to render to it. Change-Id: I91eb29dbee3ae4a55076b921f084d503fbe94e03
/frameworks/native/include/gui/SurfaceTexture.h
|
a929748ddb67cbece3337c7fda7877fdeb973aa4 |
|
10-Nov-2011 |
Sunita Nadampalli <sunitan@ti.com> |
SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call Surface Texture dequeue logic is modified to return the oldest of the free buffers to Client on dequeue call. Currently dequeue method is returning the first buffer index which is free. The parsing is done in ascending order of the buffer slot indices. This leads to returning the buffer which has been just queued to composer, and hence display, and this defeats the purpose of having minimum dequeue count as 2 in asynchrnouse mode. This is fixed by checking all the free slots and returning the oldest buffer. Change-Id: Ibbac10593c3994c278c601af0480b171635ecdd4 Signed-off-by: Sunita Nadampalli <sunitan@ti.com>
/frameworks/native/include/gui/SurfaceTexture.h
|
194c76c0477189700fda068e19b953b1d9af201a |
|
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/native/include/gui/SurfaceTexture.h
|
fb1b5a2f333800574b0da435d1200cf9b13d723f |
|
28-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: parameterize the texture target This change adds a hack to allow Android Browser to use a SurfaceTexture to stream RGBA images to a GL_TEXTURE_2D texture object. Change-Id: Idb90064d5d4b920959ef3be7451362ac5012460e
/frameworks/native/include/gui/SurfaceTexture.h
|
fa28c35c21d1bf8b38f541758c291bc17a2d7270 |
|
17-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add name support This change adds support for setting a string that can be used to identify a SurfaceTexture object in log messages. Change-Id: Ib4ee085f36c8830dc964c05ef1654f5a55dfcd60
/frameworks/native/include/gui/SurfaceTexture.h
|
29b5762efc359022168e5099c1d17925444d3147 |
|
18-Aug-2011 |
Mathias Agopian <mathias@google.com> |
don't return the current buffer from dequeueBuffer we were not reseting mCurrentTexture in some situations which in turn caused dequeueBuffers() return a "FREE" buffer that was also current. Very often it was harmless, but it created a race with updateTexImage() which could cause the following queueBuffers() to fail. Bug: 5156325 Change-Id: If15a31dc869117543d220d6e5562c57116cbabdb
/frameworks/native/include/gui/SurfaceTexture.h
|
8e19c2e97e11505ee2ecf336275fd956f2ccfa22 |
|
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix a crasher in SurfaceTexture::updateTexImage() we now make sure to drain the buffer queue on disconnect. this happens only when in synchrnous mode. in async mode we clear all buffers except the head of the queue. for extra safety we also catch the null pointer in updateTexImage (which should never happen) and return an error. Bug: 5111008 Change-Id: I5174a6ecbb0de641c6510ef56a611cbb4e9e1f59
/frameworks/native/include/gui/SurfaceTexture.h
|
2560d14ce8e38984032d999e3fdf8da9a47baf3c |
|
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
rework dequeueBuffer()'s main loop. this simplifies the code a bit and also makes sure we reevaluate mAbandoned and mConnectedApi each time we come back from waiting on mDequeueCondition Change-Id: I1f8538b62ad321b51ed79d953b700036daba796d
/frameworks/native/include/gui/SurfaceTexture.h
|
ef51b992192adf4fc432686ab346f5fc7a13bc95 |
|
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
error out when SurfaceTexture APIs are called while not connected - also log a warning when freeAllBuffers is called with a non empty buffer queue - rename freeAllBuffers to freeAllBuffersLocked Change-Id: Idb71fdcf233b9ccae62d5a2a7c3c4bad2501d877
/frameworks/native/include/gui/SurfaceTexture.h
|
5bfc24515bb5c8ea7975f72d538df37753733a2f |
|
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
return correct value from query after connecting a surface the first time a surface was connected, the values returned by query NATIVE_WINDOW_DEFAULT_{WIDTH|HEIGHT} and NATIVE_WINDOW_TRANSFORM_HINT were wrong until a call to queueBuffer was performed. Bug: 5137366, 5121607 Change-Id: I7ac6b5b0daa876638f6bed7c20f286a6e6d984f6
/frameworks/native/include/gui/SurfaceTexture.h
|
fa1e002cec5dc33ebe52685dc81d644f783811a8 |
|
25-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: enable RGB external textures"
|
1f8e09f40d16ae377164d86e91385ad3d8e78e82 |
|
20-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: enable RGB external textures This change removes support for conditionally using the GL_TEXTURE_2D target for SurfaceTexture textures with RGB buffers. It also enables and fixes the RGB-based SurfaceTexture tests. Change-Id: I9a251a981cf66af6b048b2e4c3fe7231e4774f4d
/frameworks/native/include/gui/SurfaceTexture.h
|
7b305fffc39d0fe0926e7fd2d7f6a524fbce62b7 |
|
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add the abandon method. This change adds the 'abandon' method to the SurfaceTexture C++ class. This method may be used to put the SurfaceTexture in an abandoned state, causing all ISurfaceTexture methods to fail. Change-Id: Ibd261f7b73f44e2bec36a8508bf92113cfb7cf95
/frameworks/native/include/gui/SurfaceTexture.h
|
29c870271e8d3f8c40c356283650ba54fe71a16b |
|
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a comment Change-Id: I799532f77f8fbb6b8ee6888fdd8852b6f28e8c33
/frameworks/native/include/gui/SurfaceTexture.h
|
97c602c5af5f3ffd69009bf496d86347b71a2b4c |
|
20-Jul-2011 |
Mathias Agopian <mathias@google.com> |
implement: "Add an ANativeWindow API for SurfaceFlinger to suggest an optimal buffer orientation" Bug: 4487161 Change-Id: I883f34efe542c2a566d04966f873374f40c50092
/frameworks/native/include/gui/SurfaceTexture.h
|
7734ebfe47f42f980c1b44c1f284a91d8ad1d6c7 |
|
14-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Add set_scaling_mode() to ANativeWindow. This allows to specify the scaling mode independently from the buffer size. Change-Id: Iaa2baa660445531a97d3fac192e580f4929c5d3b
/frameworks/native/include/gui/SurfaceTexture.h
|
fe0a87b54654a1392650e7f1862df473287d8332 |
|
14-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: make (dis)connect into an IPC This change makes the ANativeWindow connect and disconnect calls result in an IPC to the SurfaceTexture object. This will allow us to prevent multiple simultaneous connections from different processes. Change-Id: Id9aa1003b1335b96ca6bd4a1f5a67aa433d42efb
/frameworks/native/include/gui/SurfaceTexture.h
|
19e0a8bfe9a15543b0bd7991cce08e5362e9f5cd |
|
01-Jul-2011 |
Pannag Sanketi <psanketi@google.com> |
Merge "Minor fix in SurfaceTexture"
|
292a31a4c2ae2f6faf134e8e4a726583017dad06 |
|
24-Jun-2011 |
Pannag Sanketi <psanketi@google.com> |
Minor fix in SurfaceTexture Change-Id: Ic859715becf3e6d5107bd8beb8c577034d00ec52
/frameworks/native/include/gui/SurfaceTexture.h
|
3d8063b02e06020c8062addcc9ec49048d3bdb9a |
|
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/native/include/gui/SurfaceTexture.h
|
14a0e58074f2698829b6554f578e6762c377caa3 |
|
24-Jun-2011 |
Grace Kloba <klobag@google.com> |
Add allowSynchronousMode to SurfaceTexture constructor. Change-Id: I54f30a3c16bbe6b813f3bcd1d389da5627531304
/frameworks/native/include/gui/SurfaceTexture.h
|
ae468f43418c3cbae74c7f546283f6bb4e4df690 |
|
12-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix up a comment. Change-Id: I044e44e17319e08af657a7ec9fa39100876fe862
/frameworks/native/include/gui/SurfaceTexture.h
|
736aa9573bb7b78f9c315f396c104491b3639426 |
|
13-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a getTransformMatrix crash. This change moves the computation of the transform matrix out of getTransformMatrix and instead performs the computation when updateTexImage gets called. This is needed in order for getTransformMatrix to succeed even if the buffers have been freed (e.g. by changing the buffer count) because the computation depends upon the properties of the current GraphicBuffer. Change-Id: Ied541ab8747b7ad604f862717135f9a16a816be9 Bug: 4490420
/frameworks/native/include/gui/SurfaceTexture.h
|
8cd5ba4b7f01d3a54a8f8bc6d1793aa5fc8e09ef |
|
19-May-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: clean up some comments, tests, etc. This change fixes up some stale comments, member variable names, log messages and disables a failing test. Change-Id: Ic1d3344b18066cf710e4a42838b2417c6b1f2f6c
/frameworks/native/include/gui/SurfaceTexture.h
|
cf46eb9817dfbfc020720d1e45b5c085252500fb |
|
12-May-2011 |
Mathias Agopian <mathias@google.com> |
fix onFrameAvailable Change-Id: I391fe9f6684ac9fd4f91416ce18b583f7087d966
/frameworks/native/include/gui/SurfaceTexture.h
|
68c7794183a7dbfe3b20d4ce832f8eb79c2c619a |
|
10-May-2011 |
Mathias Agopian <mathias@google.com> |
Add SurfaceTexture logging Change-Id: If1b74be5230813fb76429935d88b9d4a7c41700c
/frameworks/native/include/gui/SurfaceTexture.h
|
8072711307aa98ee5ee6f7369860ae38c3e19656 |
|
03-May-2011 |
Mathias Agopian <mathias@google.com> |
Implement {Surface|SurfaceTextureClient}::setSwapInterval() Change-Id: I8382e346ddaa2c4c8ff56ac3ffd7f0109572f188
/frameworks/native/include/gui/SurfaceTexture.h
|
b3e518c820c7dbe35587bd45c510e4e5e7cfd9c9 |
|
22-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Add the concept of synchronous dequeueBuffer in SurfaceTexture Change-Id: Ic94cbab092953243a0746e04bbe1b2eb0cc930ef
/frameworks/native/include/gui/SurfaceTexture.h
|
eafabcdc1639fb96062d9e3c39b0ae27b0238ae1 |
|
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
unify SurfaceTexture and Surface Change-Id: I49da2f5d8408e4cd7e148cfb777bb4ff68cd8f37
/frameworks/native/include/gui/SurfaceTexture.h
|
c04f153353cdb0d291297d10452239f791d3fd2b |
|
26-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Fix a bug where setgeometry couldn't be undone This change the binder protocol between SurfaceTextureClient and SurfaceTexture. dequeueBuffer() now takes the requested parameters for the buffer. SurfaceTexture decides if the buffer needs to be reallocated and does the allocation if needed. In that case it returns BUFFER_NEEDS_REALLOCATION to tell SurfaceTextureClient that it needs to call requestBuffer (which all parameters have been removed) to acquire a pointer to the buffer. dequeueBuffer and requestBuffer could be folded into a single IPC call, but we chose to optimize the case where buffers are not created and avoid some complexity in the marshalling code. Change-Id: I097a7f6f40a3491e10f3f3742eab33999286c304
/frameworks/native/include/gui/SurfaceTexture.h
|
7e3d7f341ab3789fe25064670374159a35e35ed3 |
|
19-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Merge "changes to SurfaceTexture needed for unification with SF"
|
7a042bf324fe3f3d5d4085fda21fe50dc0c362b4 |
|
12-Apr-2011 |
Mathias Agopian <mathias@google.com> |
changes to SurfaceTexture needed for unification with SF - implement connect/disconnect - implement missing query - handle texture_2d in addition to texture_external_oes Change-Id: I971a70821f00f22b01f5337de4a7d451177fec4d
/frameworks/native/include/gui/SurfaceTexture.h
|
4cb18881b55b82a24873ccd8e298bc2d5a9c17e5 |
|
09-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Fix a GraphicBuffer leak in SurfaceTexture This leak was intentional, it was there to deal with the fact that some gralloc implementations don't track buffer handles with file-descriptors so buffers needed to stay alive until there were registered, which is not guaranteed by binder transactions. In this new implementation, we use a small BBinder holding a reference to the buffer, which with tuck into the parcel. This forces the reference to stay alive until the parcel is destroyed, which is guaranteed (by construction) to happen after the buffer is registered. this allows the public facing API to not expose the previous hack. Change-Id: I1dd6cd83679a2b7457ad628169e2851acc027143
/frameworks/native/include/gui/SurfaceTexture.h
|
a5c75c01620179ce00812354778a29a80d76e71f |
|
01-Apr-2011 |
Mathias Agopian <mathias@google.com> |
SurfaceTexture can now force the client to request a buffer SurfaceTexture now has the concept of default size a new method, setDefaultBufferSize() to set it. When the default size is changed, dequeueBuffer() will return a value telling the client that it must ask for a new buffer. The above only applies if the client has not overriden the buffer size with setGeometry. Change-Id: I520dc40363054b7e37fdb67d6a2e7bce70326e81
/frameworks/native/include/gui/SurfaceTexture.h
|
1d01a12e7150be569557b64da9b8663c62c13594 |
|
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/native/include/gui/SurfaceTexture.h
|
9d4d6c101d90d4a1d1ca9413cf3eb89d1f1898d6 |
|
27-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Add the MIN_UNDEQUEUED_BUFFERS query to ANW. This change adds a new query to ANativeWindow for getting the minimum number of buffers that must be left un-dequeued during the steady-state operation of the ANativeWindow. Change-Id: Ie8c461fc26b02ecde02ddb4f95bf763662cf1551 Related-Bug: 3356050
/frameworks/native/include/gui/SurfaceTexture.h
|
1b20cde313b5ef8acdace742328df867956d24cb |
|
03-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Pass the IGraphicBufferAlloc to SurfaceTextureClient. This change passes a reference to the IGraphicBufferAlloc binder object to SurfaceTextureClient objects. When STC objects are created they query their associated ISurfaceTexture object for the IGraphicBufferAlloc that the SurfaceTexture uses to allocate buffers. Having the SurfaceTextureClient hold this reference prevents the GraphicBufferAlloc in SurfaceFlinger from freeing the allocated buffers before the SurfaceTextureClient is done with them. Change-Id: Ib8e30e8b37fdd60438cbb4cb7e9174d0ba6d661c related-bug: 3362519
/frameworks/native/include/gui/SurfaceTexture.h
|
c4d4aeab52435c177ded6abdd578fec8191f0f5d |
|
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/native/include/gui/SurfaceTexture.h
|
9a78c90cd46b2a3bd637b056873149d3b94384b4 |
|
13-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix remote GraphicBuffer allocation in SurfaceFlinger. This change fixes a horrible hack that I did to allow application processes to create GraphicBuffer objects by making a binder call to SurfaceFlinger. This change introduces a new binder interface specifically for doing this, and does it in such a way that SurfaceFlinger will maintain a reference to the buffers until the app is done with them. Change-Id: Icb240397c6c206d7f69124c1497a829f051cb49b
/frameworks/native/include/gui/SurfaceTexture.h
|
f238e28500ca756fbd9e323f728ce7c8dda59475 |
|
10-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Implement crop & transform for SurfaceTexture. This change adds support for the setCrop and setTransform methods of the SurfaceTexture C++ class. The crop and transform for the current texture will be accessed by applications as a single texture coordinate transform matrix. Change-Id: I6482bf96f680e5c175364e848936db3908d6c8f8
/frameworks/native/include/gui/SurfaceTexture.h
|
67eedd74ab78c2bfed9fcdc74947b97289254ca4 |
|
09-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix a bug in SurfaceTexture::setBufferCount. We need to reset mCurrentTexture and mLastQueued in setBufferCount because it frees all of the buffers associated with the buffer slots. Change-Id: Ie2f834ec1c07ce7a4ab9b2b5fc5fe8c294010c60
/frameworks/native/include/gui/SurfaceTexture.h
|
8ba32fade11abb73f3fd47ea0953c9528eb5b91f |
|
20-Dec-2010 |
Jamie Gennis <jgennis@google.com> |
Add the SurfaceTexture C++ implementation. This change adds the C++ implementation of SurfaceTexture and related classes. The goal of this is for a SurfaceTexture to be passed to camera service or Stagefright in place of a Surface to allow camera preview or decoded video frames to be streamed to an OpenGL ES texture that an application can use. Change-Id: I55c83a7017f1ecb81c9c9e3252cbd118b914296c
/frameworks/native/include/gui/SurfaceTexture.h
|