Michael Fabian 'Xaymar' Dirks
9021274297
cmake: Fix up missing linked objects in component system
...
We should always link the whole object, even if nothing is needed by the module itself.
2023-09-03 15:32:46 +02:00
Michael Fabian 'Xaymar' Dirks
25ba51df12
code: Throw an error on nullptr for util::library::load
2023-09-03 15:32:46 +02:00
Michael Fabian 'Xaymar' Dirks
50c85608c3
cmake: Initial work towards component-ification
...
The old fake component system is starting to be very annoying to work with, as it doesn't properly split things apart. The new system should aid with this significantly, and make errors easier to spot.
2023-09-03 15:32:46 +02:00
Michael Fabian 'Xaymar' Dirks
e82823d49c
cmake: Explicitly disable treating warnings as errors
...
As libOBS and OBS Studio unfortunately enforce treating warnings as errors, it is necessary to do the opposite. This may remove the need of having a patch for this exist at all, but I'll leave it be for now and just add this single line fix.
2023-07-31 15:28:39 +02:00
Michael Fabian 'Xaymar' Dirks
8b97c2b23d
templates: Fix the remaining uncommitted changes
2023-05-20 20:52:40 +02:00
Michael Fabian 'Xaymar' Dirks
9df2f01963
templates: Pascal uses <> instead of !=
2023-05-20 20:34:25 +02:00
Michael Fabian 'Xaymar' Dirks
ffb7a6c5d7
code: Add GoPro CineForm to FFmpeg Encoders
2023-05-20 19:54:46 +02:00
Michael Fabian 'Xaymar' Dirks
f66fabc5d4
templates: Move to 'usercf' instead of 'userpf'
...
Local (per-user) add-ons to software should reside in "C:\Users\Username\AppData\Local\Programs\Common\", similar to System (all-users) add-ons which reside in "C:\Program Files\Common Files\".
Fixes #1049
2023-05-20 19:54:15 +02:00
Michael Fabian 'Xaymar' Dirks
38d87f6fcf
code: Don't crash if there is no encoder instance
2023-05-20 19:54:05 +02:00
Michael Fabian 'Xaymar' Dirks
3e13126f89
code: Remove audio encoder registration from FFmpeg Encoders
2023-05-20 19:25:46 +02:00
Michael Fabian 'Xaymar' Dirks
9d0233a740
code: Create mutexes to prevent Windows (un)installer from continuing
...
Might fix the problem where people uninstall StreamFX while they still have OBS Studio open with StreamFX loaded. InnoSetup appears to ignore this in /VERYSILENT, so this is an additional guard against that.
2023-05-20 19:24:06 +02:00
Michael Fabian 'Xaymar' Dirks
07182d2f89
templates: Exit-early if the user aborts the removal of an older version
2023-05-20 19:24:06 +02:00
Michael Fabian 'Xaymar' Dirks
5bdcefd618
code: Fix support for multiple FFmpeg version
...
This should make it compile just fine with older FFmpeg versions again, such as on Ubuntu 20.04.
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
0402c8ef60
code: Adjust copyright headers
...
Doesn't appear to follow renames, so i guess this is the new copyright!
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
1c76169821
code: Migrate encoder::ffmpeg::nvenc to new loader
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
51282b7b85
code: Migrate encoder::ffmpeg::amf to new loader
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
d8235bf504
code: Migrate encoder::ffmpeg::dnxhd to new loader
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
0fb670eba4
code: Migrate encoder::ffmpeg::prores_aw to new loader
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
376a3d6233
code: Overriding color format doesn't work without a pointer or reference
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
fc8ebc7bf3
code: Rename encoder::ffmpeg::prores_aw
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
78310f9c63
code: Migrate encoder::ffmpeg::debug to new loader
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
85c8cdf8bd
code: Wrong return type for get_avcodeccontext
...
The context should be modifiable, we don't really care about it anyway. If it's broken, then it's broken and the encoder errors out.
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
c4461e70b9
code: Migrate encoder::ffmpeg to modern handler loader
...
A different version of the dynamic loader allows us to simply register handlers at load time, instead of requiring custom code. Could also make it so that it loads them when needed, but since they're mostly static code, this won't matter much.
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
a1968b970b
code: Migrate encoder::ffmpeg handlers into proper directory
...
Shouldn't have an effect on functionality, only affects location.
2023-05-16 15:19:11 +02:00
Michael Fabian 'Xaymar' Dirks
21f8a66c7f
cmake: Mark encoder::ffmpeg::nvenc as Stable
2023-05-16 06:04:59 +02:00
Michael Fabian 'Xaymar' Dirks
a802b0007f
code: Fix encoder::ffmpeg causing recursive mutex lock on Singleton
...
Not sure why I did it any other way before - there's no benefit to the previous design, only downsides.
2023-05-14 20:22:40 +02:00
Michael Fabian 'Xaymar' Dirks
8817248dfd
code: Fix incorrect behavior for encoder::ffmpeg
...
As we previously relied on an additional function call, we should now merge this call into the constructor.
2023-05-14 16:54:45 +02:00
Michael Fabian 'Xaymar' Dirks
a8704e6028
cmake: Set some additional feature defaults
2023-05-14 16:54:45 +02:00
Michael Fabian 'Xaymar' Dirks
7d1dc4792a
code: Reorder and fix static initializers
...
These most likely require dependencies to be migrated to the new system.
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
d51847152c
code, cmake: Remove legacy code
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
0227cfd7b5
code: Migrate filter::autoframing to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
debf976121
code: Migrate filter::denoising to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
a4a18ebc3f
code: Migrate filter::upscaling to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
0556db97df
code: Migrate filter::virtual_greenscreen to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
e630ddc8a7
code: Migrate source::mirror to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
5ca01dc589
code: Migrate filter::sdf_effects to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
17d25f1ef0
code: Migrate filter::blur to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
1059e5c027
code: Migrate filter::dynamic_mask to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
4d913c34f5
code: Migrate filter::transform to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
8bec18600f
code: Migrate filter::shader to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
cfa2806e89
code: Migrate source::shader to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
765e663180
code: Migrate filter::color_grade to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
1363b14288
code: Migrate transition::shader to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
b4e6bb57e4
code: Migrate ui::handler to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
acf4dde783
code: Migrate encoder::ffmpeg to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
66698ef938
code: Migrate obs::source_tracker to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
2f362efa38
code: Migrate configuration to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
5ed2010015
code: Migrate util::threadpool to new dynamic loader
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
49f763aa44
code: Add a proper dynamic loader for components
...
This loader model should have wider compatibility, as it relies on defined C++ behavior instead of undefined preprocessor behavior. We may even be able to implement a simple dependency system that automatically sorts components into the correct order.
2023-05-14 09:14:29 +02:00
Michael Fabian 'Xaymar' Dirks
65c45c4461
code: Fix version comparison logic
...
This is a lot more complex that I expected it to be.
2023-05-14 06:35:36 +02:00