Skip to content

libplacebo: refactor vout to be backend-agnostic, add support for OpenGL

Niklas Haas requested to merge haasn/vlc:vk-api into master

There's no reason that the vulkan/display.c, which effectively does not depend on vulkan specifics (except for context creation), should be vulkan-exclusive. libplacebo supports OpenGL and (soon) Direct3D as well, so we this vout should be backend-agnostic and support any API supported by libplacebo.

This series deletes the old vulkan vout module and adds a new libplacebo vout, which is functionally identical but moves context creation to a separate family of modules, with implementations for Vulkan and OpenGL.

TODO:

  • Squash !65 (82c20fcd) into previous commits
  • Decide what to do about the OpenGL / GLES module(s)
Edited by Niklas Haas

Merge request reports