Commit Graph

1237 Commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks 569fa56b1d templates/installer: Refactor installer code for easier changes 2023-03-28 13:11:06 +02:00
Michael Fabian 'Xaymar' Dirks e7ed40a69d third-party/msvc-redist-helper: Add submodule for msvc-redist-helper 2023-03-28 13:11:06 +02:00
Michael Fabian 'Xaymar' Dirks 79ef573f5b filter/dynamic-mask: Explicitly increase showing/active references
Fixes #384
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks 716da4f6cc obs/tools: Add active_source and visible_source helpers
These classes help us manage active and showing references to a source, which seem to be necessary for filters.
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks ad33066cd3 filter/blur: Fix unicode support
Related: #359
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks e2d342818a filter/color-grade: Fix unicode support
Related: #359
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks 576606c712 filter/displacement: Fix unicode support
Related: #359
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks 3da4526795 filter/dynamic-mask: Fix unicode support
Related: #359
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks 785ffa0b7d filter/sdf-effects: Fix unicode support
Related: #359
2023-03-28 13:11:05 +02:00
Michael Fabian 'Xaymar' Dirks 54127f6ced gfx/shader: Fix unicode support
Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks aacb1d41bc obs/gs/effect: Fix unicode support
Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks cc1b9c1559 obs/gs/mipmapper: Fix unicode support
Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks 0a71af9d6a util/library: Fix unicode support
Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks 55ad82aac0 gfx/blur: Fix unicode support
Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks 71a969c30f configuration: Fix unicode support
Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks 4de094511a plugin: Implement proper functions to get config and data files
Using the obs_module_file and obs_module_config_path macros works okay, but it comes with a slight overhead as well as additional requirements when passing it to C++ functions that expect certain rules to be fulfilled. By instead wrapping the actual functionality into our own functions and using those we can avoid most of the issues that come with the old approach.

Related: #359
2023-03-28 13:11:04 +02:00
Michael Fabian 'Xaymar' Dirks 7be1929985 ci: Fail fast on error 2023-03-28 13:11:03 +02:00
Michael Fabian 'Xaymar' Dirks 98a146c108 ci: Use newly added override options 2023-03-28 13:11:03 +02:00
Michael Fabian 'Xaymar' Dirks 2eb59a58f8 cmake: Add option to override download versions and hashes
Allows users to override the built-in download values with custom ones, in order to build with different versions of OBS or the depencencies used.
2023-03-28 13:11:03 +02:00
Michael Fabian 'Xaymar' Dirks f796c85527 util/bitmask: Move bitmask functionality its own file 2023-03-28 13:11:03 +02:00
Michael Fabian 'Xaymar' Dirks 7e7ed80a9a util/library: Use string_view instead of string
Slightly improves performance and reduces memory impact, as string data is not duplicated.
2023-03-28 13:11:03 +02:00
Michael Fabian 'Xaymar' Dirks 032a3c6deb obs/source-factory: Skip broken filter rendering by default
Fixes a black screen issue if a filter happens to run into an unexpected issue which it considers unrecoverable.
2023-03-28 13:11:03 +02:00
Xaymar 5185c720ea cmake: Restore default visibility
The MODULE_EXPORT and EXPORT macros in libOBS do not correctly mark a function or type as visible on GCC, which results in the newly added flag hiding everything from view, instead of just what should be hidden.
2023-03-28 13:11:03 +02:00
Michael Fabian 'Xaymar' Dirks d36e735bb1 util/curl: Add missing include for vector 2023-03-28 13:11:02 +02:00
Michael Fabian 'Xaymar' Dirks efc048adcd examples: Fix typo "_Random" -> "Random"
Fixes: #356
2023-03-28 13:11:02 +02:00
Michael Fabian 'Xaymar' Dirks 74c621cde5 ui/updater: Set modal flag after hiding the dialog
This fixes a bug with older Qt versions which would not remove the modal window from the parent in the setModal() call, resulting in an unusable parent window.

