Commit graph

1657 commits

Author SHA1 Message Date
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
Michael Fabian 'Xaymar' Dirks
0439fddabd cmake: Generate properly formatted versions from git 2023-05-14 06:35:36 +02:00
Michael Fabian 'Xaymar' Dirks
7237d8826f ci: Build libOBS with MSVC on Windows
obs-studio does not yet support ClangCL, resulting in a broken build. We don't want to check if obs-studio is broken, we only want to check if StreamFX is broken.
2023-05-14 04:47:30 +02:00
Michael Fabian 'Xaymar' Dirks
4b0e00bc54 ci: GitHub Actions does not correctly transform github.workspace here 2023-05-14 04:47:30 +02:00
Michael Fabian 'Xaymar' Dirks
59d3781269 ci: Don't use caches from a different compiler 2023-05-14 04:24:06 +02:00
Michael Fabian 'Xaymar' Dirks
b5a4adb8fb ci: Fix CI failure 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
b344ec4dd9 ci: StreamFX's CMake requires ..._DIR not CMAKE_PREFIX_PATH 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
5fcb592c65 ci: Let compiler figure out what linker to use
This is broken somehow. Can't be bothered to fix it - works without it anyway!
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
7c44157d59 patches: Add patch to disable treating warnings as errors 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
8242c6be0f ci: Apply patches to obs-studio 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
21bb80475b third-party: Update obs-studio to 29.1.1 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
f8b02b0879 patches: Add patch to disable invalid flags
The affected file checks for the host system, instead of the target system. This is incorrect on every platform, and invalid CMake behavior.
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
2b5d2fbe9e project: Add guideline for patches 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
b6ea9b3c5a ci: Ignore GCC-11 on Ubuntu 22, and fix some missing CMake flags 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
2478bb4308 ci: Add some messaging for better log debugging 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
2e1f00d04d ci: Reduce the number of compilers, and remove some purge statements 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
0765e41063 tools: Remove additional / in header 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
f315544808 ci: Shrink the purge a bit 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
03087257df ci: Purge unwanted compilers 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
4a37e8e09e ci: Enable LTO project-wide 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
bfc3560dd9 ci: Potentially fix ambiguous redirect and fix clang on Ubuntu 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
3284b490ca ci: Fix last commit 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
b6391f13f8 ci: Add more compilers to Ubuntu
May help us figure out unexpected incompatibilities in the future. While we still require C++14 or later, and may even upgrade to C++17 eventually, this should address some concerns about compatibility.

Plus it makes it easier to support things like Flatpak
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
a5f07e8228 ci: Prefer RelWithDebInfo over Release 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
25c1388050 ci: Don't use libobs-dev on Ubuntu
The provided libobs-dev does not match CMake standards (LibObs instead of libobs like on all other platforms). It also does not provide the obs-frontend-api, or any other required files.
2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks
05ded838e5 ci: Actually write obs-studio version to environment 2023-05-14 03:25:07 +02:00