| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \
| | |
| | |
| | |
| | |
| | | |
* changes:
SurfaceTexture: make (dis)connect into an IPC
SurfaceTexture: add support for new connect values
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| |/
| |
| |
| |
| |
| |
| | |
This change adds support to SurfaceTextureClient for the new enum values
that can be passed to the ANativeWindow connect call.
Change-Id: I8c15418909e43a15673a9b22a5eb40df6923b273
|
|\ \ |
|
| |/
| |
| |
| |
| |
| | |
Bug: 5010576
Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes how the Android EGL layer overrides the size and
format of an ANativeWindow in eglCreateWindowSurface. The new behavior
is to leave the size untouched when overriding the format. The previous
behavior was to reset the ANativeWindow to use the default size set by
the ANativeWindow implementation.
It also adds two new 'perform' methods to the ANativeWindow interface:
set_buffers_dimensions and set_buffers_format, and redefines the
behavior of set_buffers_geometry to be the combination of these two new
methods.
Additionally, this change adds an error check for the return value of
the new native_window_set_buffers_format call, which required adding a
(stub) handler for to FramebufferNativeWindow.
Change-Id: I805c7ccd8d4730dfb132d10d8bc3fb058a0b9df1
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change enables the following four SurfaceTextures tests:
UpdateTexImageBeforeFrameFinishedWorks
UpdateTexImageAfterFrameFinishedWorks
RepeatedUpdateTexImageBeforeFrameFinishedWorks
RepeatedUpdateTexImageAfterFrameFinishedWorks
Change-Id: I7632630bc97873e50d4a765ffc44a86f16ae62f1
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- put the test window at the front most screen position
- use RGBA_8888 which is a mandatory format
- handle devices that don't support the protected usage flags
Bug: 4950464
Change-Id: I0005fb667cfe094e5978816e2924b294c5ef817e
|
|/
|
|
| |
Change-Id: I471e5d37ea7a42fc8a0f93446ee3b4229da37807
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Ic859715becf3e6d5107bd8beb8c577034d00ec52
|
| |
| |
| |
| | |
Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change adds a test to verify that proper synchronization is done
when using SurfaceTexture to use CPU generated images as OpenGL ES
textures in 'synchronous mode'. Synchronous mode is particularly tricky
because SurfaceTexture will allow the buffer that's currently bound to
the GL texture to be dequeued. We rely on Gralloc's lock function to
block until this buffer is no longer being used by the OpenGL ES.
Change-Id: I1c4e37f3e9d60ab9a0905a90a1f5060fda8e485c
|
| |
| |
| |
| |
| |
| | |
This change moves the point at which queued buffers get consumed to
after any error checks that could cause updateTexImage to fail. This
way, if updateTexImage returns an error the buffer remains queued.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Change-Id: I54f30a3c16bbe6b813f3bcd1d389da5627531304
|
|
|
|
| |
Change-Id: I05e343ab7e327478f60322af9373574b70c148f5
|
|
|
|
|
|
|
|
|
|
| |
This change makes the SurfaceTexture GL tests use a large (512x512)
framebuffer. The tests now use glViewport to render to a region of the
framebuffer with a size matching that of the texture being drawn. The
Npot test pixel checks must be changed because now the rendered region
is the same size as the texture.
Change-Id: Icc41803189c25e33ba1da7d2470720f0a11f3e4b
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change adds a NULL check when searching the slot list in
SurfaceTextureClient for the slot corresponding to a buffer being
queued or canceled.
Bug: 4645023
Change-Id: I806cbc1e34da118ea33a83c4f25ce8193ba1c3ad
|
| |
| |
| |
| |
| |
| | |
This change enables the QueryFormatAfterSettingWorks.
Change-Id: Ic868011a36a6c86c8646880246cd5b6960a13364
|
|/
|
|
|
|
| |
This change enables the TexturingFromCpuFilledYV12BufferPow2 test.
Change-Id: Ib356ee3d2f8979f34f849fd4090f598295e2e92e
|
|
|
|
|
|
|
|
| |
This change increases the Surface layer used for displaying the test
results so that the tests will be visible over other windows in the
system.
Change-Id: I47f147f8743ff2a39d57d551811668371202bd31
|
|
|
|
| |
Change-Id: Id09915c98a00eca1209b7dab32039a06d260908e
|
|
|
|
| |
Change-Id: Iabc6d27ca35d30d896c6aef65c4f1b5a1eed47b8
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This change adds a test to verify that querying the format of a
SurfaceTextureClient immediately after setting it returns the correct
result. The test is currently disabled because it does not pass.
Change-Id: I5bddb39c5bf96d6104624094383d410ed913e9f3
|
|\ \
| | |
| | |
| | |
| | |
| | | |
* changes:
Temporarily don't return the current buffer in synchronous mode
unify SurfaceTexture and Surface
|
| | |
| | |
| | |
| | | |
activate synchronous mode by default.
|
| |/
| |
| |
| |
| |
| |
| | |
Add the concept of synchronous dequeueBuffer in SurfaceTexture
Implement {Surface|SurfaceTextureClient}::setSwapInterval()
Add SurfaceTexture logging
fix onFrameAvailable
|
| |
| |
| |
| |
| |
| |
| | |
This change disables the UpdateTexImageAfterFrameFinishedWorks test
because it's currently causing deadlocks on some devices.
Change-Id: Ic9186db207e8d656f3af5d86fa138c7d96393c55
|
|/
|
|
|
|
|
| |
This change adds a default tolerance of 2 to all the pixel value checks
in the SurfaceTexture tests.
Change-Id: Id5a7cdffdfae16076e2daf4964a3326105b5ae2c
|
|
|
|
|
|
|
|
|
|
| |
This change adds some tests to verify streaming images from one GL
thread to another via SurfaceTexture. Currently the tests do not
validate the correctness of the streamed images, but rather simply
verify that this streaming does not cause a deadlock. 3 of the 4 tests
are currently disabled because they do cause deadlocks on some devices.
Change-Id: I5677942053190063b97f370dba96c116711bc3bb
|
|
|
|
|
|
|
|
|
|
|
| |
This change adds a test verifying that with no transform set on the
SurfaceTextureClient, the SurfaceTexture will return an identity
transform matrix. It also verifies this same effect in the presence of
an additional call to native_window_set_buffer_count just before the
call to getTransformMatrix.
Bug: 4490420
Change-Id: Ic5adfa29b5696cc2b451433834e3758ef20c5edd
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
Add support for 9-axis gravity and linear-acceleration sensors
virtual orientation sensor using 9-axis fusion
Change-Id: I6717539373fce781c10e97b6fa59f68a831a592f
|
|
|
|
|
|
|
|
| |
The SurfaceTextureSyncModeWaitRetire test was disabled. It is failing
because of the synchronization hacks that were added to SurfaceTexture
to work around bugs in vendor device drivers.
Change-Id: I09a74538bfe14a04833acb6847471e00826cc7fc
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes the MIN_UNDEQUEUED_BUFFERS error check in
dequeueBuffer. The check should only be performed if a buffer has been
queued since the last time the buffer count was changed by the client.
The check must be applied conditionally because video decoders require
all the bufferes to be dequeued and registered before beginning the
decode.
Change-Id: I08d96b380544e395c2fcf0f3983a199bfd695b09
|
|
|
|
|
|
|
| |
This change fixes up some stale comments, member variable names, log
messages and disables a failing test.
Change-Id: Ic1d3344b18066cf710e4a42838b2417c6b1f2f6c
|
|
|
|
|
|
| |
bug:4435022
Change-Id: I06f05a4781ad432ab71db93f0815eb89cd2e7a69
|
|
|
|
| |
Change-Id: I391fe9f6684ac9fd4f91416ce18b583f7087d966
|
|
|
|
| |
Change-Id: If1b74be5230813fb76429935d88b9d4a7c41700c
|
|
|
|
| |
Change-Id: I8382e346ddaa2c4c8ff56ac3ffd7f0109572f188
|
|
|
|
| |
Change-Id: Icfdaa625238246f8d0224efe28fdf2c1c24203f8
|
|
|
|
| |
Change-Id: Ic94cbab092953243a0746e04bbe1b2eb0cc930ef
|
|
|
|
| |
Change-Id: I49da2f5d8408e4cd7e148cfb777bb4ff68cd8f37
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417
Signed-off-by: Iliyan Malchev <malchev@google.com>
|
|
|
|
|
|
|
| |
query() does not modify the object's data, so it needs to be a const method
Change-Id: I67c40a3c865461e6f1cc2193fd2d74286ff6ac8f
Signed-off-by: Iliyan Malchev <malchev@google.com>
|