AMF icon indicating copy to clipboard operation
AMF copied to clipboard

Add a interface for OpenGL texture input for encode/decode onlinux

Open Oblivic opened this issue 2 years ago • 1 comments

AMF only support vulkan on linux, because of OpenGL dosen't support NV12/P010 ? use GL_R8 to simulate NV12, like nvidia nvenc such as 1920x1080 NV12, use 1920x1620 GL_R8 GL_RED texture and GL_R16 for P010 it can also simulate Y444/Y410

Oblivic avatar Apr 20 '23 06:04 Oblivic

Linux AMF is fundamentally built on top of Vulkan. One can import Vulkan image into OpenGL using extensions and fill it in there. Note, that one can also submit RGBA images directly to AMF so conversion to NV12 not always needed. Manipulating substitutions for formats is not always work because of possible DCC compression or tiling which cannot be always supported.

MikhailAMD avatar Apr 20 '23 16:04 MikhailAMD

Usually one can

  • allocate an image in Vulkan
  • get FD handle
  • import it into OpenGL render
  • synchronize and use Vulkan image in AMF

But OpenGL doesn't have YUV textures, RGBA only.

rhutsAMD avatar Apr 11 '24 17:04 rhutsAMD