commit | 4214c750150e2d4c9a7540102119e6a5b390b61e | [log] [tgz] |
---|---|---|
author | Dale Sather <dalesat@google.com> | Mon Oct 14 21:29:46 2019 +0000 |
committer | Dale Sather <dalesat@google.com> | Mon Oct 14 21:29:46 2019 +0000 |
tree | 81a772df89b86798e75ce172bdad6a4fc3b9afe3 | |
parent | ddfaed82d8a4cd57e46fadf363390cb70af76520 [diff] |
[mediaplayer] provide 'silent' participant for sysmem When an adjacent pair of nodes in a player graph both use sysmem and are otherwise compatible, the player has them share a buffer collection. The payload manager was written assuming that the player didn't need access to the buffer collection in this scenario. Unfortunately, the StreamProcessor wrapper is written in such a way that it needs to know the number of buffers in the shared collection. This could be fixed, but it turns out that ImagePipe2 requires us to know this count as well. As an expedient, this CL updates PayloadManager to participate 'silently' in the buffer collection and produce an allocator provisioned with VMOs from collection. This allows the player to interrogate the allocator to determine how many buffers are in the collection. Participating 'silently' just means that the player doesn't constrain the collection in any way. Actual constraints on the collection are imposed by the two nodes. In the future, node pairs that do this will include decryptor->decoder and decoder->imagepipe2. PayloadManager was also modified to defer creating sysmem buffer collection tokens. Previously, in the shared-sysmem-collection case, two sets of tokens would be created, and one set would be discarded. By deferring the creation of the second set of tokens until we know they're needed, the new code creates only one set of tokens for the shared-sysmem-collection case. TEST: the payload manager unit test was updated to reflect the new behavior Change-Id: I18af166ea1a5a9626eeabeb1eeddd8b4a275e7c7
Pink + Purple == Fuchsia (a new operating system)
Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.
Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.
See Getting Started.
See fuchsia.dev.