Xaymar / obs-StreamFX

StreamFX is a plugin for OBS® Studio which adds many new effects, filters, sources, transitions and encoders! Be it 3D Transform, Blur, complex Masking, or even custom shaders, you'll find it all here.
https://s.xaymar.com/streamfx-dc
GNU General Public License v2.0
3.88k stars 2.74k forks source link

Loadable Bundles are required with OBS Studio 28.0 and beyond #883

Closed kilinbox closed 1 year ago

kilinbox commented 1 year ago

Operating System

MacOS 10.15 and higher

OBS Studio Version

OBS28.0 Release Candidate 1

StreamFX Version

0.12.0.77

OBS Studio Log

None

OBS Studio Crash Log

No response

Current and Expected Behavior

Thanks for release 0.12.0.77.

The plugin loaded and worked without problems on OBS28.0 Release Candidate 1 x86_64. However, on OBS28.0 Release Candidate 1 arm64, the plugin was not loaded.

Steps to Reproduce the Problem

OBS28.0 beta1 loaded. OBS28.0 beta2 loaded. OBS28.0 Release Candidate 1 not loaded.

Any additional Information we need to know?

It seems that plugins must be ".plugin bundles" in OBS28.0 RC1 or later. Also, it seems that the installation directory must be "user application support directory", not "global application support directory".

https://github.com/obsproject/obs-studio/pull/7089

Xaymar commented 1 year ago

No idea what a ".plugin bundle" even is. Did they perhaps mean a normal MacOS application bundle?

Xaymar commented 1 year ago

On a related note, as I'm not a Mac user or developer, I'll leave this problem to someone who actually knows what they are doing, or are at least willing to learn the problem. I spent several days just trying to get libobs 28.0.0-beta1 and up to provide a normal libobsTargets.cmake file with include directories, and ended up needing a work around to make it compile at all.

Xaymar commented 1 year ago

Some searching later, it appears that ".plugin bundles" are nothing more than Loadable Bundles. This should be relatively simple to support, though migrating users to the new installation layout will probably require extra scripting.

kilinbox commented 1 year ago

Thanks for doing the research. I also looked into the installer package and it seems that I should set enable_currentUserHome to true. https://developer.apple.com/library/archive/documentation/DeveloperTools/Reference/DistributionDefinitionRef/Chapters/Distribution_XML_Ref.html

I checked the obs-plugintemplate and that is how it was set. https://github.com/obsproject/obs-plugintemplate/blob/master/cmake/bundle/macos/installer-macos.pkgproj.in

treuks commented 1 year ago

hey I'm not quite sure if it relevant, but I'm having the same sort of a problem. I'm on OBS 28.0 RC1, Windows 10. Getting the same kind of error image

Xaymar commented 1 year ago

Loadable Bundles as well as Universal Binaries are now in. Also attempted to get that per-user thing going, with zero success so the Installation guide was updated to adjust for it. Apparently the bug I've run into is from somewhere in the 2010s.