Michael Fabian 'Xaymar' Dirks
5be2941299
filter-sdf-effects: Move factory to bottom of the file
2019-12-03 20:38:34 +01:00
Michael Fabian 'Xaymar' Dirks
59878b62d0
filter-dynamic-mask: Fix nonstandard use of va_start
2019-12-03 20:38:14 +01:00
Michael Fabian 'Xaymar' Dirks
d9f43ec2e8
filter-blur: Refactor onto obs::source_factory
2019-12-03 20:37:57 +01:00
Michael Fabian 'Xaymar' Dirks
4e1dcb533c
filter-dynamic-mask: Rebase onto obs::source_factory
2019-12-03 20:11:27 +01:00
Michael Fabian 'Xaymar' Dirks
efb6b0b9be
filter-transform: Further refactoring
2019-12-03 18:28:42 +01:00
Michael Fabian 'Xaymar' Dirks
48e17ad562
filter-sdf-effects: Refactor onto obs::source_factory
...
Also replaces the global effect objects with per-source ones
2019-12-03 17:47:39 +01:00
Michael Fabian 'Xaymar' Dirks
df8ebd94ea
filter-displacement: Refactor onto obs::source_factory
...
This drastically improves stability and prevents all exceptions from leaking into libobs C code, which prevents crashes and unexpected freezes from exception handlers further down the stack.
Additionally minor work was done to further improve the quality and user experience for the filter.
2019-11-18 03:03:11 +01:00
Michael Fabian 'Xaymar' Dirks
9b0ea98243
filter-transform: Add GPU debug markers
2019-10-18 22:42:07 +02:00
Michael Fabian 'Xaymar' Dirks
141a5efd00
filter-transform: Refactor onto obs::source_factory
2019-10-18 22:32:54 +02:00
Michael Fabian 'Xaymar' Dirks
03c2a68846
gfx-effect-source: Catch exceptions as const
2019-10-13 07:28:59 +02:00
Michael Fabian 'Xaymar' Dirks
e832dbd628
filter-sdf-effects: Fix and improve various problematic locations
2019-10-13 07:28:29 +02:00
Michael Fabian 'Xaymar' Dirks
4fe76a85ae
filter-blur: Fix some warnings
2019-10-13 07:28:12 +02:00
Michael Fabian 'Xaymar' Dirks
bbcbd0fa1e
filter-color-grade: Fix and improve various problematic locations
2019-10-13 07:27:59 +02:00
Michael Fabian 'Xaymar' Dirks
e07d7c01fc
filter-displacement: Fix and improve various problematic locations
2019-10-13 07:27:42 +02:00
Michael Fabian 'Xaymar' Dirks
ef5e6ac896
filter-dynamic-mask: Catch const exceptions
2019-10-13 07:08:56 +02:00
Michael Fabian 'Xaymar' Dirks
06d9a3d2f5
filter-transform: Catch and log exceptions
2019-10-13 07:08:02 +02:00
Michael Fabian 'Xaymar' Dirks
b5d3131203
filter-dynamic-mask: Fix some crashy locations
2019-10-13 07:02:04 +02:00
Michael Fabian 'Xaymar' Dirks
f1a376d44b
cmake: Add commit to version.hpp template
...
Switches out the `const uint16_t` for actual defines, which are easier to deal with and work in C out of the box.
2019-10-13 05:54:20 +02:00
Michael Fabian 'Xaymar' Dirks
d6f1979dee
project: Fix missing returns
2019-09-07 21:28:54 +02:00
Michael Fabian 'Xaymar' Dirks
5a4d38d249
project: Fix a massive list of dangerous warnings
...
This is a massive improvement to stability and safety when using the plugin, as all exceptions should now no longer be leaked into C controlled code, which can't actually handle exceptions at all.
Warnings fixed:
* Potentially throwing exception during library load.
* Possibly throwing function passed to C.
* Statement does nothing.
* Variable is initialized but not referenced.
* Variable overloads variable in parent scope.
2019-09-05 18:42:28 +02:00
Michael Fabian 'Xaymar' Dirks
f65dfcbbf0
filter-blur: Don't throw exceptions into C code
...
It is extremely problematic to throw C++ exceptions into C code, especially because C code usually does not handle C++ exceptions at all. Therefore we have to prevent any exception from leaving the function and define it as noexcept.
2019-09-04 20:43:40 +02:00
Michael Fabian 'Xaymar' Dirks
82faab4380
project: Re-apply formatting
2019-09-04 03:03:41 +02:00
Michael Fabian 'Xaymar' Dirks
ce7e4c97d4
project: Don't use non-standard strcmpi
2019-09-04 03:02:19 +02:00
Michael Fabian 'Xaymar' Dirks
03c704de1a
project: Correct usage of exceptions and include stdexcept
2019-09-04 02:59:04 +02:00
Michael Fabian 'Xaymar' Dirks
4765c57828
filter-sdf-effects: Don't define structs in nameless unions
2019-09-04 02:49:04 +02:00
Michael Fabian 'Xaymar' Dirks
f27320c6c9
project: Remove use of P_INITIALIZER
...
Does not support cross-platform very well and breaks on Apple for no apparent reason.
Add resolution scale to shader filter.
2019-09-04 02:47:27 +02:00
Michael Fabian 'Xaymar' Dirks
9ace96285d
filter-dynamic-mask: Use snprintf instead of sprintf_s
2019-09-04 02:39:59 +02:00
Michael Fabian 'Xaymar' Dirks
2e98c2e754
color-grade: Fix and improve advanced options
...
These new options allow further control over the Tint tool in Color grading.
2019-09-04 02:18:40 +02:00
Michael Fabian 'Xaymar' Dirks
781307fbe6
color-grade: Add further Tint options
2019-09-04 01:41:15 +02:00
Michael Fabian 'Xaymar' Dirks
deeb6719c4
project: Apply formatting
2019-08-24 12:59:32 +02:00
Michael Fabian 'Xaymar' Dirks
250dc97603
gfx-effect-source: enumerate child sources correctly
2019-08-07 20:40:04 +02:00
Michael Fabian 'Xaymar' Dirks
a04d102568
gfx-effect-source: Support for textures and some crash resistance
2019-08-07 20:22:12 +02:00
Michael Fabian 'Xaymar' Dirks
d7e66b17f1
filter-shader: Don't ignore all properties
2019-08-07 19:22:10 +02:00
Michael Fabian 'Xaymar' Dirks
7fdd9498a0
filter-shader: Fix blending
2019-08-07 19:20:32 +02:00
Michael Fabian 'Xaymar' Dirks
181df6e3d9
filter-shader: Reapply parameters if there was a change
2019-08-07 18:43:19 +02:00
Michael Fabian 'Xaymar' Dirks
9ad93c0ee9
filter-shader: Rename from Custom shader
2019-08-07 18:05:49 +02:00
Michael Fabian 'Xaymar' Dirks
8ec8a22928
filter-custom-shader: Add new callbacks
2019-08-07 17:37:52 +02:00
Michael Fabian 'Xaymar' Dirks
ff4a556f3f
filter-custom-shader: Update to use new gfx::effect_source::effect_source
2019-08-07 17:15:46 +02:00
Michael Fabian 'Xaymar' Dirks
e59bc2fdd2
filter-custom-shader: Rewrite from scratch
2019-08-07 12:43:23 +02:00
Michael Fabian 'Xaymar' Dirks
087cd79a7a
filter-color-grade: Always return something in get_width/get_height
2019-08-07 12:41:34 +02:00
Michael Fabian 'Xaymar' Dirks
f5b4c1f7a1
filter-color-grade: Fix crash if color-grade.effect is missing
2019-08-04 23:20:35 +02:00
Michael Fabian 'Xaymar' Dirks
71b223dcb5
gs-effect: Add ::create for shared_ptr and remove default constructor
2019-08-04 23:19:38 +02:00
Michael Fabian 'Xaymar' Dirks
9db7cd8da2
filter-displacement: Fix crash on nullptr file path
2019-08-04 23:14:43 +02:00
Michael Fabian 'Xaymar' Dirks
0c447f4055
gs-effect: Use std::shared_ptr and track effect lifetime
...
This fixes the case where the effect vanishes, but we still hold an invalid pointer to a parameter of that effect. With the new code, the effect will not vanish as long as an effect pointer exists.
However, all effects must be created either through std::shared_ptr or std::make_shared. If they were not made through one of those means, the code will crash on the ->shared_from_this() call.
2019-08-04 23:12:30 +02:00
Michael Fabian 'Xaymar' Dirks
0e350415b3
project: Apply new coding guidelines
2019-08-04 16:20:26 +02:00
Michael Fabian 'Xaymar' Dirks
533de01061
filter-color-grade: Always return true in tool_modified
2019-08-04 12:34:54 +02:00
Michael Fabian 'Xaymar' Dirks
93ba39545f
filter-color-grade: Implement Tool selection for OBS Studio 24.x
2019-08-03 12:29:47 +02:00
Michael Fabian 'Xaymar' Dirks
721f2bdf8f
filter-color-grade: Fully feature Color Grading filter
...
Allows controlling Lift, Gamma, Gain, Offset, Tint and various Correction factors directly from within OBS without having to create a new LUT.
2019-08-02 23:49:18 +02:00
Michael Fabian 'Xaymar' Dirks
c716e75ba3
project: Fix various catch-by-value locations
2019-07-27 19:57:50 +02:00
Michael Fabian 'Xaymar' Dirks
e887a53463
filter-sdf-effects: Fix a crash due to failed rendering
...
For whatever reason, the initial render target render fails when an async source is being used.
2019-07-27 19:57:49 +02:00