Smart Gamma

Smart Gamma v0.3.0

mirkonz

New Member
mirkonz submitted a new resource:

Smart Gamma - Automatic luminance-aware shader filter

Smart Gamma is a single-pass GPU shader filter for OBS Studio. It samples scene luminance, applies gamma/brightness/contrast/saturation boosts when captures drop below a configurable threshold, and fades back as soon as things brighten up. The state machine drives everything through one `effect_strength` scalar, so the filter can stay idle without extra overhead.

View attachment 116807

Key capabilities
  • Automatic brightness guard: Observes...

Read more about this resource...
 

sneaky4oe

Member
Oh man, you have no idea how much I wanted exactly THAT. Tired of toggling scene with increased brightness!
Struggle to get it working on windows 10 tho.
Added downloaded github windows x64 unarchived folder to `C:\Program Files\obs-studio\data\obs-plugins` and to `C:\Program Files\obs-studio\obs-plugins\64bit` and to `%appdata%\Roaming\obs-studio\plugins` but doesn't work. Any ideas? Should it be invoked with shader filter?
 
Last edited:

mirkonz

New Member
Oh man, you have no idea how much I wanted exactly THAT. Tired of toggling scene with increased brightness!
Struggle to get it working on windows 10 tho.
Added downloaded github windows x64 unarchived folder to `C:\Program Files\obs-studio\data\obs-plugins` and to `C:\Program Files\obs-studio\obs-plugins\64bit` and to `%appdata%\Roaming\obs-studio\plugins` but doesn't work. Any ideas? Should it be invoked with shader filter?
Hey @sneaky4oe,

Sorry I didn't check the Windows version, I only have a mac myself (I probably should have mentioned it).
Thanks for trying (testing) the plugin for me though :)

I've just published a new version with an installer. Let me know if that works.

By the way, the plugin is standalone, you can't invoke it via the "user-defined shader" plugin.
 

sneaky4oe

Member
Hey I've also been playing a lot of arc raiders lately with this plugin. It seems like in main menu which is pretty bright I can't have original brightness - it only changes between 0.01 and 0.00 values for brightness threshold. I did see it changing dynamically during gameplay with dark/bright scenes, but looks like topmost slider doesn't work exactly as it should? Can you please doublecheck logics? @mirkonz
 

mirkonz

New Member
Hey I've also been playing a lot of arc raiders lately with this plugin. It seems like in main menu which is pretty bright I can't have original brightness - it only changes between 0.01 and 0.00 values for brightness threshold. I did see it changing dynamically during gameplay with dark/bright scenes, but looks like topmost slider doesn't work exactly as it should? Can you please doublecheck logics? @mirkonz
Thanks for reporting this. I will have a look on the weekend.
 

sneaky4oe

Member
This indication does help to understand what's going on. Great job and thanks for this plugin, again.
However somehow it detects luminescence weirdly off in this scene.

Untitled.jpg

Untitled1.jpg

Untitled2.jpg

1765622649415.png

I use projector on main PC to send screen to capture card. If I don't use projector on main PC, then it detects just fine.
1765622807855.png
Somehow in 4 different images luminescence is static. Capture card as a source, effect applied to a scene that has capture card in. With full green it's especially odd @mirkonz
 
Last edited:

sneaky4oe

Member
What I assume is happening - your plugin detects luminocity for whole original source on streaming PC, which has black letterboxing, and ignores cropped source I feed to it. @mirkonz
But I just recreated scenario and with projector on it was detecting luminocity changes when I moved browser around main screen... maybe plugin gets stuck occasionally... Or it reacts only to top/left portion of the screen: https://photos.app.goo.gl/ix3dtvyW354HZi8u8
Running it on main PC instead of streaming PC makes no different to calculations in this scene, while removing letterboxing aspect.
 
Last edited:

mirkonz

New Member
What I assume is happening - your plugin detects luminocity for whole original source on streaming PC, which has black letterboxing, and ignores cropped source I feed to it. @mirkonz
But I just recreated scenario and with projector on it was detecting luminocity changes when I moved browser around main screen... maybe plugin gets stuck occasionally... Or it reacts only to top/left portion of the screen: https://photos.app.goo.gl/ix3dtvyW354HZi8u8
Running it on main PC instead of streaming PC makes no different to calculations in this scene, while removing letterboxing aspect.
@sneaky4oe , you were right, the brightness calculation was off. Thanks for the screenshots, they really helped clarify the issue. I’ve just pushed a new version.
 
Last edited:

sneaky4oe

Member
That looks way better, thanks :-) The last thing I have now is that when I try to move sliders in windows 10 machine - config window scrolls up (while main menu of arc raiders is up). I'd assume due to changes in text showing current gamma level. Not crucial to plugin's actual work, but slightly annoying.
 
Last edited:

mirkonz

New Member
That looks way better, thanks :-) The last thing I have now is that when I try to move sliders in windows 10 machine - config window scrolls up (while main menu of arc raiders is up). I'd assume due to changes in text showing current gamma level. Not crucial to plugin's actual work, but slightly annoying.
Great! Sorry, cant do anything about that. Sounds like a OBS issue, I assume other plugins with sliders would do the same.
 

sneaky4oe

Member
I'd assume it's an obs issue, and I'm not sure other plugins do the same as they don't normally have text that changes on it's own. Maybe you can display current level inside a slider or remove it altogether now when logics is fixed. Or maybe hide it behind a toggle so it's only shown if user selected a specific option. That should both allow seeing actual value and have it removed if not used.
Regardless, at this point I believe plugin should be usable and I hope to stream with it soon.
 
Top