Commit graph

158 commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks
20769762c7 project: Don't leak exceptions if possible 2021-09-07 05:22:15 +02:00
Michael Fabian 'Xaymar' Dirks
155c6e7acf filter/video-superresolution: Add Video Super-Resolution filter 2021-06-23 16:27:04 +02:00
Michael Fabian 'Xaymar' Dirks
cdb2f51ab6 filter/nv-face-tracking: Adjust to match coding guidelines 2021-06-16 13:34:47 +02:00
Michael Fabian 'Xaymar' Dirks
e8f333e42d filter/blur: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
da0e8b3377 filter/displacement: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
36847a1fd4 filter/dynamic-mask: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
3e2af7ee9a filter/sdf-effects: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
b0bcad906c filter/shader: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
90f0593eb1 filters/transform: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
f9c5907c10 gfx: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
bf91ed7ba7 obs/gs: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
a54f1a144b util: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
7065691e7b project: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
e0c10bd3b2 filters/color-grade: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
b365884181 filters/nv-face-tracking: Apply coding guidelines 2021-06-08 05:44:22 +02:00
Michael Fabian 'Xaymar' Dirks
cdca069b2a filters/nvidia-face-tracking: Update for new SDK and OBS 27.x 2021-05-01 19:14:57 +02:00
Michael Fabian 'Xaymar' Dirks
2501afff3b nvidia/cuda: Update to match CUDA 11.1 and later
Adds several new functions that may be required for operation
2021-04-27 03:12:59 +02:00
Michael Fabian 'Xaymar' Dirks
31ddb9901f filter/nvidia-face-tracking: Update to nvidia::cuda::obs 2021-04-27 03:12:59 +02:00
Michael Fabian 'Xaymar' Dirks
ffcb940e34 filter/nvidia-face-tracking: Update to new CUDA code 2021-04-27 03:12:59 +02:00
Michael Fabian 'Xaymar' Dirks
8de32fd6c4 filters/sdf-effects: Improve user experience with visual property groups
Grouping properties by what they do improves the user experience as the user does not have to guess at what belongs to which part of the effect. Additionally toggleable groups automatically disable all child elements, so the user is not confused by them still being active.
2021-04-18 15:47:54 +02:00
Michael Fabian 'Xaymar' Dirks
c7b4450d9d filters/displacement: Permanently deprecate the filter 2021-04-18 15:17:56 +02:00
Michael Fabian 'Xaymar' Dirks
5baf8524d5 plugin: Replace long descriptions with "Open Manual" button
While the long descriptions were useful, keeping the updated and translated is pretty much impossible. Technology moves fast and not everyone that translates the project knows a lot about technology.

