1681d95989271f3a9ac0dbb93d10e4a29f2b4444 |
|
28-Jun-2014 |
Ruben Brunk <rubenbrunk@google.com> |
Add sticky transform to surfaceflinger. Bug: 15116722 - Adds a sticky transform field that can be set from a SurfaceFlinger client Surface. This transform is added to any transform applied to the Surface. Change-Id: Idaa4311dfd027b2d2b8ea5e2c6cba2da5779d753
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
29a3e90879fd96404c971e7187cd0e05927bbce0 |
|
20-Jun-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add allocateBuffers method This adds an allocateBuffers method to BufferQueue, which instructs it to allocate up to the maximum number of buffers allowed by the current configuration. The goal is that this method can be called ahead of render time, which will prevent dequeueBuffers from blocking in allocation and inducing jank. This interface is also plumbed up to the native Surface (and, in another change, up to the Java Surface and ThreadedRenderer). Bug: 11792166 Change-Id: I4aa96b4351ea1c95ed5db228ca3ef98303229c74
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
d9822a3843017444364899afc3c23fb5be6b9cb9 |
|
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueueProducer: add detachNextBuffer Adds a new method, IGBP::detachNextBuffer, that effectively does dequeue + request + detach in a single call, but does not need to know anything about the dequeued buffer, and will not block on dequeue. This is mostly for the upcoming StreamSplitter to use in its onBufferReleased callback. Change-Id: Ie88a69de109003acebaa486a5b44c8a455726550
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
fd34b65f717b84fa06d8c37f41b070f41d0ad3a3 |
|
11-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Add producer buffer-released callback"
|
f0eaf25e9247edf4d124bedaeb863f7abdf35a3e |
|
21-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add producer buffer-released callback Add a callback to the producer side, onBufferReleased, which will be called every time the consumer releases a buffer back to the BufferQueue. This will enable a buffer stream splitter to work autonomously without having to block on dequeueBuffer. The binder object used for the callback replaces the generic IBinder token that was passed into IGraphicBufferProducer::connect to detect the death of the producer. If a producer does not wish to listen for buffer release events, it can pass in an instance of the DummyProducerListener class defined in IProducerListener.h, if it even cares about death events (BufferQueue doesn't enforce the token being non-NULL, though perhaps we should). Change-Id: I23935760673524abeafea2b58dccc3583b368710
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
0ec54e156bed93d59900b742c8e9adcfaee90612 |
|
21-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Declare ownership of native_handle_t object Change-Id: I4e21ff8ea76cfafce943dc059c8f72b42397980e
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
73ed82f809a40560fd3a6d53d18e5c846362d764 |
|
13-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Merge "Add sideband streams to BufferQueue and related classes"
|
399184a4cd728ea1421fb0bc1722274a29e38f4a |
|
04-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Add sideband streams to BufferQueue and related classes Sideband streams are essentially a device-specific buffer queue that bypasses the BufferQueue system. They can be used for situations with hard real-time requirements like high-quality TV and video playback with A/V sync. A handle to the stream is provided by the source HAL, and attached to a BufferQueue. The sink HAL can read buffers via the stream handle rather than acquiring individual buffers from the BufferQueue. Change-Id: Ib3f262eddfc520f4bbe3d9b91753ed7dd09d3a9b
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
9f3053de78630815d60cf48a2cf2348cc5867c45 |
|
07-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Allow detaching/reattaching buffers Adds detachBuffer and attachBuffer calls to both the producer and consumer sides of BufferQueue. Buffers may be detached while dequeued by the producer or acquired by the consumer, and when attached, enter the dequeued and acquired states, respectively. Bug: 13173343 Change-Id: Ic152692b0a94d99e0135b9bfa62747dab2a54220
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
3f342c113360eacc1e9c1ff481cb03f700a50117 |
|
17-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 02b62df7: Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev * commit '02b62df7119b27c89d91d96938d8f4f5232b296b': Make sure do disconnect from a BQ when its client dies.
|
365857df8b94c959dea984a63013f6e7730ef976 |
|
12-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Make sure do disconnect from a BQ when its client dies. Bug: 5679534 Change-Id: If447e8673df83fe0b1d6210641e0a48522501a53
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
30290a557e596c9bd58f99f9b8a3ea10bcbc8760 |
|
19-Aug-2013 |
Andy McFadden <fadden@android.com> |
am 90f59bf9: Merge "Re-enable frame dropping for non-auto timestamps" into klp-dev * commit '90f59bf9eba79b27629505bc2709d84e7c811c8b': Re-enable frame dropping for non-auto timestamps
|
3c25621ad7d13f64d3ab95a27fa970fbc9998f73 |
|
16-Aug-2013 |
Andy McFadden <fadden@android.com> |
Re-enable frame dropping for non-auto timestamps This change adds an entire field to note whether the timestamp was auto-generated by Surface or supplied by the application. The value is used when deciding whether or not to drop frames based on buffer presentation timestamps. If a desired presentation time was set explicitly, BufferQueue will use that value to decide if a frame should be dropped. If the timestamp was generated by Surface at the time the buffer was queued, the timestamp is ignored. Bug 10151804 Change-Id: Ibd571a7578351063b813cbdad2ddbeed70655ba5
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
771ed8d71be8c851991164cd10fcfbf2431df86d |
|
13-Aug-2013 |
Jesse Hall <jessehall@google.com> |
am fc43e16a: Merge "Graphics:Add error check when create GraphicBuffer" * commit 'fc43e16a5693bca0edfc82c650fb606971e47138': Graphics:Add error check when create GraphicBuffer
|
2aff7025482cc40d2ebd45f81cdb318ac1c6f868 |
|
20-Nov-2012 |
Lingyun Zhu <lingyun.zhu@intel.com> |
Graphics:Add error check when create GraphicBuffer Change-Id: Ib0ca59bf1dfe4ae0266c29c91c1dbe3d02c0904e Author: Lingyun Zhu <lingyun.zhu@intel.com> Signed-off-by: Lingyun Zhu <lingyun.zhu@intel.com> Signed-off-by: Shuo Gao <shuo.gao@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Author-tracking-BZ: 50141
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
ba93b3f8e403636b614a4a379f9421bc70dca84f |
|
02-Aug-2013 |
Mathias Agopian <mathias@google.com> |
log an error when dequeueBuffer gets a NULL Fence Bug: 9858745 Change-Id: If35d6a7d770bf0a42d55bc55880a9ddb721fcfd0
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
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/libs/gui/IGraphicBufferProducer.cpp
|
7cdd786fa80cf03551291ae8feca7b77583be1c5 |
|
19-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make ANW.setSwapInterval(0) work again we can now queue/dequeue a buffer in asynchrnous mode by using the async parameter to these calls. async mode is only specified with those calls (it is not modal anymore). as a consequence it can only be specified when the buffer count is not overidden, as error is returned otherwise. Change-Id: Ic63f4f96f671cb9d65c4cecbcc192615e09a8b6b
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
595264f1af12e25dce57d7c5b1d52ed86ac0d0c9 |
|
17-Jul-2013 |
Mathias Agopian <mathias@google.com> |
BufferQueue improvements and APIs changes this is the first step of a series of improvements to BufferQueue. A few things happen in this change: - setSynchronousMode() goes away as well as the SynchronousModeAllowed flag - BufferQueue now defaults to (what used to be) synchronous mode - a new "controlled by app" flag is passed when creating consumers and producers those flags are used to put the BufferQueue in a mode where it will never block if both flags are set. This is achieved by: - returning an error from dequeueBuffer() if it would block - making sure a buffer is always available by replacing the previous buffer with the new one in queueBuffer() (note: this is similar to what asynchrnous mode used to be) Note: in this change EGL's swap-interval 0 is broken; this will be fixed in another change. Change-Id: I691f9507d6e2e158287e3039f2a79a4d4434211d
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
4c00cc11141da7d159eb2323b186ed344115c0f1 |
|
16-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Fix argument types in IGraphicBufferProducer methods Bug: 8384764 Change-Id: I7a3f1e1a0584a70af04f9eafef900505389d2202
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
1df8c345854155cbbcb9f80de9d12d66ea70ac08 |
|
20-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: disallow NULL Fence pointers This change eliminates the uses of a NULL sp<Fence> indicating that no waiting is required. Instead we use a non-NULL but invalid Fence object for which the wait methods will return immediately. Bug: 7892871 Change-Id: I5360aebe3090422ef6920d56c99fc4eedc642e48
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
466a192d2088f9238d34597d1aa28da41367c1ca |
|
08-Jan-2013 |
Andy McFadden <fadden@android.com> |
Minor tweaks. Change-Id: I9f82f574112141b6aa074c42303056cd52d5c478
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|
2adaf04fab35cf47c824d74d901b54094e01ccd3 |
|
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: Ia03e468888025b5cae3c0ee1995434515dbea387
/frameworks/native/libs/gui/IGraphicBufferProducer.cpp
|