Commit Graph

1032 Commits

Author SHA1 Message Date
XoXFaby 8ee9625b16 417 2024-03-24 07:09:54 +01: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 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 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 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 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 fa8d66b951 code: Disable useless alignment styling and update standard 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks 0476185a65 code: Fix support for libAVCodec 59.x and beyond 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks 81ed7241ff cmake, code: Remove Displacement Filter completely 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks 5b2e28a723 code: Disable profiling on MacOS
This may address a nullptr crash on MacOS with several features.
2023-04-05 19:21:13 +02:00
Michael Fabian 'Xaymar' Dirks 9735e1bcec ui/obs-browser-widget: Pull in browser-panel.hpp to fix MacOS
MacOS complains that QCefWidget is an undefined type, while all other compilers are fine.
2023-04-05 19:08:31 +02:00
Michael Fabian 'Xaymar' Dirks 0fa12f1029 ui/obs-browser-widget: Switch header order to fix Qt AutoMoc bug
Qt's CMake integration does not pass the C++ standard to AutoMoc, resulting in weird parsing issues (see https://bugreports.qt.io/browse/QTBUG-73263).
2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks db23069eb6 ui/obs-browser-widget: Add missing includes for Unix compilers 2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks ce19d25d71 ui/obs-browser-widget: Fix bad include path for standalone builds 2023-04-05 19:08:30 +02:00
Michael Fabian 'Xaymar' Dirks 5a58aa8a6b ui/obs-browser-widget: Fix strange layout issue in Qt6
When a QCefWidget is alone and all by itself, no layout updates are performed on the "window". This causes a problem where it just stays in place, instead of moving with the rest of the elements. The fix to this appears to be to just add a different Qt widget into the layout.

Looks stupid, is stupid, but works anyway. Qt is weird.
2023-04-05 19:08:30 +02:00