[Impeller] Fixes to YUV imports on Android, Incomplete read of pipeline cache data, missing enabled extensions.#164744
Conversation
gaaclarke
left a comment
There was a problem hiding this comment.
lgtm, what are our options for tests?
|
|
||
| namespace { | ||
|
|
||
| static bool RequiresYCBCRConversion(vk::Format format) { |
There was a problem hiding this comment.
nit: static isn't necessary, you are in an anonymous namespace
|
|
||
| static bool RequiresYCBCRConversion(vk::Format format) { | ||
| switch (format) { | ||
| case vk::Format::eG8B8R83Plane420Unorm: |
There was a problem hiding this comment.
add [[fallthrough]]
https://google.github.io/styleguide/cppguide.html#Switch_Statements
There was a problem hiding this comment.
AFAIK from reading this we only need [[fallthrough]] if there is a body, not when we group multiple cases together?
There was a problem hiding this comment.
Sorry, you're right. Didn't point this out to me the other day?
|
Not great, but possible via mocked vulkan. I think for the enabled extensions, we can run the hcpp tests w/ vulkan validation enabled. |
|
I'm seeing if I can get vulkan tests running on Android so we don't have to mock (everything) out. |
engine/src/flutter/impeller/renderer/backend/vulkan/android/ahb_texture_source_vk_unittests.cc
Outdated
Show resolved
Hide resolved
|
Tests added! |
| "flutter/impeller/renderer/backend/vulkan:vulkan_android_unittests", | ||
| "flutter/impeller/renderer/backend/vulkan:vulkan_android_apk_unittests", |
There was a problem hiding this comment.
This is just building the tests right? it isn't executing them.
There was a problem hiding this comment.
correct, but the tests are run as part of the existing android test shard as I've added them here: https://github.com/flutter/flutter/pull/164744/files#diff-208f1d19de16cc0af95bc6c1c374cde2f450d73098b217e66b3cf98f1b097b3cR767
|
And of course we can see the tests are running because they failed on the API 28 emulator due to a missing cap check :) |
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…f pipeline cache data, missing enabled extensions. (flutter/flutter#164744)
…ne cache data, missing enabled extensions. (flutter#164744) - Handle textures that require a YUV import but aren't an undefined format. - INCOMPLETE is actually a success case for the pipeline cache. CERTAIN drivers ALWAYS return incomplete, even when they wrote all the data. Probably an off by one or something like that... - Ensures Optional AndroidExtensions are enabled - Only creates a YUV conversion if necessary
Uh oh!
There was an error while loading. Please reload this page.