GithubHelp home page GithubHelp logo

Comments (7)

EPOCHvoyager avatar EPOCHvoyager commented on June 9, 2024

Did a little research on this, it seems that the obs-gstreamer version of these VA-API encoders(the ones listed as 'GStreamer Encoder H.26X') was just a feasibility test - fzwoch/obs-vaapi#22 (comment).

The author recommends usage of the modern obs-vaapi encoders instead - fzwoch/obs-vaapi#11 (comment) - which are packaged in 'com.obsproject.Studio.Plugin.GStreamerVaapi' and are listed as 'VA-API H.26X on {GPU}', with no issues regarding the lack of this runtime; only requiring it for use of its legacy encoders - fzwoch/obs-vaapi#19.

That is still broken functionality of a plugin by default, however, and a lack of functionality for another. Something of note is that on uninstallation, there are quite a few flatpak packages that can make use of it.

from bazzite.

AstralPhnx avatar AstralPhnx commented on June 9, 2024

Yeah that checks out. I know OBS includes VA-API encoding too but apparently it doesn't work as well as the gstreamer one? Info on this is all over the damn place sadly. I'll need to double check some things on my end to clarify

from bazzite.

EPOCHvoyager avatar EPOCHvoyager commented on June 9, 2024

The ones included in OBS are the ffmpeg ones.

from bazzite.

AstralPhnx avatar AstralPhnx commented on June 9, 2024

The ones included in OBS are the ffmpeg ones.

Aight so we don't want those at all lmao those run really badly, we want the VA-API stuff.

It does look like however for ideal functionality you DO still need the freedesktop dependency as seen on the flathub repo here https://github.com/flathub/com.obsproject.Studio.Plugin.GStreamerVaapi

from bazzite.

AstralPhnx avatar AstralPhnx commented on June 9, 2024

Ok, done some poking about.

The bare minimum you need for the correct VA-API plugin to work is the following flatpaks.

com.obsproject.Studio.Plugin.GStreamerVaapi
org.freedesktop.Platform.GStreamer.gstreamer-vaapi//23.08

The package above in bold is seemingly entirely missing from Bazzite's install process from a cursory look through the code at flatpaks. I'm only seeing reference to the first plugin (which is correct) but no references to the freedesktop runtime which is required for functionality which lines up with what I mentioned in my original post.

It's worth noting that this plugin is just the VA-API GStreamer part that has been yoinked out of the larger GStreamer plugin which is no longer maintained, it's very similar code though.

Upon correct installation the following encoder should show up in OBS, format of "VAAPI H.264 on Device xyz" see screenshot below.
Screenshot from 2024-05-16 13-22-05

So, to recap, bazzite is currently shipping with the correct VA-API plugin (this is good) but it is missing the required runtime out of the box seemingly to properly make use of this plugin seamlessly (not good). All that would need to be done to rectify is adding org.freedesktop.Platform.GStreamer.gstreamer-vaapi//23.08 in as a runtime dependency and then you'd be golden.

Also worth noting is the legacy option, it's obviously not being developed anymore but may be of some use to some people, to enable that you need the 22.08 version of org.freedesktop.Platform.GStreamer.gstreamer-vaapi. This would be optional for the most part though.

from bazzite.

EPOCHvoyager avatar EPOCHvoyager commented on June 9, 2024

I'm getting the legacy option from the 23.08 runtime, but that could be because I'm on Navi10. From my testing, I only need 'com.obsproject.Studio.Plugin.GStreamerVaapi' for the new VA-API to show up and work correctly.

from bazzite.

AstralPhnx avatar AstralPhnx commented on June 9, 2024

I'm getting the legacy option from the 23.08 runtime, but that could be because I'm on Navi10. From my testing, I only need 'com.obsproject.Studio.Plugin.GStreamerVaapi' for the new VA-API to show up and work correctly.

Weird. So either the documentation is jank and we don't need any extra api's or you do need the api for something but god knows.

don't you just love wonky documentation

from bazzite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.