Age | Commit message (Collapse) | Author |
|
During protected video playback an issue could happen when there are layers
below the protected video surface. The current logic in protected plane
provisioning logic includes all layers below the protected layer in precomp
plane in order to draw holes in these. However, when there are other layers in
place, in particular one that has blending (ex. PREMULT). For example:
Layers: count=3
[0] blending[a=255]=NONE display_frame[x/y/w/h]=0/125/2560/1438
[1] protected blending[a=255]=NONE display_frame[x/y/w/h]=0/181/2560/1438
[2] blending[a=255]=PREMULT display_frame[x/y/w/h]=0/0/2560/1800
Planes: count=3
[0] plane=17 type=LAYER source_layer=1
[1] plane=22 type=LAYER source_layer=2
[2] plane=23 type=PRECOMP source_layer=0
Squash Regions: count=0
Pre-Comp Regions: count=0
In this case, layer[0] is below protected surface (layer[1]). This causes
issues because precomp plane is setup to be on the highest z-order all the
time, and any time it isn't it expects any layers with higher z-order will
obscure some contents of the precomp layer. But in this case the layer on top
(layer[2]) has blending enabled (PREMULT) and is transparent so expectation is
that layer[0] is also rendered and blended with layer[2].
By merging any layer that is of higher z-order (layer[2] in example) to precomp
plane, all these layers can be handled during pre composition.
Test: run secure video in split screen mode
Bug: 36879178
Change-Id: I9b63b37fef0ae828c4a781e0d1da264d8a3d7a76
|
|
Current method to queue work such as display compositions relies on
spinning the CPU until there is space in the queue. This is inefficient
for the time in which the queue happens to fill up.
Introduce a new QueueWorker class to simplify queueing work and handle
blocking for available space more efficiently.
Change-Id: Ida7aa612931700a56ecae3efc7ddd1c86efec699
|
|
Make use of standard library mutex and conditions which simplifies use
of condition variables and benefits from things like scoped locking.
Also add tests to make sure it runs as expected.
Change-Id: Iaf92e17e1f6757dce490eddee61f84cb1f953b0c
|
|
am: d6324e6759
am: d53cfbe9b8
Change-Id: I45d1780f6f154ee7fc5438553604c139cce44fcf
|
|
am: d6324e6759
Change-Id: I518b235ec28d0248486f44df380928cc2a6a2f32
|
|
am: d0147d2dfa
Change-Id: I4901a98ed0a9fec9d2f2fb45566ea533c8857be2
|
|
am: 15d6a22ad6
Change-Id: I220404e3d70396f602fd41e754a314a6dd54367a
|
|
drm_hwcomposer fails to compile on aosp/master due to
assert.h not being included.
This patch fixes this issue.
BUG=None
TEST=make
Change-Id: Icb5d5d8a33c9898a5aefa00c1bdbf29965de62a7
Signed-off-by: Robert Foss <robert.foss@collabora.com>
|
|
am: e438c1de52
Change-Id: Ic76d336f33549e68cde658c971c5314d02fa3097
|
|
am: 77286a5cfb
Change-Id: I1e9f6b9788365308b0b84383300d12f84390adb3
|
|
am: cb31814680
Change-Id: I335f364a738b57f34b66c340a5c935a9eef270d0
|
|
am: 1c5a6ac75d
Change-Id: If734812198f324842dcb92f760a37977050f8c95
|
|
This was previously leaked by libc++.
Test: mma
Bug: http://b/34740564
Change-Id: I7084cdb44a9b7346556c20b1b6eeebc6ebb2d500
|
|
ff522c77d5 am: 5ad151f3ca am: 0b0a617525
am: 0378c5f2c9
Change-Id: I5f0739aa4cbe993a841ea240c59a4a3c54b96bd5
|
|
ff522c77d5 am: 5ad151f3ca
am: 0b0a617525
Change-Id: Iac004d1fc56485f3ce234fbe34b24513a13fb309
|
|
ff522c77d5
am: 5ad151f3ca
Change-Id: Idbc7d2b9453eb5a203467b82ebd0eaebf95010c7
|
|
am: ff522c77d5
Change-Id: I9084ef5da1950f0c2c86fb567eb86fd1e6fc2fa6
|
|
am: 6862df5491
Change-Id: I4583eaa39e7c53f67f6ded2e0c2863d49c9e8b5a
|
|
d3542a23a7
am: 93657448e3
Change-Id: Ie53e21bae8677f678c133bfb80973d95204724d5
|
|
am: d3542a23a7
Change-Id: I71b6071e704e32b35745c0c3ca9f9f67387d53e3
|
|
am: ced19e30cf
Change-Id: I8ae37f9946d2b98c775f8e7224e2e70466c245b7
|
|
Bug: 32218819
Change-Id: Ic8f2c5d078a5ee9a48862a8e8faca051f199b78e
Signed-off-by: Adrian Salido <salidoa@google.com>
|
|
Bug: 32218819
Change-Id: Ic8f2c5d078a5ee9a48862a8e8faca051f199b78e
Signed-off-by: Adrian Salido <salidoa@google.com>
|
|
3af111cf59
am: 6d59b2091a
Change-Id: I922a21f182a80d6c60106130a33df153ce4e8710
|
|
am: 3af111cf59
Change-Id: I47f54e2a0cc0c2235ffb757a5579268277dafe06
|
|
am: ff717ff5b0
Change-Id: I89614273f61428a5303586c0fd63bdc4a53e3e63
|
|
Each element of the queue requires use of limited resources
(file descriptors). If the queue doesn't get throttled when
frame worker is not getting scheduled to consume the elements
from it then it can quickly reach max fd limit and cause
unexpected behavior such as system crash.
Test: run cts including CtsMediaTestCases
Bug: 31594201
Change-Id: I77345ae66da5675f4214f42f0c5bfb773bf5fd3f
|
|
SquashFrame am: c74c8b9339 am: b38dbf65e0\" into nyc-mr1-dev-plus-aosp
am: e01006bf0b -s ours
Change-Id: I10f6cf4f4df59472c2e5598886ababcc7eec51f3
|
|
b4cf01b8ea am: 7ca7746261\" into nyc-mr1-dev-plus-aosp
am: 6f718d173a -s ours
Change-Id: I7719b53e123ed900ee4d0b090eba59a45437fd64
|
|
am: c74c8b9339 am: 80b6062966
am: 890853a1bf -s ours
Change-Id: Ia8a1f3bfdc53cd1c501a5bac532ec11785cdebac
|
|
b4cf01b8ea am: 95ff952c0f
am: c81cbb069a -s ours
Change-Id: I3dfb91576ead7e2be97d2af0718979dea26eb605
|
|
SquashFrame am: c74c8b9339 am: b38dbf65e0" into nyc-mr1-dev-plus-aosp
|
|
b4cf01b8ea am: 7ca7746261" into nyc-mr1-dev-plus-aosp
|
|
am: c74c8b9339
am: 80b6062966
Change-Id: I0936e00e4b5fa1712759b4a0a28e7c056c2d9e38
|
|
am: c74c8b9339
am: b38dbf65e0
Change-Id: Ia0e142fdaa6ab5bd4d00f46f46e1dc9b43d51fad
|
|
am: 95ff952c0f
Change-Id: I1e81cd2f16a77721e4086286c316a3d1f0a6d3a5
|
|
am: 7ca7746261
Change-Id: Ibf56c0cf4d74bc186e86acaadc5cc40841cd797c
|
|
am: c74c8b9339
Change-Id: Ie7d401ac8d7a91c027a7d93b1e86a8a58f03b96e
|
|
am: c74c8b9339
Change-Id: Ibfe0a03568d74f2517eb86d4f97b7339a5bb38bb
|
|
am: b4cf01b8ea
Change-Id: I4abe49d312a92fdac39cd95c95434384225c3f6c
|
|
am: b4cf01b8ea
Change-Id: I3afa118c0e6d9ffbfc2c5f2e77d09b027882da4d
|
|
am: 9d7612026e am: 5ef27816e9 am: a48e4fbb76
am: a77cd05acd
Change-Id: I590705658bc023fa1092aa9bb2eba2319e87c302
|
|
7cabba9701 am: dd34aa9b8c am: df880a7cd0
am: 7c49f90c2a
Change-Id: Ie6eb3e93e84d355f3b393513265724cdab034a0f
|
|
am: 9d7612026e am: 5ef27816e9
am: a48e4fbb76
Change-Id: I8489a79540f353bd2ea1de1365f5e6a8a3ac3e80
|
|
7cabba9701 am: dd34aa9b8c
am: df880a7cd0
Change-Id: I7f91566dec685ffa136af5eadd7a5b97fb249bf4
|
|
am: 9d7612026e
am: 5ef27816e9
Change-Id: I0eef3e89310fbdad4589c396f7fa1a64e2da007b
|
|
am: dd34aa9b8c
Change-Id: I65b5140c6cc6e967dcef924b239165bbbf0093a0
|
|
am: 9d7612026e
Change-Id: Ia67973ff43e70138d8f7a9e21e896f69e125bf9e
|
|
am: 7cabba9701
Change-Id: I1063076ca5276bbf9048bd947f542e16696e865f
|
|
am: fab5ea10b0
Change-Id: I050b6a4c2b9361dd89571712ad9dd8cc2c86060c
|