Add a interface for OpenGL texture input for encode/decode onlinux
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
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.
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.