在 Android 台设备上使用 Vulkan 播放视频
Video playback with Vulkan on Android Devices
关于世界几何的视频播放又名 "movie texture" 是许多游戏的重要功能。在 Android 上,这可以通过使用
硬件加速来完成
GL_TEXTURE_EXTERNAL_OES
OpenGL ES 扩展。
但我找不到任何类似的 vulkan 扩展或功能。
是否有人已经找到了如何使用 vulkan 播放视频的解决方案,该解决方案不涉及在 CPU 和 GPU ram 之间复制每个帧的纹理数据,因此对于 [=21] 来说足够高效=] 设备 ?
Vulkan 等价物是 KHX_external_memory
系列扩展。 "KHX" 这个绰号意味着它们是实验性的,因此它们可能没有得到广泛实施。
然而,当前实际提供外部存储器源的扩展是 Win32(通过 Windows HANDLE
s)和 fd(通过 POSIX 文件描述符)。这与 OES_EGL_image_external 的行为完全不同,后者是关于访问甚至可以具有 OpenGL 通常不处理的格式 (YUV) 的 EGL 图像。 Vulkan 外部存储器工具要求格式为实际的 Vulkan 格式。
所以目前,Vulkan 无法有效处理您所说的内容。
关于世界几何的视频播放又名 "movie texture" 是许多游戏的重要功能。在 Android 上,这可以通过使用
硬件加速来完成GL_TEXTURE_EXTERNAL_OES
OpenGL ES 扩展。
但我找不到任何类似的 vulkan 扩展或功能。
是否有人已经找到了如何使用 vulkan 播放视频的解决方案,该解决方案不涉及在 CPU 和 GPU ram 之间复制每个帧的纹理数据,因此对于 [=21] 来说足够高效=] 设备 ?
Vulkan 等价物是 KHX_external_memory
系列扩展。 "KHX" 这个绰号意味着它们是实验性的,因此它们可能没有得到广泛实施。
然而,当前实际提供外部存储器源的扩展是 Win32(通过 Windows HANDLE
s)和 fd(通过 POSIX 文件描述符)。这与 OES_EGL_image_external 的行为完全不同,后者是关于访问甚至可以具有 OpenGL 通常不处理的格式 (YUV) 的 EGL 图像。 Vulkan 外部存储器工具要求格式为实际的 Vulkan 格式。
所以目前,Vulkan 无法有效处理您所说的内容。