Commit graph

991 commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks
f7cb14fd34 filter/dynamic-mask: Explicitly increase showing/active references
Fixes #384
2020-11-29 17:17:28 +01:00
Michael Fabian 'Xaymar' Dirks
74c478321c 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.
2020-11-29 17:17:28 +01:00
Michael Fabian 'Xaymar' Dirks
3f92276c9e filter/blur: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
f10f235d43 filter/color-grade: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
73dfb580cb filter/displacement: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
9fb75fc4f2 filter/dynamic-mask: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
268a601bac filter/sdf-effects: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
790f0b32cf gfx/shader: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
b9e0278428 obs/gs/effect: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
97301b9882 obs/gs/mipmapper: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
93c44fe98a util/library: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
6494e8e2d5 gfx/blur: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
007974da54 configuration: Fix unicode support
Related: #359
2020-11-28 23:48:52 +01:00
Michael Fabian 'Xaymar' Dirks
a666e01506 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
2020-11-28 23:42:29 +01:00
Michael Fabian 'Xaymar' Dirks
3a40a13cc5 ci: Fail fast on error 2020-11-28 15:35:30 +01:00
Michael Fabian 'Xaymar' Dirks
48eb740fbb ci: Use newly added override options 2020-11-28 15:35:30 +01:00
Michael Fabian 'Xaymar' Dirks
43c754171e 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.
2020-11-28 15:35:30 +01:00
Michael Fabian 'Xaymar' Dirks
a0ce296085 util/bitmask: Move bitmask functionality its own file 2020-11-08 03:39:40 +01:00
Michael Fabian 'Xaymar' Dirks
884138b04c util/library: Use string_view instead of string
Slightly improves performance and reduces memory impact, as string data is not duplicated.
2020-11-08 03:39:40 +01:00
Michael Fabian 'Xaymar' Dirks
3e15537f14 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.
2020-11-08 03:36:48 +01:00
Xaymar
c70840dd92 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.
2020-11-07 09:43:05 +01:00
Michael Fabian 'Xaymar' Dirks
9751b8fbb5 util/curl: Add missing include for vector 2020-11-02 04:14:50 +01:00
Michael Fabian 'Xaymar' Dirks
ad249a8e73 examples: Fix typo "_Random" -> "Random"
Fixes: #356
2020-11-02 01:49:49 +01:00
Michael Fabian 'Xaymar' Dirks
e42cf4f325 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
2020-11-02 00:54:48 +01:00
Daniel Hodgson
96ea36e07a
examples: Added adjustable luminance to hexagon size (#364) 2020-11-01 17:28:45 +01:00
Michael Fabian 'Xaymar' Dirks
43a8305630 cmake: Update to libOBS 26.0.x 2020-11-01 17:01:45 +01:00
Michael Fabian 'Xaymar' Dirks
f6120c69be ui/updater: Always initialize members to zero 2020-11-01 12:59:04 +01:00
Michael Fabian 'Xaymar' Dirks
52b83fe846 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.
2020-11-01 12:25:19 +01:00
Michael Fabian 'Xaymar' Dirks
f6f4531f86 cmake: Check for "Darwin" instead of "Mac" to support MacOS 2020-11-01 12:24:00 +01:00
Xaymar
92d3d4bfca 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
2020-11-01 12:24:00 +01:00
Daniel Hodgson
6841e883a9
examples: Fix incorrect angles for "hexagonize" effect
The value for "deg30" was incorrectly calculated as (pi / 15.0) instead of (tau / 12.0).
2020-10-31 11:28:18 +01:00
Xaymar
a769bc4548
locale: New Crowdin updates (#342) 2020-10-09 22:01:11 +02:00
Daniel Molkentin
36450f2560
encoders/handlers/debug: Always return something in to_string (#354) 2020-10-09 20:28:11 +02:00
Daniel Molkentin
bb3dcf73ac
encoders/ffmpeg: Use correct parameter for log (#355) 2020-10-09 20:26:46 +02:00
Michael Fabian 'Xaymar' Dirks
dc311f5ce6 encoder/ffmpeg: Don't use hardware encoding for unsupported formats 2020-10-08 11:53:53 +02:00
Michael Fabian 'Xaymar' Dirks
e754a1edd0 encoders/ffmpeg: Don't overwrite already correct settings 2020-10-08 11:53:53 +02:00
Michael Fabian 'Xaymar' Dirks
1485e7a724 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
2020-10-08 11:53:53 +02:00
Michael Fabian 'Xaymar' Dirks
0862c7af06 ci: Fix support for new CMake script 2020-09-30 03:59:29 +02:00
Michael Fabian 'Xaymar' Dirks
8163e3e917 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.
2020-09-30 03:59:29 +02:00
Michael Fabian 'Xaymar' Dirks
ec372f5668 cmake: Upgrade C/C++ compiler adjustments to modern CMake 2020-09-30 03:59:29 +02:00
Michael Fabian 'Xaymar' Dirks
9cfa12e174 cmake: Set proper CMake policies by version 2020-09-30 03:59:29 +02:00
Michael Fabian 'Xaymar' Dirks
ff58a9bc41 cmake: Improve readability 2020-09-30 03:59:29 +02:00
Michael Fabian 'Xaymar' Dirks
3dbf9c9dbc 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
2020-09-30 03:57:36 +02:00
Michael Fabian 'Xaymar' Dirks
4ed1f3d481 templates: Fix installation path and 64-bit installations 2020-09-29 06:13:57 +02:00
Michael Fabian Dirks
01ce07327b
locale: New Crowdin updates (#335) 2020-09-25 21:34:17 +02:00
Michael Fabian 'Xaymar' Dirks
23cb20a268 project: Version 0.9.0 2020-09-25 21:33:09 +02:00
Michael Fabian 'Xaymar' Dirks
21795f489d ci: Also run on tags 2020-09-25 21:25:52 +02:00
Michael Fabian 'Xaymar' Dirks
8c99b56997 ui/about: Fix incorrect icon for YouTube URL
Fixes #329
2020-09-25 21:07:26 +02:00
Michael Fabian 'Xaymar' Dirks
81a970473f updater: Add functionality to check for updates
Implements a manual and automatic update checker with support for both release and testing update channels, allowing users to stay as up to date as possible. It is fully compliant with privacy regulations around the world, as it stays completely silent and inactive until the user gives the Ok to connect to GitHub for the latest releases.
2020-09-24 02:01:40 +02:00
Michael Fabian 'Xaymar' Dirks
08b2847fec cmake: Add optional dependency nlohmann::json 2020-09-24 02:01:40 +02:00