Fixes #368
2023-03-28 13:11:02 +02:00
Daniel Hodgson 02bdd85ed4 examples: Added adjustable luminance to hexagon size (#364) 2023-03-28 13:11:02 +02:00
Michael Fabian 'Xaymar' Dirks e866bc97d2 cmake: Update to libOBS 26.0.x 2023-03-28 13:11:02 +02:00
Michael Fabian 'Xaymar' Dirks e6cef83588 ui/updater: Always initialize members to zero 2023-03-28 13:11:02 +02:00
Michael Fabian 'Xaymar' Dirks 0ad6b84077 project: Improve Pull Request Template
Adds some additional information required for Pull Requests to be considered valid, in order to quickly identify any surface level issues.
2023-03-28 13:11:01 +02:00
Michael Fabian 'Xaymar' Dirks 85a88902de cmake: Check for "Darwin" instead of "Mac" to support MacOS 2023-03-28 13:11:01 +02:00
Xaymar 3d70814b93 cmake: Set correct flags when building with obs-studio
The commit 8163e3e917 introduced a complete refactor of the CMake script in order to improve future updates, but accidentally broke building with OBS Studio due to only testing the standalone model. By correctly adjusting the option name again, this should work again with this change.

Fixed: #351
2023-03-28 13:11:01 +02:00
Daniel Hodgson ab2b632fb4 examples: Fix incorrect angles for "hexagonize" effect
The value for "deg30" was incorrectly calculated as (pi / 15.0) instead of (tau / 12.0).
2023-03-28 13:11:01 +02:00
Xaymar 2e8bc6210e locale: New Crowdin updates (#342) 2023-03-28 13:11:01 +02:00
Daniel Molkentin 3d5e752139 encoders/handlers/debug: Always return something in to_string (#354) 2023-03-28 13:11:01 +02:00
Daniel Molkentin 2c8687f4b7 encoders/ffmpeg: Use correct parameter for log (#355) 2023-03-28 13:11:01 +02:00
Michael Fabian 'Xaymar' Dirks daa4a385d7 encoder/ffmpeg: Don't use hardware encoding for unsupported formats 2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks 6bc1a6b870 encoders/ffmpeg: Don't overwrite already correct settings 2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks 9938422d5c ffmpeg/tools: Set correct information when encoding
Improves the previous logic and makes it compatible with the new additions in 26.x, such as sRGB. This was previously broken as the focus was on existing features which could be tested without requiring a compiler to be installed.

Incorrect understanding of how sRGB works with RGB and YCC/YUV formats also caused sRGB to be treated as RGB when I444 was selected. This should also now be fixed, hopefully permanently.

Fixes #331
2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks e8d5edc9eb ci: Fix support for new CMake script 2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks 3097a4f552 cmake: Refactor to modernize and improve readability
Refactors the entire file to be more readable while also improving the possibility of future improvements. Components are now resolved in one go instead of being all over the place, and shared dependencies are now only resolved once instead of multiple times.

For future compatibility sake, all features now default to enabled and will instead show a warning if they can't be enabled, or if their dependencies can't be found. Pay attention to the build log if you encounter this, as it should hint you towards what is missing. Some features are also now optional, instead of being required.

Furthermore the "Reference" and "Package" mode for building have been removed as supporting them has been a problematic thing from the start. While their structure technically matches the one that is downloaded, effectively they can result in unpredictable issues.

A number of other issues have also been fixed, like Qt being invoked for non-Qt source files.
2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks 808da4894b cmake: Upgrade C/C++ compiler adjustments to modern CMake 2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks f3a57513ad cmake: Set proper CMake policies by version 2023-03-28 13:11:00 +02:00
Michael Fabian 'Xaymar' Dirks 67227f2c03 cmake: Improve readability 2023-03-28 13:10:59 +02:00
Michael Fabian 'Xaymar' Dirks 82413fd85c ui/updater: Apply workaround for OBS Studio checking for modals
In order to work around a bug in the OBS Studio UI code, we have to swap our modal status right before showing and right after hiding, so that the OBS Studio tray menu continuous working correctly. This is a bit of a weird solution, but it does work as expected.

Related: https://github.com/obsproject/obs-studio/issues/3518
2023-03-28 13:10:59 +02:00
Michael Fabian 'Xaymar' Dirks 01b7d09196 templates: Fix installation path and 64-bit installations 2023-03-28 13:10:59 +02:00
Michael Fabian Dirks e95a20f658 locale: New Crowdin updates (#335) 2023-03-28 13:10:59 +02:00
Michael Fabian 'Xaymar' Dirks f3c10c5044 project: Version 0.9.0 2023-03-28 12:52:28 +02:00
Michael Fabian 'Xaymar' Dirks 2353c0bb8b ci: Also run on tags 2023-03-28 12:52:28 +02:00
Michael Fabian 'Xaymar' Dirks 07c892b6a4 ui/about: Fix incorrect icon for YouTube URL
Fixes #329
2023-03-28 12:52:28 +02:00