StreamFX (for OBS Studio)

StreamFX (for OBS Studio) 0.9.2

Xaymar

Active Member
@sendblink23 It is not possible for the plugin to affect the UI in any meaningful way, especially if it stays around after removing the plugin. What you've discovered is likely a bug in the new update.

The stretching/squishing issue is known and listed on GitHub.

23.x will be supported when it is officially released and no earlier.
 

Petter005

New Member
I would like to know where to get the chat theme on the "3D transformed chat" example picture on the overview
 

Xaymar

Active Member
Version 0.5.0 is now available in Early Access on Patreon for 30 Days! Get it now and support the further development of the plugin.

Primary focus for this version was stability and performance, then features. And with that said, there have been a lot of stability and performance improvements to this version. The biggest change is that the plugin should now work on future versions of OBS Studio as long as the linked graphics layer does not change too much. Right after that come a lot of stability improvements and leak fixes which aren't in 0.5.0pr3. On to the actual changes:

A new filter was added called "Signed Distance Effects" which allows you to draw a Shadow inside or outside of a transparent source. It is a cheaper alternative to the usual blurred shadows, but not quite as fast when it comes to catching up with the changes in the source. Do keep in mind that this shadow is limited to the actual size of the source, so you will need to use the Crop/Pad filter to expand the source if you wish to extend it past the boundary of the source.

Then there is the Blur Filter, which has received a much needed GPU usage reduction and it should now work better on low power GPUs and cause less impact on games. Primarily this was achieved through caching the blur results and reducing the number of texture accesses, which should make Studio Mode possible on some GPUs again. Additionally it now supports masking with various input types, allowing you to do things like dynamically updating the area behind an overlay that ends up blurred, however this has no impact on GPU usage as the blur is still calculated for the entire source.

The 3D Transform Filter should also no longer cause squishing if the source size was changed, and now supports Mipmapping if OBS Studio is using Direct3D 11. With Mipmapping you can keep your rotated or scaled chat more readable instead of it resulting in heavy aliasing. It will also now cache the result of the transformation, which should further reduce rendering cost.

And as the last change there is Source Mirror. It can now mirror Video and Audio data, rescale the video data properly and should no longer crash on exit due to leaking sources, which means you can now use it with Video Capture Sources like Capture Cards.

Unfortunately Custom Shaders are not yet ready for a release and have been removed for the time being. The code just wasn't working as planned and it just didn't support the necessary stuff to work right. A new design is being worked on and should be ready in the near future.
 
Hello Xaymar,

First of all thank you so much for your work developing this plugin: it is absolutely fantastic.

I was wondering if it would be possible to add this feature to the 3D Transform Filter: The posibility of adding motion to the 3D Transform, in the way that you can start your source in an initial 3D Tranform (for example, one specicific perspective) and then (by a hotkey or timer) the source change smoothly to an other 3D Transform (for example a second specific perspective).

Thanks a lot again for your work. Regards.
 

Xaymar

Active Member
Hello Xaymar,

First of all thank you so much for your work developing this plugin: it is absolutely fantastic.

I was wondering if it would be possible to add this feature to the 3D Transform Filter: The posibility of adding motion to the 3D Transform, in the way that you can start your source in an initial 3D Tranform (for example, one specicific perspective) and then (by a hotkey or timer) the source change smoothly to an other 3D Transform (for example a second specific perspective).

Thanks a lot again for your work. Regards.
You might want to delve into scripting, which is fully capable of doing that and more. OBS supports Lua and Python scripting to my knowledge, and both are relatively easy to use.
 

Abgematzt

New Member
Maybe i found a bug. Your plugin are awesome...really. But if i start OBS Studio 23.xxx, all transitions, rotates and what ever are not active. (image first opening) If i choose the file (before change image) and change a value inside your plugin...(value set image) the text jumps into the position like last using and before i close obs studio. (fixed image)
Chat, Timer ...i use your plugin for all this sources. But that isnt helpful, if the plugin destroy every value and i can start at new if i open OBS.
Any idea?
sry for my bad english
 

Attachments

Last edited:

Xaymar

Active Member
Maybe i found a bug. Your plugin are awesome...really. But if i start OBS Studio 23.xxx, all transitions, rotates and what ever are not active. (image first opening) If i choose the file (before change image) and change a value inside your plugin...(value set image) the text jumps into the position like last using and before i close obs studio. (fixed image)
Chat, Timer ...i use your plugin for all this sources. But that isnt helpful, if the plugin destroy every value and i can start at new if i open OBS.
Any idea?
sry for my bad english
This is fixed in 0.5.0 (not 0.5.0pr3), a release that is currently Patreon exclusive.
 

Xaymar

Active Member
Imagine paywalling bug fixes ???
This plugin is provided for free, made in my free time, and only funded through Patreon. That means that those people on Patreon get early access to everything that is funded through Patreon, as it is a fair reward, and everyone else gets it at a delayed pace. I have been considering making it completely Patreon exclusive, or at least making a number of features be Patreon exclusive. You can't expect everything to be free, especially when someone spends a lot of time on it and would like to see some financial support coming from it.

