Skip to content

Releases: xXJSONDeruloXx/lsfg-vk-android

v1.0.0-android-ahb — AHardwareBuffer frame generation for Android/Turnip

28 Apr 19:07

Choose a tag to compare

LSFG-VK Android AHB Build

Prebuilt Vulkan implicit layer for Lossless Scaling frame generation on Android (arm64-v8a).

What changed from upstream

  • Uses AHardwareBuffer-based image sharing instead of OPAQUE_FD (Turnip/Mesa doesn't support OPAQUE_FD)
  • Uses vkGetImageMemoryRequirements instead of vkGetAndroidHardwareBufferPropertiesANDROID (bypasses Vortek ICD wrapper gap)
  • Sync via presentContext(-1, {}) + waitIdle() instead of semaphore FD export
  • Uses TMPDIR env var instead of hardcoded /tmp
  • AHB function pointer made optional — device layer init doesn't fail if unavailable

Build config

  • NDK 27, arm64-v8a, API 26, c++_static STL, Release
  • LSFGVK_ANDROID_WINE=ON, VK_USE_PLATFORM_ANDROID_KHR=1
  • Linked: libdl, libm, libc, libandroid

Files

  • liblsfg-vk-layer.so — stripped, 2.4MB. Install to ~/.local/lib/ in container
  • VkLayer_LS_frame_generation.json — Vulkan layer manifest. Install to ~/.local/share/vulkan/implicit_layer.d/

Runtime requirements

  • Lossless.dll (user-supplied, auto-discovered from Steam app 993090)
  • Vulkan 1.3+ device with VK_ANDROID_external_memory_android_hardware_buffer support