Michael Fabian 'Xaymar' Dirks
47a22ce462
gs-vertexbuffer: Initialize memory to 0
2023-03-28 12:40:40 +02:00
Michael Fabian 'Xaymar' Dirks
6cbfee4579
obs-tools: Add OBS data deleter
2020-04-22 23:15:32 +02:00
Michael Fabian 'Xaymar' Dirks
97e1846156
obs-tools: Add deleter for obs_weak_source_t
2020-04-17 11:44:37 +02:00
Michael Fabian 'Xaymar' Dirks
e4b4dc23e8
gs-helper: Define extra debug colors
2020-04-17 11:44:37 +02:00
Michael Fabian 'Xaymar' Dirks
908d1f0a20
project: Modernize code to proper C++
2020-04-09 00:17:25 +02:00
Michael Fabian 'Xaymar' Dirks
cd5acd42f4
obs-source-factory: Add settings migration code
...
Previously sources had to manually implement migration code, which resulted in unresolvable regression issues due to the lack of version and commit tagging. With the new migration code, all sources automatically have this version and commit tagging at all times, and as such can now have a temporary regression fixed without the user needing to change any values manually.
2020-04-05 07:28:10 +02:00
Michael Fabian 'Xaymar' Dirks
cc9d3486b2
project: Fix Linux support by fixing errors and warnings
...
With this, GCC 8 and above should now be able to compile the project both in obs-studio and as a standalone install. Some features are currently still not fully supported and require extra work, but the majority of things are supported and work out of the box. Exact feature parity can be looked up here on the wiki: https://github.com/Xaymar/obs-StreamFX/wiki/Platform-Feature-Parity
Related: #119 #98 #30
2020-04-02 20:37:45 +02:00
Michael Fabian 'Xaymar' Dirks
59fa1d36d7
common: Common header include for improved platform support
...
This header includes all common data between headers used in the plugin. This should improve cross-platform compiling support whenever possible, as all platform-dependent common includes and defines can be done here.
2020-04-02 17:02:01 +02:00
Michael Fabian 'Xaymar' Dirks
451d31546f
gs-effect-*: Replace strnlen_s with strnlen
2020-04-02 16:21:42 +02:00
Michael Fabian 'Xaymar' Dirks
2e250ad826
obs-source-factory: Fix support for transitions
...
Transitions always require audio and video rendering.
2020-03-28 18:37:20 +01:00
Michael Fabian 'Xaymar' Dirks
87e6767033
gs-mipmapper: Fix some warnings
2020-03-27 20:10:17 +01:00
Michael Fabian 'Xaymar' Dirks
4baa2360c5
obs-source: Disallow copy constructor
2020-02-14 07:52:28 +01:00
Michael Fabian 'Xaymar' Dirks
baf265fd5b
obs-signal-handler: Fix possible crash
2020-02-14 07:31:30 +01:00
Michael Fabian 'Xaymar' Dirks
326fa68d9f
obs-signal-handler: Helper classes for signals and audio
2020-02-14 07:30:46 +01:00
Michael Fabian 'Xaymar' Dirks
42c9375333
obs-tools: Fix obs::tools::child_source not checking return value
2020-02-14 07:29:31 +01:00
Michael Fabian 'Xaymar' Dirks
40369bf72d
obs-tools: Add child_source helper class
2020-02-13 10:34:26 +01:00
Michael Fabian 'Xaymar' Dirks
f8ee95d71c
obs-*: Cleanup
2020-02-13 05:09:14 +01:00
Michael Fabian 'Xaymar' Dirks
b306cebd6b
project: More warnings fixed
2020-01-14 01:39:13 +01:00
Michael Fabian 'Xaymar' Dirks
ebc50dcefe
utility: Merge util-math and util-memory
2020-01-14 01:11:08 +01:00
Michael Fabian 'Xaymar' Dirks
0a16ce07dc
project: Merged FFmpeg Encoders Step 2
2020-01-13 22:40:15 +01:00
Michael Fabian 'Xaymar' Dirks
17ee2d713c
gs-effect-parameter: Implement copy and move
2019-12-25 19:09:13 +01:00
Michael Fabian 'Xaymar' Dirks
1ff6c0cf41
obs-tools: Add work around for property memory corruption
...
The current implementation of obs_properties_remove_by_name corrupts the obs_properties_t object whenever it is called on the first or last property in the list. This leads to rapid unscheduled disassembly, and therefore must be fixed in order for this function to be used.
Fixed by upstream PR https://github.com/obsproject/obs-studio/pull/2257 .
2019-12-22 06:07:07 +01:00
Michael Fabian 'Xaymar' Dirks
2faa68f9be
gs-effect: Pass unmodified parameters as const reference
2019-12-21 18:20:36 +01:00
Michael Fabian 'Xaymar' Dirks
1d9a4ddbf5
gs-helper: Fix nonstandard usage of va_start
2019-12-21 18:07:08 +01:00
Michael Fabian 'Xaymar' Dirks
624bdda6a3
gs-texture: Reduce context lock time and improve code
2019-12-21 18:06:17 +01:00
Michael Fabian 'Xaymar' Dirks
aa59806322
gs-effect: Fix warning
2019-12-21 18:05:54 +01:00
Michael Fabian 'Xaymar' Dirks
cbada3e438
obs-source: Deprecate obs::source due to stability issues
...
This should be replaced with a class inheriting from std::shared_ptr.
2019-12-21 17:43:12 +01:00
Michael Fabian 'Xaymar' Dirks
7e5cbe18cf
project: Apply clang-format
2019-12-21 17:05:53 +01:00
Michael Fabian 'Xaymar' Dirks
1f0c595a0a
obs-source-factory: Add missing include
2019-12-21 17:05:49 +01:00
Michael Fabian 'Xaymar' Dirks
c0f131642b
gs-effect-parameter: Improve API and fix incorrect functions
2019-12-18 06:39:06 +01:00
Michael Fabian 'Xaymar' Dirks
cd82e2cac7
gs-effect-pass: Implement parameter getter and fix possible crash
2019-12-18 06:39:06 +01:00
Michael Fabian 'Xaymar' Dirks
570b70479f
gs-effect-technique: Fix possible crash
2019-12-18 06:39:06 +01:00
Michael Fabian 'Xaymar' Dirks
01f23e17fe
gs-effect: Also override finalizer for the stored ptr
2019-12-16 23:07:49 +01:00
Michael Fabian 'Xaymar' Dirks
e7b46063aa
gs-effect: Fix typo from refactor
2019-12-16 22:53:25 +01:00
Michael Fabian 'Xaymar' Dirks
b54e95527a
gs-effect*: Finish up refactoring onto std::shared_ptr
...
This is most likely not the last refactor, the entire obs/gs stuff is very very basic right now and likely needs a complete rewrite.
2019-12-15 12:55:19 +01:00
Michael Fabian 'Xaymar' Dirks
11a2329519
gs-effect: Refactor onto std::shared_ptr
2019-12-15 11:13:47 +01:00
Michael Fabian 'Xaymar' Dirks
1f25b56579
gs-effect-technique: Return nullptr instead of throwing exception
2019-12-15 10:37:57 +01:00
Michael Fabian 'Xaymar' Dirks
ef76e353d3
gs-effect-pass/technique: Change to protected inheritance
...
Prevents the use of get() and reset() where not actually needed and forces us to actually implement all of the methods needed to interface with the object, leading to cleaner and safer code.
2019-12-15 10:37:41 +01:00
Michael Fabian 'Xaymar' Dirks
50ac6893bf
gs-effect-parameter: Refactor effect_parameter onto std::shared_ptr
...
Prevents problems further down the line and supports multiple types of parents to ensure that lifetime is guaranteed.
2019-12-15 10:35:29 +01:00
Michael Fabian 'Xaymar' Dirks
738b08de36
gs-effect-pass/technique: Implement wrapper code based on std::shared_ptr
...
These two wrap the underlying gs_epass and gs_effect_technique objects, to allow direct and improved access to them without relying on the libobs API to provide this access for us. Additionally these make it safe for us to use them instead of relying on C-like code to deal with it.
2019-12-15 09:05:23 +01:00
Michael Fabian 'Xaymar' Dirks
7e98df0d1c
obs-source-factory: Add helper functionality to make things easier to use
2019-12-14 02:34:48 +01:00
Michael Fabian 'Xaymar' Dirks
6efdb1950b
obs-source-factory: Fix typo and missing return
2019-11-18 03:03:11 +01:00
Michael Fabian 'Xaymar' Dirks
db85883821
obs/obs-source-factory: Fix potential null-pointer-dereference
2019-11-17 14:07:54 +01:00
Michael Fabian 'Xaymar' Dirks
87f83738c3
gs-helper: Add common debug colors
2019-10-31 05:59:16 +01:00
Michael Fabian 'Xaymar' Dirks
10681d30c8
gs-helper: Remove unused constructor
2019-10-18 23:04:23 +02:00
Michael Fabian 'Xaymar' Dirks
90cdc30ef1
gs-helper: Add class for managed debug markers
2019-10-18 22:59:30 +02:00
Michael Fabian 'Xaymar' Dirks
d47ab0570f
obs-source-factory: Barebone Source Factory and Instance
...
This class and template should be used to reduce the code clutter from repeatedly doing the same thing. It requires OBS v24.0 or newer since the get_properties2 and get_defaults2 API were fully implemented with it.
2019-10-18 22:31:52 +02:00
Michael Fabian 'Xaymar' Dirks
96466100b4
obs-source: Ensure that exceptions are const
2019-10-13 07:07:31 +02:00
Michael Fabian 'Xaymar' Dirks
0ef94aad0f
gs-vertexbuffer: Fix and improve various problematic locations
2019-10-13 06:38:15 +02:00
Michael Fabian 'Xaymar' Dirks
e02225262c
obs-source: Add noexcept try-catch to C facing callbacks
2019-09-07 21:35:32 +02:00