VkImportAndroidHardwareBufferInfoANDROID
To import memory created outside of the current Vulkan instance from an
Android hardware buffer, add a
VkImportAndroidHardwareBufferInfoANDROID structure to the pNext
chain of the VkMemoryAllocateInfo structure.
The VkImportAndroidHardwareBufferInfoANDROID structure is defined as:
typedef struct VkImportAndroidHardwareBufferInfoANDROID {
    VkStructureType sType;
    const void* pNext;
    struct AHardwareBuffer* buffer;
} VkImportAndroidHardwareBufferInfoANDROID;
- sTypeis a VkStructureType value identifying this structure.
- pNextis- NULLor a pointer to a structure extending this structure.
- bufferis the Android hardware buffer to import.
If the vkAllocateMemory command succeeds, the implementation must acquire a reference to the imported hardware buffer, which it must release when the device memory object is freed. If the command fails, the implementation must not retain a reference.
Valid Usage
VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880
If buffer is not NULL, Android hardware buffers must be
supported for import, as reported by
VkExternalImageFormatProperties or
VkExternalBufferProperties
VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881
If buffer is not NULL, it must be a valid Android hardware
buffer object with AHardwareBuffer_Desc::usage compatible with
Vulkan as described in Android
Hardware Buffers
Valid Usage (Implicit)
VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType
sType must be VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID
VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter
buffer must be a valid pointer to an AHardwareBuffer value