Announcement

Collapse
No announcement yet.

GStreamer 1.8 Brings Initial Vulkan API Support

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • GStreamer 1.8 Brings Initial Vulkan API Support

    Phoronix: GStreamer 1.8 Brings Initial Vulkan API Support

    Timed for this week's GNOME 3.20 release, GStreamer 1.8 was officially released this morning...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I enjoy some Vulkan video just as much as anyone else, but why the need for Vulkan support in a Vulkan video playback framework?

    Comment


    • #3
      Originally posted by chuckula View Post
      I enjoy some Vulkan video just as much as anyone else, but why the need for Vulkan support in a Vulkan video playback framework?
      Some video renderers have upscaling algorithms and stuff like that to produce higher image quality for upscaled video than we normally would have that can be pretty intense to render in real time, especially for the CPU. This should help with that and create headroom for more advanced upscalers. Among other things (Like motion smoothing/motion interpolation)

      Comment


      • #4
        Originally posted by chuckula View Post
        I enjoy some Vulkan video just as much as anyone else, but why the need for Vulkan support in a Vulkan video playback framework?
        My guess would be they just implement a renderer with it. OpenGL renderers are fairly commonplace, why not have a Vulkan one?

        Comment


        • #5
          So it's in gst-plugins-bad for now. Unfortunately this happens:
          [code]gst-launch-1.0 videotestsrc ! vulkanupload ! vulkansink
          Setting pipeline to PAUSED ...

          ** (gst-launch-1.0:22801): ERROR **: vkEnumerateInstanceLayerProperties failed to find required validation layer.

          Please look at the Getting Started guide for additional information.
          vkCreateInstance Failure
          [1] 22801 trace trap (core dumped) LC_ALL=C gst-launch-1.0 videotestsrc ! vulkanupload ! vulkansink[
          /code]
          So looking at the code https://github.com/GStreamer/gst-plugins-bad/blob/b634f08ad60d5b09fd6a86e288b16b7b77eaa6cc/ext/vulkan/vkinstance.c#L203-L211 it runs _check_for_all_layers which is supposed to print each layer that is not found: https://github.com/GStreamer/gst-plugins-bad/blob/b634f08ad60d5b09fd6a86e288b16b7b77eaa6cc/ext/vulkan/vkutils.c#L43-L45. Except nothing has been printed. Not sure what's going on there...

          Comment


          • #6
            Originally posted by chuckula View Post
            I enjoy some Vulkan video just as much as anyone else, but why the need for Vulkan support in a Vulkan video playback framework?
            For the same reasons it already had OpenGL support, and Vulkan fits better than OpenGL conceptually wrt threading for GStreamer even.
            You can do all sort of stuff once you are working with opengl or vulkan textures and contexts.
            For example you can do cheap transformation (scale, rotate, tilt, etc), or you can work with existing textures, or output to one, or...

            Comment

            Working...
            X