Therefore the long descriptions have now been replaced with a button that opens the wiki page for the feature instead. This should drastically reduce the number of help cases, and improve the translation coverage at the same time.
2021-04-17 03:34:39 +02:00
Michael Fabian 'Xaymar' Dirks
b0842e8927 filters/color-grading: Add proper suffixes to UI properties 2021-04-17 03:19:21 +02:00
Michael Fabian 'Xaymar' Dirks
515f9c659e filters/color-grading: Adjust range for Lift and Gain (#515)
Fixes #515
2021-04-14 13:41:52 +02:00
Michael Fabian 'Xaymar' Dirks
069061274b filter/shader: Use direct rendering (#501) 2021-03-28 15:02:11 +02:00
Michael Fabian 'Xaymar' Dirks
78b91c9957 filter/dynamic-mask: Require buffered rendering 2021-03-28 15:02:11 +02:00
Michael Fabian 'Xaymar' Dirks
f9d4c48237 filter/displacement: Require buffered rendering 2021-03-28 15:02:11 +02:00
Michael Fabian 'Xaymar' Dirks
40bf73bc22 filter/color-grade: Add direct rendering support (#501) 2021-03-28 15:02:11 +02:00
Michael Fabian 'Xaymar' Dirks
dfec841054 filters/color-grade: Fix support for translucent Inputs
Additionally also document some of the code and enforce certain GPU states for rendering.
2021-03-28 10:43:35 +02:00
Michael Fabian 'Xaymar' Dirks
e436d22367 filters/color-grade: Redesign for use with LUTs
There is hardly any reason for us to recalculate everything all the time. LUTs can cache the work once, and then re-use it every time necessary, drastically reducing the impact of Color Grading by almost 60% (on some GPUs even more). Additionally this fixes the negative gamma issue, which plagued the filter for a while.

In the future, once PR 4199 (https://github.com/obsproject/obs-studio/pull/4199) has been merged, we can cut away one intermediate rendering step currently required to make the effect work. Hopefully this will be with the 27.x release of OBS Studio.
2021-02-06 16:22:22 +01:00
Michael Fabian 'Xaymar' Dirks
0c3a8a1d56 filter/shader: Initialize with given data
Ignoring the data parameter during initialization results in duplication and some third party plugins not working as expected, so it's better to not ignore it.

Fixes #315
2020-12-04 13:19:30 +01:00
Michael Fabian 'Xaymar' Dirks
f7cb14fd34 filter/dynamic-mask: Explicitly increase showing/active references
Fixes #384
2020-11-29 17:17:28 +01:00
Michael Fabian 'Xaymar' Dirks
3f92276c9e filter/blur: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
f10f235d43 filter/color-grade: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
73dfb580cb filter/displacement: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
9fb75fc4f2 filter/dynamic-mask: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
268a601bac filter/sdf-effects: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
a53518cdb9 project: Remove non-standard std:: prefix from types 2020-08-10 19:51:21 +02:00
Michael Fabian 'Xaymar' Dirks
08cedfcadc project: Apply formatting 2020-07-30 07:32:22 +02:00
Michael Fabian 'Xaymar' Dirks
d332007ae0 project: Code cleanup and reapply formatting
Changes applied:

* Moved utility files to /util/.
* Removed unused #includes.
* Removed unused ::ffmpeg::tools function.
* Removed unused variables.
* Fixed missing parentheses in the version macro.
* Fixed missing override on virtual function overrides and removed unnecessary virtual keyword from them.
* Disabled additional warning for ATL headers on MSVC only.
* Replaced direct printf parameters with their macro equivalent.
* Replaced C-style casts with C++-style casts.
* Applied clang-format again after an earlier change to the CMake file broke the integration for it.
2020-07-29 05:17:42 +02:00
Michael Fabian 'Xaymar' Dirks
fd22746c98 common: Rename LOG_ to DLOG_ to avoid macro confusion 2020-07-26 21:02:32 +02:00
Michael Fabian 'Xaymar' Dirks
717b38f3f7 gfx/shader: Add Per-Instance/Activation/Frame Random values 2020-07-06 01:27:23 +02:00
Michael Fabian 'Xaymar' Dirks
3de7a87de6 filters/shader: Fix occasional invisibility problem 2020-07-06 01:27:09 +02:00
Michael Fabian 'Xaymar' Dirks
cc6a2a1b1a filters/shader: Don't use scaled size for input capture 2020-07-06 01:06:54 +02:00
Michael Fabian 'Xaymar' Dirks
95f022feea project: Adjust object Ids and add proxies for compatibility 2020-06-21 19:28:10 +02:00
Michael Fabian 'Xaymar' Dirks
7eaaab8630 nvidia/cuda/cuda: Convert to global Singleton 2020-06-21 19:27:58 +02:00
Michael Fabian 'Xaymar' Dirks
379d96044d nvidia/cuda: Remove 'cu_' prefix from types 2020-06-21 19:27:57 +02:00
Michael Fabian 'Xaymar' Dirks
f111330f8e filters/nv-face-tracking: Improve tracking and remove high priority CUDA stream
The high priority CUDA stream causes libOBS to be at a lower priority than the tracking, which is not what we want. Instead we want tracking to be incomplete in those cases, rather than slowing down encoding and other things.

Geometry updates are also now done once per frame instead of one per tracking update, which should improve the smoothness without affecting performance too much. Additionally all tracking info is now in the 0..1 range, which drastically simplifies some math - especially with texture coordinates.

To deal with tracking and updates being asynchronous, a very simple approximation of movement velocity has been added. This is mostly wrong, but it can bridge the gap where tracking updates are slower, as the values are all filtered anyway.
2020-05-13 02:30:15 +02:00
Michael Fabian 'Xaymar' Dirks
920f35fcdf project: Optimize to use single fullscreen tri instead 2020-05-02 21:43:14 +02:00
Michael Fabian 'Xaymar' Dirks
d72f6a3991 project: Improve performance profiling support
Adds a new CMake option "ENABLE_PROFILING" which enables all CPU and GPU performance profiling available in StreamFX for tracking what's actually causing things to be slow.
2020-05-01 11:37:24 +02:00