Next is the fact that 0.5.0pr3 is a PREVIEW RELEASE, and this can be seen by the pr in the version name. That means it may contain bugs and is not meant for production. If you're not aware of that, then you should downgrade to 0.4.2, which is the last public release. Public releases are the last known working version, and usually aren't as problematic as a preview release is.
 

Abgematzt

New Member
This is version 0.4.2 that i use.
Did you mean, that is a known bug in the version 0.4.2 and was fixed at version 0.5.0 ? Where can i get the correct version? It isnt a problem to spend one time a small fund to support your work. But i didnt activate a monthly subscribe.
if you have PP i can spend a little bit.. i like your work ;)
 

Xaymar

Active Member
This is version 0.4.2 that i use.
Did you mean, that is a known bug in the version 0.4.2 and was fixed at version 0.5.0 ? Where can i get the correct version? It isnt a problem to spend one time a small fund to support your work. But i didnt activate a monthly subscribe.
if you have PP i can spend a little bit.. i like your work ;)
0.5.0 goes public in a few days, likely after 0.6.0 is released to patreons.
 

Xaymar

Active Member
Xaymar updated Stream Effects with a new update entry:

Stream Effects 0.5.0

It is finally time for Version 0.5.0 to be released to the general public after it has spent a month in Early Access on my Patreon! This version brings along a lot of needed fixes, performance improvements and new features. And most of this was done in the total work time of 3 months, in which the main task was fixing bugs, crashes and leaked sources.

After that, lots of time was spent optimizing Filters and Sources so they no longer cause top of...
Read the rest of this update entry...
 

Trenaldi

New Member
Signed Distance Field Effects require transparent pixels to be present in the original source, as it is an effect that works by finding the transparent edges instead of blurring. In the video it is working as expected, as the source has no transparent pixels.
If you ever happen to include inner/outer shadows/glows that I can use on sources without transparent pixels I'll be pretty happy.
 

Xaymar

Active Member
If you ever happen to include inner/outer shadows/glows that I can use on sources without transparent pixels I'll be pretty happy.
Well, they really wouldn't do anything anyway as you can't render outside the the red boundary without issues. To use the current included effect, just add a Crop/pad with -1 in all directions so there's a transparent row and column of pixels. Then apply the Signed Distance Effects, and then apply another Crop/Pad to make the shadow/glow fit the red boundary if you want to apply further effects after it.
 

Xaymar

Active Member
As promised, I've released Version 0.6.0 to Patreons within the week Version 0.5.0 hit the public. Version 0.6.0 brings a new Blur filter that supports more blur types, such as Dual Filtering, Rotational Blur and Zoom Blur. It also improves the experimental audio mirroring in Source Mirror, and adds Scene mirroring to it.

If you want to support the development of this and any possible future OBS Studio plugins I create, consider becoming a Patron. You will get 30 day early access to future releases of any kind, have a direct support and feature request chat channel on Discord, and general get to be an awesome person. Every dollar helps.

Changelog
Overall
Source Mirror Source
  • Added support for mirroring scenes as well as sources. This is a backwards compatible change and does not require the new libOBS v23.x API.
  • Fixed a freeze that happened with audio mirroring and opening the filters dialog for the Source Mirror source.
  • Fixed a freeze that happened with audio mirroring and opening the filters dialog for the mirrored source.
  • Fixed a bug that caused sources with no size or no video to still attempt to render.
  • Fixed audio stuttering and skipping with audio mirroring, which was caused by naively assuming that there is enough CPU time to do both capture and mirror in the same millisecond.
Blur Filter
  • Completely redesigned the UI to allow new options without having to hardcode them.
  • Added Dual Filtering blur which is an approximation of Gaussian blur that uses around 98% less GPU resources and thus is capable of larger blur sizes.
  • Added Rotational blur, which can be used to simulate rolling a camera in place.
  • Added Zoom blur, which can be used to simulate moving a camera forward or backward.
  • Added an empty entry to the masking sources list.
  • Increased the maximum blur size for most Blur types to 127 from 25.
Edit: Hotfix 0.6.1 is now available, fixing two bugs introduced in 0.6.0.
 
Last edited:

Xaymar

Active Member
Hey!

I was wondering if it would be hard to support barrel distortion of a video source.

Something like this:
https://stackoverflow.com/questions/6199636/formulas-for-barrel-pincushion-distortion
Where you could have separate controls on the x and y axes.

I've thought about trying this with your normal map distortion but its not quite the same thing!

I'd happily become a patron if this was something that could happen!
This is technically possible, but the next goal is to add a Dynamic Masking Filter. You can suggest this as a feature over on Github so I won't forget about it: https://github.com/xaymar/obs-stream-effects/issues
 
Top