d4079aff759713e7c7dd14cecb585a7290e80772 |
|
23-Aug-2016 |
Dan Stoza <stoza@google.com> |
Add requestor name to GraphicBuffer alloc metadata Adds a requestor name (usually the BufferQueue consumer's name) to the metadata that GraphicBufferAllocator stores on allocation so that `dumpsys SurfaceFlinger` can attempt to attribute buffer usage to the correct client. Bug: 30776557 Change-Id: I6e0f346584c871bb3b9d5481f82b697b0475a916
/frameworks/native/include/ui/GraphicBuffer.h
|
812ed0644f8f8f71ca403f4e5793f0dbc1fcf9b2 |
|
03-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Add generation numbers to BufferQueue This change allows producers to set a generation number on a BufferQueue. This number will be embedded in any new GraphicBuffers created in that BufferQueue, and attempts to attach buffers which have a different generation number will fail. It also plumbs the setGenerationNumber method through Surface, with the additional effect that any buffers attached to the Surface after setting a new generation number will automatically be updated with the new number (as opposed to failing, as would happen on through IGBP). Bug: 20923096 Change-Id: I32bf726b035f99c3e5834beaf76afb9f01adcbc2
/frameworks/native/include/ui/GraphicBuffer.h
|
9de7293b0a1b01ebe6fb1ab4a498f144adc8029f |
|
17-Apr-2015 |
Dan Stoza <stoza@google.com> |
libgui: Allow an IGBProducer to disable allocation Adds a new method IGBP::allowAllocation, which controls whether dequeueBuffer is permitted to allocate a new buffer. If allocation is disallowed, dequeueBuffer will block or return an error as it normally would (as controlled by *ControlledByApp). If there are free buffers, but they are not of the correct dimensions, format, or usage, they may be freed if a more suitable buffer is not found first. Bug: 19801715 Change-Id: I0d604958b78b2fd775c2547690301423f9a52165
/frameworks/native/include/ui/GraphicBuffer.h
|
d31824004277f554000417cea349d69f18655e95 |
|
17-Nov-2014 |
Dan Stoza <stoza@google.com> |
libui: Enable -Weverything and -Werror Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. Change-Id: I470a267e9b1c373f2d5c960f005c3b0e02b2db63 (cherry picked from commit 303b9a51239d36d237a7d40c67b5085cdb3c1059)
/frameworks/native/include/ui/GraphicBuffer.h
|
01049c8321aab30cd431e2febeddd79242ae5a4f |
|
11-Nov-2014 |
Dan Stoza <stoza@google.com> |
Enable clang for libui/libgui/surfaceflinger Enables clang and C++11 for libui/libgui/surfaceflinger, and eliminates all compile-time warnings. Change-Id: Ie237fdb5ae44f2bfcddaa884f9c65ec3f08ae50f (cherry picked from commit f10c46ef855b6410b20ebd8b1351d4d78d8eca8e)
/frameworks/native/include/ui/GraphicBuffer.h
|
03414a1cfe6c1222fd7723949bd622f9cba145aa |
|
01-Jul-2014 |
Riley Andrews <riandrews@google.com> |
Turn on support for async cursor update in surfaceflinger. If available, surfaceflinger will use the hwc setCursorPositionAsync() api to change the position of supported cursor layers outside of the usual prepare/set loop. Change-Id: Ib3fc5c0c390b3489ddbba202379840a1d2748917
/frameworks/native/include/ui/GraphicBuffer.h
|
f974bffb36a97d21432a504a741330c4f4245746 |
|
12-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 38c9e132: am c1ffd351: am bd20e551: Merge "Use asynchronous lock/unlock API" * commit '38c9e1327a5b24267c3dab5293bc9d7ada6e9fc9': Use asynchronous lock/unlock API
|
8f3960179c56767e5077be8337792bd4e244b7d7 |
|
01-Apr-2014 |
Francis Hart <fhart@nvidia.com> |
Use asynchronous lock/unlock API The gralloc API now provides a way for using lock/unlock with the Android explicit synchronisation concept. This changes updates the GraphicBuffer class to also expose this functionality, and updates the Surface class to make use of in line with the dequeueBuffer/queueBuffer mechanism. This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local gralloc module does not support this then the existing synchronous lock/unlock mechanism will be used. Change-Id: I8c3fd9592e0c5400ac9be84450f55a77cc0bbdc5
/frameworks/native/include/ui/GraphicBuffer.h
|
2f3dca149a2bcae96f18e38f7ba99a95c3e1b08c |
|
10-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 9493d492: am 9eb142e3: am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API"" * commit '9493d4924a59f14b698389386337a9c07a7ea3c4': Revert "Use asynchronous lock/unlock API"
|
02528cf6aaedbbfec55be57d33389e1c57d88245 |
|
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 4b46776f: am 8a6cd189: am f60564a1: Merge "Use asynchronous lock/unlock API" * commit '4b46776ff88c5a365700b88e8b2b04e1b2c77e6e': Use asynchronous lock/unlock API
|
53ec72523a4083b88eaa13e2e720976523a7ebf8 |
|
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
Revert "Use asynchronous lock/unlock API" This reverts commit 378ef07760eda717367d9429428c42d54d54d9a7. Change-Id: I1de5ab973b5383633e75924fe90ac3ca8216c36a
/frameworks/native/include/ui/GraphicBuffer.h
|
378ef07760eda717367d9429428c42d54d54d9a7 |
|
01-Apr-2014 |
Francis Hart <fhart@nvidia.com> |
Use asynchronous lock/unlock API The gralloc API now provides a way for using lock/unlock with the Android explicit synchronisation concept. This changes updates the GraphicBuffer class to also expose this functionality, and updates the Surface class to make use of in line with the dequeueBuffer/queueBuffer mechanism. This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local gralloc module does not support this then the existing synchronous lock/unlock mechanism will be used. Change-Id: I77daa1beb197b63b1c2f281b8414ac4ae4b5b03c
/frameworks/native/include/ui/GraphicBuffer.h
|
b1363d37fc6a661508fad106eb7698c5850a6c17 |
|
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
Add unique ID to GraphicBuffer Adds a globally-unique ID (PID + sequence number) to every GraphicBuffer, which will remain the same while crossing Binder, even if the underlying handles change. Change-Id: Ib11330a4c5e99621b82204e0adb31b9a88658426
/frameworks/native/include/ui/GraphicBuffer.h
|
87f9b877964b7d7db9b59ba45b73b4b1a779ecf8 |
|
01-Aug-2013 |
Mathias Agopian <mathias@google.com> |
remove unused code form GraphicBuffer Change-Id: I0dd67f1f93f654331e8f17b55730931dbc695ca7
/frameworks/native/include/ui/GraphicBuffer.h
|
e142428a9c8b9d2380032cd4d7b55ee440fe8770 |
|
30-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make Flattenable not virtual Fallout from the Flattenable change, update all its uses. Additionnaly, fix/tighten size checks when (un)flatten()ing things. Removed the assumption by some flattenables (e.g.: Fence) that the size passed to them would be exact (it can and will be larger in some cases) The code in Parcel is a bit complicated so that we don't have to expose the full implementation (and also to keep the code smallish). Change-Id: I0bf1c8aca2a3128491b4f45510bc46667e566dde
/frameworks/native/include/ui/GraphicBuffer.h
|
c43946b931de5dafd28f49963f9af78e05390b26 |
|
05-May-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Add support for HAL_PIXEL_FORMAT_YCbCr_420_888 - Add fields to CpuConsumer::LockedBuffer for new information - New lock methods for GraphicBuffer and GraphicBufferMapper for the format Bug: 8734880 Change-Id: If31f82c62d64b6942cf4cc6e5715585c03273f12
/frameworks/native/include/ui/GraphicBuffer.h
|
e041716ba17674b9af957f68750ad6b2df376c22 |
|
07-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Make GraphicBuffer a RefBase - this gives us access to RefBase's refcounting debugging - it doesn't cost much because GraphicBuffer already has a vtable Change-Id: I7f696e421fea14b14bfaeb83880689b83e96af4d
/frameworks/native/include/ui/GraphicBuffer.h
|
89592bbede762588248006f20afd8bd9d4bf5a98 |
|
26-Feb-2013 |
Igor Murashkin <iam@google.com> |
GraphicBuffer.h: Remove redundant friend class declaration causing warnings Change-Id: I8a4b0e0b4d0a1cf472de820553c31f2d42044543
/frameworks/native/include/ui/GraphicBuffer.h
|
e3c697fb929c856b59fa56a8e05a2a7eba187c3d |
|
15-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Refactoring: Rename SurfaceTextureClient to Surface Change-Id: Ibed34175ae273608393aaa5f0a7df207dc40d709
/frameworks/native/include/ui/GraphicBuffer.h
|
5f2165f9455d4893b581b73a67c5431f4344b47e |
|
25-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove dependency on android_native{s_priv|buffer}.h Change-Id: Ie4b95f7061c240f37c504414259f92d72c4ffc89
/frameworks/native/include/ui/GraphicBuffer.h
|
b7d87c40ef3f922fb10f6a4f24e6e1437ab3c7ae |
|
22-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceMediaSource: use the vid enc usage bit This change makes SurfaceMediaSource add the VIDEO_ENC usage bit when allocating its GraphicBuffers rather than the HW_TEXTURE bit. Change-Id: Ie20e225c894fdbc31cad6bb82b3b64c7e98074eb
/frameworks/native/include/ui/GraphicBuffer.h
|
3599bf2c0727bc33e8136f5163eee6f398545e05 |
|
10-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: use the HWC gralloc usage bit This change makes SurfaceFlinger always use the GRALLOC_USAGE_HW_COMPOSER usage bit when allocating buffers that may be passed to the HWComposer. Change-Id: I70362a8ede2b359fb2046853f85149d597465817
/frameworks/native/include/ui/GraphicBuffer.h
|
697526bc9e44ce61c88614f98387ae8bbf0a187e |
|
01-May-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: android_native_buffer_t -> ANativeWindowBuffer Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417 Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/native/include/ui/GraphicBuffer.h
|
16f0453fee84c6aad59fe0d1c7d36f061d46cffc |
|
20-Jan-2011 |
Glenn Kasten <gkasten@google.com> |
Protected surface API To be used by DRM framework, implemented by display HAL Change-Id: I054a07a94f4d5dbe792f3a597e2e49a100d90eb2
/frameworks/native/include/ui/GraphicBuffer.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/ui/GraphicBuffer.h
|
b5a00fcb71426492f248ed49a0514a9b8d385065 |
|
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 48f42f8c: am 4153bf3a: Merge "[3171580] don\'t automatically log GraphicBuffer allocation failures" into gingerbread * commit '48f42f8c3fbd33b2f46c6290ff5963dd58938cf9': [3171580] don't automatically log GraphicBuffer allocation failures
|
678bdd6349344df254cc0c3377a40fd99e216635 |
|
04-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[3171580] don't automatically log GraphicBuffer allocation failures some of these failures are not fatal and even expected in some cases so they should not emit a dump in the log in those cases. Change-Id: Idcfa252e3bfa9d74e27fe4ad8f8623aa01aa9c5e
/frameworks/native/include/ui/GraphicBuffer.h
|
309d3bb2f902163356f9d40b6d45c11b435d77a9 |
|
07-Oct-2010 |
Jamie Gennis <jgennis@google.com> |
Move binder magic from the Surface class to GraphicBuffer. - Register buffers with Gralloc when unflattening a GraphicBuffer (rather than doing it in the Surface class). - Add support for a GraphicBuffer that wraps an android_native_window_t*. Change-Id: I029ac086111bbac800e5ca37eb505f558b718cd8
/frameworks/native/include/ui/GraphicBuffer.h
|
b7e930db175c192464cebdeb49eb56cf6dd60114 |
|
02-Jun-2010 |
Mathias Agopian <mathias@google.com> |
split surface management from surface's buffers management Change-Id: If3c5655d1231f8f0c49ba68f972b1b20c93b3f87
/frameworks/native/include/ui/GraphicBuffer.h
|
98e71ddaede9a0bfb681fd237bec1f66c6c53193 |
|
12-Feb-2010 |
Mathias Agopian <mathias@google.com> |
remove a dependency of GraphicBuffer (libui) on Parcel (libbinder). Add a Flattenable interface to libutils which can be used to flatten an object into bytestream + filedescriptor stream. Parcel is modified to handle Flattenable. And GraphicBuffer implements Flattenable. Except for the overlay classes libui is now independent of libbinder.
/frameworks/native/include/ui/GraphicBuffer.h
|
6fee064809068fe1a7da63d55678d9a222b0be15 |
|
03-Nov-2009 |
Mathias Agopian <mathias@google.com> |
fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video we lost the concept of vertical stride when moving video playback to EGLImage. Here we bring it back in a somewhat hacky-way that will work only for the softgl/mdp backend.
/frameworks/native/include/ui/GraphicBuffer.h
|
54ba51dff21de666c5ae3bf3abd4f0634ebb0676 |
|
27-Oct-2009 |
Mathias Agopian <mathias@google.com> |
fix [2143798] Need to figure out how to do video Use EGLImageKHR instead of copybit directly. We now have the basis to use streaming YUV textures (well, in fact we already are). When/if we use the GPU instead of the MDP we'll need to make sure it supports the appropriate YUV format. Also make sure we compile if EGL_ANDROID_image_native_buffer is not supported
/frameworks/native/include/ui/GraphicBuffer.h
|
3330b203039dea366d4981db1408a460134b2d2c |
|
06-Oct-2009 |
Mathias Agopian <mathias@google.com> |
fix [2167050] glTexImage2D code path buggy in SurfaceFlinger When EGLImage extension is not available, SurfaceFlinger will fallback to using glTexImage2D and glTexSubImage2D instead, which requires 50% more memory and an extra copy. However this code path has never been exercised and had some bugs which this patch fix. Mainly the scale factor wasn't computed right when falling back on glDrawElements. We also fallback to this mode of operation if a buffer doesn't have the adequate usage bits for EGLImage usage. This changes only code that is currently not executed. Some refactoring was needed to keep the change clean. This doesn't change anything functionaly.
/frameworks/native/include/ui/GraphicBuffer.h
|