summaryrefslogtreecommitdiffstats
path: root/libs/gui/SurfaceTexture.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Refactored query function from SurfaceTexture into BufferQueueDaniel Lam2012-02-091-29/+0
| | | | Change-Id: Id1cb6cc38d01edb4fcfcad867c5a7693bdcc3ab1
* Refactored ISurfaceTexture calls from SurfaceTexture into BufferQueue.Daniel Lam2012-02-071-671/+3
| | | | Change-Id: I514f6b802f6b49c9ae27bed37bf0b9d23da03c9a
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-081-4/+4
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
* Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGESteve Block2012-01-061-4/+4
| | | | | | | See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
* Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGESteve Block2012-01-041-1/+1
| | | | | | | See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
* Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGESteve Block2012-01-031-1/+1
| | | | | | | See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
* am 74e0fcae: am a1dee3f5: Merge "SurfaceTexture: fix a verbose-log compile ↵Jamie Gennis2011-12-121-2/+2
|\ | | | | | | | | | | | | error" into ics-mr1 * commit '74e0fcaed1cd20ae8632224ff5a5404ff1a6e497': SurfaceTexture: fix a verbose-log compile error
| * SurfaceTexture: fix a verbose-log compile errorJamie Gennis2011-12-091-2/+2
| | | | | | | | Change-Id: I045231207e068d950bb0cb5085717af5d9454ed1
* | am 55d3880e: am bb1e7d43: Merge changes I7e973a35,Ib3386fcc into ics-mr1Mathias Agopian2011-11-301-166/+233
|\ \ | |/ | | | | | | | | * commit '55d3880eed3450748eb7b97281e030902ee29c2a': SurfaceTexture: add EGL_KHR_fence_sync option SurfaceTexture: add a blit-to-FBO test
| * SurfaceTexture: add EGL_KHR_fence_sync optionJamie Gennis2011-11-291-166/+233
| | | | | | | | | | | | | | | | 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
* | split ComposerService out of SurfaceComposerClient.hMathias Agopian2011-11-281-0/+2
| | | | | | | | Change-Id: I1eb691f7ca263d5895d871ab675bb5826e0323c6
* | am cc4d02e0: am 07a2d831: Merge "don\'t report an error when disconnecting ↵Mathias Agopian2011-11-211-2/+3
|\ \ | |/ | | | | | | | | | | from an abandoned surfacetexture" into ics-mr1 * commit 'cc4d02e0cbb99341a0508838c88eeef53180fdfd': don't report an error when disconnecting from an abandoned surfacetexture
| * Merge "don't report an error when disconnecting from an abandoned ↵Mathias Agopian2011-11-211-2/+3
| |\ | | | | | | | | | surfacetexture" into ics-mr1
| | * don't report an error when disconnecting from an abandoned surfacetextureMathias Agopian2011-11-181-2/+3
| | | | | | | | | | | | | | | | | | | | | this happens often with CPU Surfaces, which disconnect long after their surfacetexture has been abandoned. Change-Id: If49da03b72f99130e01b2b9bcbd444bb38f7ed4e
* | | am 8390cf39: am 8646cd42: Merge "enable ALLOW_DEQUEUE_CURRENT_BUFFER for ↵Mathias Agopian2011-11-211-3/+7
|\ \ \ | |/ / | | | | | | | | | | | | | | | tegra devices" into ics-mr1 * commit '8390cf39f8a4f74f7baa91d23cba06894a3fb9b5': enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices
| * | Merge "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices" into ics-mr1Mathias Agopian2011-11-211-3/+7
| |\ \
| | * | enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devicesMathias Agopian2011-11-181-3/+7
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this flag should be enabled for all targets, but currently some have issues with it, so we're turning it on only for tested targets. this will hopefully resolve some performance issues. Bug: 5553562, 5631630 Change-Id: I54c7a9e2068586898ab13e405d95534669260537
* | | am c2597295: am 53cf2020: Merge changes I37fd43b5,I91eb29db,I0491ce35 into ↵Jamie Gennis2011-11-211-0/+5
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | ics-mr1 * commit 'c25972950c2ea62fb085524dbe737c2bf0f08f4a': SurfaceTexture: fix a couple tests EGL: default to swap interval 1 SurfaceTexture: clean up some tests
| * | EGL: default to swap interval 1Jamie Gennis2011-11-211-0/+5
| |/ | | | | | | | | | | | | This change explicitly sets swap interval 1 on the window when an EGLSurface is created to render to it. Change-Id: I91eb29dbee3ae4a55076b921f084d503fbe94e03
* | am 9da22d2c: am 2ba13186: Merge "SurfaceTexture: fix a bug with buffer ↵Jamie Gennis2011-11-181-0/+5
|\ \ | |/ | | | | | | | | | | reallocation" into ics-mr1 * commit '9da22d2cc31069d86a92021d8540bb5a77c9591b': SurfaceTexture: fix a bug with buffer reallocation
| * Merge "SurfaceTexture: fix a bug with buffer reallocation" into ics-mr1Jamie Gennis2011-11-171-0/+5
| |\
| | * SurfaceTexture: fix a bug with buffer reallocationJamie Gennis2011-11-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change fixes an issue involving buffer reallocation and the ALLOW_DEQUEUE_CURRENT_BUFFER mode in SurfaceTexture. The bug happened when the buffer slot currently attached to the GL texture was selected for dequeuing, but the dequeue operation caused the buffer to be reallocated. Because the buffer is new, the image producer could fill the buffer and queue it before an updateTexImage call, which would result in the "slot %d is current" error in queueBuffer. Bug: 5631630 Change-Id: Icdd8bc5cad3c7db43953446d9be2603aaea11a8d
* | | am abdade71: am 69c17a11: Merge "Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER ↵Mathias Agopian2011-11-171-7/+3
|\ \ \ | |/ / | | | | | | | | | | | | | | | for tegra devices"" into ics-mr1 * commit 'abdade71bc17153696fe2abe281c5a3b0c2e5abe': Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices"
| * | Merge "Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices"" into ↵Mathias Agopian2011-11-161-7/+3
| |\ \ | | | | | | | | | | | | ics-mr1
| | * | Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices"Mathias Agopian2011-11-161-7/+3
| | |/ | | | | | | | | | | | | | | | | | | | | | This reverts commit e7758be6da85728df6b4215f413660c67c5a9740. Seemed to cause failures un SurfaceTexture. Bug: 5627450
* | | am 7765fc65: am fd6b64f6: Merge "SurfaceTexture: Fix to return the oldest of ↵Jamie Gennis2011-11-171-5/+17
|\ \ \ | |/ / | | | | | | | | | | | | | | | free buffers to Client on Dequeue call" into ics-mr1 * commit '7765fc651a9519dd2f0ac9d3374a50e9865c5c99': SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call
| * | Merge "SurfaceTexture: Fix to return the oldest of free buffers to Client on ↵Jamie Gennis2011-11-161-5/+17
| |\ \ | | |/ | |/| | | | Dequeue call" into ics-mr1
| | * SurfaceTexture: Fix to return the oldest of free buffers to Client on ↵Sunita Nadampalli2011-11-151-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | am 556a406c: am 3aa684ec: Merge "enable ALLOW_DEQUEUE_CURRENT_BUFFER for ↵Mathias Agopian2011-11-151-3/+7
|\ \ \ | |/ / | | | | | | | | | | | | | | | tegra devices" into ics-mr1 * commit '556a406cf4dd8a7faa318e0d522d899f8b9da7dc': enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices
| * | enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devicesMathias Agopian2011-11-141-3/+7
| |/ | | | | | | | | | | | | | | | | | | | | this flag should be enabled for all targets, but currently some have issues with it, so we're turning it on only for tested targets. this will hopefully resolve some performance issues. Bug: 5553562 Change-Id: I939992b4cd0debea980dec0127c72be2dff33af8
* | am c5ce130f: Merge "SurfaceTexture: various logging improvements" into ics-mr1Jamie Gennis2011-11-031-16/+32
|\ \ | |/ | | | | | | * commit 'c5ce130f658303299bf55091373951f7fd33ae36': SurfaceTexture: various logging improvements
| * SurfaceTexture: various logging improvementsJamie Gennis2011-11-011-16/+32
| | | | | | | | Change-Id: I1f7216276547a1e9f9343c88c6cc1c24efcdcdbc
* | Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-261-1/+1
|/ | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* SurfaceTexture: parameterize the texture targetJamie Gennis2011-09-301-7/+8
| | | | | | | 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
* SurfaceTexture: add name supportJamie Gennis2011-09-221-60/+85
| | | | | | | This change adds support for setting a string that can be used to identify a SurfaceTexture object in log messages. Change-Id: Ib4ee085f36c8830dc964c05ef1654f5a55dfcd60
* cleanup: fix typos in logsMathias Agopian2011-09-161-1/+1
| | | | Change-Id: Ib5744564a873ea2b84100174673dc4d3ae109fcf
* make sure to re-initialize SurfaceTexture to its default state on disconnectMathias Agopian2011-08-251-1/+4
| | | | | | | this caused problems where the NavigationBar would disapear or be drawn in the wrong orientation. Change-Id: I083c41338db83a4afd14f427caec2f31c180d734
* don't return the current buffer from dequeueBufferMathias Agopian2011-08-171-4/+23
| | | | | | | | | | | | 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
* fix a small race condition when returning the default width/height of a ↵Mathias Agopian2011-08-171-5/+4
| | | | | | SurfaceTexture Change-Id: I581bf609505dfb5d4ec5957b2ef2c77df6cfb15f
* Revert "error out when SurfaceTexture APIs are called while not connected"Dave Burke2011-08-111-28/+0
| | | | | | | | | | | This reverts commit a04cda9986366ab480ad8008c4d923271b05d78e. Conflicts: include/gui/SurfaceTexture.h libs/gui/SurfaceTexture.cpp Change-Id: Ib655016462c496ee2a27f7cb33a6e8b18cfe684a
* fix a crasher in SurfaceTexture::updateTexImage()Mathias Agopian2011-08-101-25/+56
| | | | | | | | | | | | | | 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
* rework dequeueBuffer()'s main loop.Mathias Agopian2011-08-101-32/+34
| | | | | | | | 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
* error out when SurfaceTexture APIs are called while not connectedMathias Agopian2011-08-101-6/+36
| | | | | | | - also log a warning when freeAllBuffers is called with a non empty buffer queue - rename freeAllBuffers to freeAllBuffersLocked Change-Id: Idb71fdcf233b9ccae62d5a2a7c3c4bad2501d877
* fix a crasher in dumpsysMathias Agopian2011-08-091-4/+10
| | | | | Bug: 5141729 Change-Id: Ib104d49c8660621180966be099198fe29c5bebf5
* free all buffers when ANativeWindow::disconnect is calledMathias Agopian2011-08-081-0/+1
| | | | Change-Id: Ie06e73e5b44398cda9e99876f78175b5eef765dc
* return correct value from query after connecting a surfaceMathias Agopian2011-08-081-1/+5
| | | | | | | | | | 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
* Merge "improve dumpsys SurfaceFlinger output"Mathias Agopian2011-08-081-3/+8
|\
| * improve dumpsys SurfaceFlinger outputMathias Agopian2011-08-081-3/+8
| | | | | | | | | | | | we now output the handle and size of all buffers of each layer. Change-Id: I8d011ee4ae9199f4198bd07bed770ec3bcf02986
* | add some logs to track a crash in eglCreateImageKHRMathias Agopian2011-08-081-0/+16
|/ | | | | | Bug: 5111008 Change-Id: I3e7f5b986151e80cbded39e0dec057770da52fc1
* Add a 'release' method to the SurfaceTexture public Java APIMathias Agopian2011-08-031-0/+1
| | | | | Bug: 5063618 Change-Id: I689cb0c01c14e597ccfb4eb0972e64fa570bd4e8