Commit Graph

1662 Commits

Author SHA1 Message Date
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
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