Commit graph

1127 commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks
b4a229e26f util/logging: Add logging utility
Also contains the function signature and name macros.
2023-04-05 18:50:49 +02:00
Michael Fabian 'Xaymar' Dirks
cf8b2c818a project: Version 0.10 2023-03-28 13:11:22 +02:00
Michael Fabian 'Xaymar' Dirks
b06ec71fa3 examples: Improve 'crt-scanlines.effect' 2023-03-28 13:11:22 +02:00
Michael Fabian 'Xaymar' Dirks
8fa1ffc95a examples: Improve 'crt-curvature.effect'
The code of this effect was quite dated and no longer up to my standards of coding, and lacking pretty much all comments that explain what things do. This meant that it was not a great example by default, and couldn't be used by new Effect creators as a reference.

Also the following settings were adjusted:
- 'Strength' now ranges from 0 to 200 %.
- 'Border Color' defaults to Opaque Black.
- 'Feathering' now ranges from 0 to 100 %.
2023-03-28 13:11:22 +02:00
Michael Fabian 'Xaymar' Dirks
d2df0fa24f examples: Add base effect for common functionality
Many shader examples share quite a bit of code, and the OBS Studio parser and GPU driver shader compiler actually get rid of unused code quite well. So we can simply share the code between many examples, which drastically improves the quality of the code.
2023-03-28 13:11:22 +02:00
Xaymar
84cff8235f locale: New Crowdin updates (#531)
* New translations en-US.ini (Turkish)
* New translations en-US.ini (Chinese Simplified)
* New translations en-US.ini (Romanian)
* New translations en-US.ini (German)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (French)
2023-03-28 13:11:22 +02:00
Michael Fabian 'Xaymar' Dirks
ab22b0d69e ui/about: Update Supporter and Translator entries 2023-03-28 13:11:22 +02:00
Michael Fabian 'Xaymar' Dirks
d1c5cb4fce ui/about: Fix stack size problem 2023-03-28 13:11:22 +02:00
Michael Fabian 'Xaymar' Dirks
d1747ff403 ui/about: Remove outdated entry roles 2023-03-28 13:11:21 +02:00
Michael Fabian 'Xaymar' Dirks
f040588570 ui/about: Replace buttons with clickable Entries
This reduces the total amount of links Supporters can submit to just one instead of two. Additionally by removing the buttons and making the entry itself clickable, the UI can show more entries at once and allow users to easily make the connection between the entry and the link it opens when clicked.
2023-03-28 13:11:21 +02:00
Michael Fabian 'Xaymar' Dirks
7e1c2ca80d filters/color-grading: Use explicit matrix initializer for GLSL support
Fixes #510
2023-03-28 13:11:21 +02:00
Michael Fabian 'Xaymar' Dirks
3533a86b96 ffmpeg/tools: Adjust to match ffmpeg-mux color settings
The 'obs-ffmpeg-mux.c' file specifies different color parameters than StreamFX does. This causes re-muxing to go haywire, and editors that trust these tags suddenly spew out bad colors for BT.601 and sRGB.

Reverts #478
2023-03-28 13:11:21 +02:00
Michael Fabian 'Xaymar' Dirks
89cd2be6c8 project: Redirect support requests to Discord or OBS Studio
As users repeatedly fail to provide the basic minimum of Information, we instead now direct users towards the Discord support instead.
2023-03-28 13:11:21 +02:00
Michael Fabian 'Xaymar' Dirks
ba61329dd1 ui: Prevent Qt from automatically assigning Menu roles
Qt defaults to give every QAction a TextHeuristicRole, which means that certain key words will cause Qt to change how the QAction behaves. We do not want this, so we explicitly assign it to have NoRole instead.

Fixes #323
2023-03-28 13:11:21 +02:00
Michael Fabian 'Xaymar' Dirks
465158476a ui: Insert StreamFX menu before OBS "Help" menu
Instead of adding ourselves as the last entry which seems to confuse the MacOS Qt implementation, we instead insert ourselves before the Help menu. This should hopefully prevent the StreamFX menu from overriding the OBS About entry.

Fixes #323
2023-03-28 13:11:20 +02:00
Michael Fabian 'Xaymar' Dirks
f01d2e6db1 filters/sdf-effects: Improve user experience with visual property groups
Grouping properties by what they do improves the user experience as the user does not have to guess at what belongs to which part of the effect. Additionally toggleable groups automatically disable all child elements, so the user is not confused by them still being active.
2023-03-28 13:11:20 +02:00
Michael Fabian 'Xaymar' Dirks
a8c8d3beaa filters/displacement: Permanently deprecate the filter 2023-03-28 13:11:20 +02:00
Xaymar
cbb8b9bae3 locale: New Crowdin updates (#521)
* New translations en-US.ini (Turkish)
* New translations en-US.ini (Korean)
* New translations en-US.ini (Sinhala)
* New translations en-US.ini (Chinese Simplified)
* New translations en-US.ini (Russian)
* New translations en-US.ini (Portuguese)
* New translations en-US.ini (Polish)
* New translations en-US.ini (Norwegian)
* New translations en-US.ini (Dutch)
* New translations en-US.ini (Japanese)
* New translations en-US.ini (Romanian)
* New translations en-US.ini (Italian)
* New translations en-US.ini (Finnish)
* New translations en-US.ini (German)
* New translations en-US.ini (Czech)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (French)
* New translations en-US.ini (Thai)
* New translations en-US.ini (Portuguese, Brazilian)
* New translations en-US.ini (Serbo-Croatian)
2023-03-28 13:11:20 +02:00
Michael Fabian 'Xaymar' Dirks
e4f3dd263d project: Version 0.10.0b3 2023-03-28 13:11:20 +02:00
Michael Fabian 'Xaymar' Dirks
ab9a6ec56d ci: (Windows) Show full compile output for InnoSetup 2023-03-28 13:11:20 +02:00
Michael Fabian 'Xaymar' Dirks
5a65cf3525 plugin: Replace long descriptions with "Open Manual" button
While the long descriptions were useful, keeping the updated and translated is pretty much impossible. Technology moves fast and not everyone that translates the project knows a lot about technology.

Therefore the long descriptions have now been replaced with a button that opens the wiki page for the feature instead. This should drastically reduce the number of help cases, and improve the translation coverage at the same time.
2023-03-28 13:11:20 +02:00
Michael Fabian 'Xaymar' Dirks
48ba34538e plugin: Add function to open an URL 2023-03-28 13:11:19 +02:00
Michael Fabian 'Xaymar' Dirks
21d455b674 filters/color-grading: Add proper suffixes to UI properties 2023-03-28 13:11:19 +02:00
Michael Fabian 'Xaymar' Dirks
cd7f45eec4 source/shader: Fix missing buffered draw requirement (#516)
Fixes #516
2023-03-28 13:11:19 +02:00
Michael Fabian 'Xaymar' Dirks
b324ed2b28 filters/color-grading: Adjust range for Lift and Gain (#515)
Fixes #515
2023-03-28 13:11:19 +02:00
Michael Fabian 'Xaymar' Dirks
083ba935bc filters/color-grading: Fix incorrect Lift logic (#515)
Fixes #515
2023-03-28 13:11:19 +02:00
Michael Fabian 'Xaymar' Dirks
27c3420f31 filters/color-grading: Fix Gamma function and improve code readability
Fixes #510
2023-03-28 13:11:19 +02:00
Michael Fabian 'Xaymar' Dirks
fd3d514a20 filters/color-grading: Replace log10 command for GLSL (#510)
Fixes #510
2023-03-28 13:11:18 +02:00
Michael Fabian 'Xaymar' Dirks
2a48036e7d project: Version 0.10.0b2
* Fixed a bug preventing versions from being parsed correctly in CMake.
* Fixed a bug introduced between 0.9.3 and 0.10.0b1 which broke transparency support for Color Grading.
* Added support for direct rendering to some sources/filters/transitions.
* Added .pkg based Installer for MacOS, thanks to @cpyarger.
* Updated translations from Crowdin.
2023-03-28 13:11:18 +02:00
Xaymar
622ae17161 locale: New Crowdin updates (#500) 2023-03-28 13:11:17 +02:00
Michael Fabian 'Xaymar' Dirks
0a44333c11 transition/shader: Use direct rendering (#501) 2023-03-28 13:11:17 +02:00
Michael Fabian 'Xaymar' Dirks
a2f518224f source/shader: Use direct rendering (#501) 2023-03-28 13:11:17 +02:00
Michael Fabian 'Xaymar' Dirks
4a3d1d4fa5 filter/shader: Use direct rendering (#501) 2023-03-28 13:11:17 +02:00
Michael Fabian 'Xaymar' Dirks
e7dd44e3ec gfx/shader: Allow specifying effect for direct rendering (#501) 2023-03-28 13:11:17 +02:00
Michael Fabian 'Xaymar' Dirks
4e21830627 filter/dynamic-mask: Require buffered rendering 2023-03-28 13:11:17 +02:00
Michael Fabian 'Xaymar' Dirks
ed92e7390a filter/displacement: Require buffered rendering 2023-03-28 13:11:16 +02:00
Michael Fabian 'Xaymar' Dirks
29d60180cc filter/color-grade: Add direct rendering support (#501) 2023-03-28 13:11:16 +02:00
Michael Fabian 'Xaymar' Dirks
4c082ad3a9 filters/color-grade: Fix support for translucent Inputs
Additionally also document some of the code and enforce certain GPU states for rendering.
2023-03-28 13:11:16 +02:00
Xaymar
d7d34028a0 locale: New Crowdin updates (#482) 2023-03-28 13:11:16 +02:00
Michael Fabian 'Xaymar' Dirks
af660cfc1d cmake: (Windows) Fix incorrect reference to CMAKE_PACKAGE_PREFIX 2023-03-28 13:11:16 +02:00
Michael Fabian 'Xaymar' Dirks
4405c13901 ci: (MacOS) Build .pkg installer 2023-03-28 13:11:16 +02:00
Christopher P Yarger
483e3a5f2d cmake: (MacOS) Add .pkg installer generation
Enables users of the Mac Operating System to use an automated installer instead of the manual installation method which is prone to user errors. This is done via the use of "Packages", which generates a .pkg file according to the requirements we present it.
2023-03-28 13:11:16 +02:00
Michael Fabian 'Xaymar' Dirks
8189076cd2 cmake: Fix version detection code
When the CMake script was rewritten, not much attention was put into the versioning code, resulting in odd behavior which was never found or fixed. For example, the automatic splitting of the suffix from the number never worked, and the build number was being stored in the wrong variable.
2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
d24fb07dcc cmake: Update download logic 2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
ca6fb45c9d ci: Add caching for many steps 2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
e88cd34db1 ci: Also trigger validation on tags 2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
ee6afdcded ci: (MacOS) Automatically detect Homebrew prefix 2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
d8bb1cecc5 cmake: (MacOS) Fix linker path for libraries 2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
eef6d2d445 ci: (MacOS) Fix installation of Qt5
Homebrew now defaults to Qt6, but we still require Qt5 for the time being.
2023-03-28 13:11:15 +02:00
Michael Fabian 'Xaymar' Dirks
766cb605db ci: Fix formatting for main.yml 2023-03-28 13:11:14 +02:00