Commit Graph

303 Commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks b373ba17d3 Fix up copyright headers once again 2023-10-04 07:32:33 +02:00
Michael Fabian 'Xaymar' Dirks 4cf2a399f4 Update Copyright headers
These now include all history, which has fixed some headers that used to be wrong.
2023-09-30 09:25:30 +02:00
brighten cfcf975794 fix: add decimal place to remove ambiguity
error: Error compiling shader:
0(142) : error C1101: ambiguous overloaded function reference "log(int)"
    (0) : lowp float log(lowp float)
    (0) : mediump float log(mediump float)
    (0) : float log(float)

error: device_pixelshader_create (GL) failed
error: Pass (0) <> missing pixel shader!
error: [StreamFX] <filter::color_grade> Error loading '/usr/local/share/obs/obs-plugins/StreamFX/effects/color-grade.effect': Unknown error during effect compile.
error: [StreamFX] Unexpected exception in function '_create': Unknown error during effect compile..
error: Failed to create source 'Color Grading'!
2023-09-30 04:46:14 +02: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 81ed7241ff cmake, code: Remove Displacement Filter completely 2023-05-14 03:25:07 +02:00
Michael Fabian 'Xaymar' Dirks 5a3954ae0e project: Fix License, License headers and Copyright information
Fixes several files incorrectly stated a different license from the actual project, as well as the copyright headers included in all files. This change has no effect on the licensing terms, it should clear up a bit of confusion by contributors. Plus the files get a bit smaller, and we have less duplicated information across the entire project.

Overall the project is GPLv2 if not built with Qt, and GPLv3 if it is built with Qt. There are no parts licensed under a different license, all have been adapted from other compatible licenses into GPLv2 or GPLv3.
2023-04-05 18:59:08 +02:00
Xaymar ec182c2daf locale: New translations en-US.ini (Chinese Simplified) (#959) 2023-04-05 18:58:57 +02:00
Michael Fabian 'Xaymar' Dirks 2577622dbe filter/dynamic-mask: Replace rendering code and optimize storage
The rendering code here was one of the older code bases, which was riddled with bugs and leaks. The new code doesn't look pretty, but it works for the time being until a better solution is found or made. It should be able to handle HDR inputs now, but it may not be completely correct yet. This also fixes the double-free bug.

As an additional improvement, I've moved the allocation of the effect to a shared class which should reduce the memory usage slightly when multiple effects are in play. And now selecting nothing selects the filter target itself without infinitely adding references to the filter. Good enough in my eyes.

Fixes #819
2023-04-05 18:58:54 +02:00
Xaymar 596841e6f8 locale: New Crowdin updates (#932)
* New translations en-US.ini (Danish)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Japanese)
2023-04-05 18:58:53 +02:00
Xaymar a7d15c7e60 locale: New Crowdin updates (#928)
* New translations en-US.ini (Russian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Danish)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Portuguese, Brazilian)
2023-04-05 18:58:49 +02:00
Xaymar 588316e3f1 locale: New Crowdin updates (#915)
* New translations en-US.ini (Danish)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Simplified)
2023-04-05 18:58:47 +02:00
Michael Fabian 'Xaymar' Dirks b55e4b283b encoder/ffmpeg: Add split framerate with integer fractions
It seems to be possible to encode with a different framerate than what libOBS is configured for. While technically any framerate appears to be possible, it is currently limited to integer fractions only in order to make the implementation much easier. Integer fractions only require skipping N frames and multiplying the denominator by N, where N is the configured integer. For sanity reasons, the limit of N is currently 10.

This allows power users to split their streaming and recording framerates with relative ease, and opt for things such as:
- 30 FPS (1/4) streaming with 120 FPS (1/1) recording.
- 30 FPS (1/10) streaming with 300 FPS (1/1) recording.
- 30 FPS (1/10) streaming with 100 FPS (1/3) recording.
- and so on.
While some of these combinations are just stupid, they are now available to power users.
2023-04-05 18:58:45 +02:00
Xaymar 630600fd96 locale: New Crowdin updates (#907)
* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Swedish)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Indonesian)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Estonian)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Greek)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (French)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Bulgarian)

* New translations en-US.ini (Czech)

* New translations en-US.ini (Danish)

* New translations en-US.ini (German)

* New translations en-US.ini (Finnish)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Dutch)
2023-04-05 18:58:41 +02:00
Xaymar e59660a18f locale: New Crowdin updates (#897)
* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Japanese)
2023-04-05 18:58:41 +02:00
Xaymar 5d76a3865a locale: New Crowdin updates (#890)
* New translations en-US.ini (Russian)

* New translations en-US.ini (Czech)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Danish)

* New translations en-US.ini (Danish)

* New translations en-US.ini (Danish)

* New translations en-US.ini (Danish)

* New translations en-US.ini (Danish)

* New translations en-US.ini (French)
2023-04-05 18:58:36 +02:00
Xaymar 584ee995be locale: New Crowdin updates (#867)
* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Czech)
2023-04-05 18:58:35 +02:00
Michael Fabian 'Xaymar' Dirks b5195c580c filter/displacement: Add missing deprecation notice 2023-04-05 18:58:35 +02:00
Michael Fabian 'Xaymar' Dirks c150a1b0d7 encoders/aom-av1: Deprecate encoder 2023-04-05 18:58:35 +02:00
Michael Fabian 'Xaymar' Dirks 3883c4759c encoders/handlers/amf: Deprecate encoder 2023-04-05 18:58:34 +02:00
Xaymar 5b8a0bbcb5 locale: New Crowdin updates (#832)
* New translations en-US.ini (French)

* New translations en-US.ini (Sinhala)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (Thai)

* New translations en-US.ini (Thai)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Romanian)
2023-04-05 18:58:28 +02:00
Xaymar 553dc3db70 locale: New Crowdin updates (#817)
* New translations en-US.ini (Arabic)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Thai)

* New translations en-US.ini (Ukrainian)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Traditional)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (English, United Kingdom)

* New translations en-US.ini (Sinhala)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Finnish)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (French)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Czech)

* New translations en-US.ini (German)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Swedish)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Thai)
2023-04-05 18:58:27 +02:00
Michael Fabian 'Xaymar' Dirks e9283aec37 project: Add support for multi stage release cycles
To ensure better stability of future releases, we need to adopt multiple stages in the release cycle. As we already label Alpha, Beta, Candidate and Stable differently, simply adopting this classification system already does everything for us. This also allows us to maintain compatibility with the existing system, while offering something new entirely.
2023-04-05 18:58:27 +02:00
Xaymar 56f2ae4290 locale: New Crowdin updates (#786)
* New translations en-US.ini (Arabic)
* New translations en-US.ini (Bosnian)
* New translations en-US.ini (Bulgarian)
* New translations en-US.ini (Chinese Simplified)
* New translations en-US.ini (Chinese Traditional, Hong Kong)
* New translations en-US.ini (Chinese Traditional)
* New translations en-US.ini (Croatian)
* New translations en-US.ini (Czech)
* New translations en-US.ini (Danish)
* New translations en-US.ini (Dutch)
* New translations en-US.ini (English, Australia)
* New translations en-US.ini (English, Canada)
* New translations en-US.ini (English, United Kingdom)
* New translations en-US.ini (Estonian)
* New translations en-US.ini (Faroese)
* New translations en-US.ini (Finnish)
* New translations en-US.ini (French)
* New translations en-US.ini (German)
* New translations en-US.ini (Greek)
* New translations en-US.ini (Hebrew)
* New translations en-US.ini (Hungarian)
* New translations en-US.ini (Icelandic)
* New translations en-US.ini (Indonesian)
* New translations en-US.ini (Irish)
* New translations en-US.ini (Italian)
* New translations en-US.ini (Japanese)
* New translations en-US.ini (Korean)
* New translations en-US.ini (Mongolian)
* New translations en-US.ini (Norwegian)
* New translations en-US.ini (Persian)
* New translations en-US.ini (Polish)
* New translations en-US.ini (Portuguese, Brazilian)
* New translations en-US.ini (Portuguese)
* New translations en-US.ini (Romanian)
* New translations en-US.ini (Russian)
* New translations en-US.ini (Serbo-Croatian)
* New translations en-US.ini (Sinhala)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (Swedish)
* New translations en-US.ini (Thai)
* New translations en-US.ini (Turkish)
* New translations en-US.ini (Ukrainian)
* New translations en-US.ini (Vietnamese)
2023-04-05 18:58:20 +02:00
carsten.braun 0540a18f27 encoders/ffmpeg/dnxhr: Add Avid DNxHR Encoder based on FFmpeg 2023-04-05 18:58:18 +02:00
Xaymar a6b11f68d3 locale: New Crowdin updates (#778)
* New translations en-US.ini (Finnish)

* New translations en-US.ini (Finnish)

* New translations en-US.ini (German)

* New translations en-US.ini (Chinese Simplified)
2023-04-05 18:58:18 +02:00
Xaymar 0da1e77b22 locale: New Crowdin updates (#772)
* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Thai)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Traditional)

* New translations en-US.ini (Russian)

* New translations en-US.ini (English, United Kingdom)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (French)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Czech)

* New translations en-US.ini (German)

* New translations en-US.ini (Finnish)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Russian)
2023-04-05 18:58:17 +02:00
Michael Fabian 'Xaymar' Dirks 36aec3be54 encoders/ffmpeg/nvenc: Ensure compatibility with more than just FFmpeg 4.2
When FFmpeg Encoders was originally written, FFmpeg 4.2 was still new and OBS Studio did not seem to want to update to anything newer for a while. This led to code being fine-tuned for FFmpeg 4.2, which stops working the moment OBS Studio upgrades FFmpeg. This removes the dependency on FFmpeg 4.2 hopefully, and allows using newer FFmpeg versions - or perhaps even older versions.

Additionally the nonsensical behavior of the Target Quality slider was fixed. It is now from 0 to 51, instead of from 0 to 100, and as such matches FFmpeg exactly.
2023-04-05 18:58:17 +02:00
Xaymar 1e086365ca locale: New Crowdin updates (#748)
* New translations en-US.ini (Japanese)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Polish)
2023-04-05 18:58:16 +02:00
Michael Fabian 'Xaymar' Dirks 1f11f699a2 examples: Fix #698 2023-04-05 18:51:56 +02:00
GitHub Actions 2b0f4bc9bd project: Update Contributors and Supporters 2023-04-05 18:51:55 +02:00
Xaymar 7dd9f7bfef locale: New Crowdin updates (#736)
* New translations en-US.ini (Turkish)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Traditional)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (English, United Kingdom)

* New translations en-US.ini (Sinhala)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (German)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (French)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Czech)

* New translations en-US.ini (Finnish)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Dutch)
2023-04-05 18:51:55 +02:00
Michael Fabian 'Xaymar' Dirks 241e752b5c locale: Remove unused string 2023-04-05 18:51:54 +02:00
GitHub Actions b5e6c581d1 project: Update Contributors and Supporters 2023-04-05 18:51:51 +02:00
GitHub Actions efda77554a project: Update Contributors and Supporters 2023-04-05 18:51:51 +02:00
Michael Fabian 'Xaymar' Dirks e3302fa163 ci, tools: Automatically generate contributor attribution files
Also includes a tool to convert Patreon Membership .csv files into a support patch set.
2023-04-05 18:51:50 +02:00
Xaymar 7c10ffe1a4 locale: New Crowdin updates (#728)
* New translations en-US.ini (Spanish)

* New translations en-US.ini (Spanish)
2023-04-05 18:51:49 +02:00
Michael Fabian 'Xaymar' Dirks 11f66dc306 examples: Add Sub-Pixel Morphological Anti-Aliasing
This requires a bit more complex setup compared to what you'd otherwise see, but it does work.

Adapted from: https://github.com/iryoku/smaa
2023-04-05 18:51:47 +02:00
Michael Fabian 'Xaymar' Dirks 5673138ff8 examples: FXAA requires Linear, not Point sampling 2023-04-05 18:51:46 +02:00
Michael Fabian 'Xaymar' Dirks 06e2dea1fa examples: Fix FXAA not working in OpenGL 2023-04-05 18:51:46 +02:00
Michael Fabian 'Xaymar' Dirks 686eebd969 examples: Fix float4->float2 cast 2023-04-05 18:51:45 +02:00
Michael Fabian 'Xaymar' Dirks cd00ccb94f examples: Add FXAA shader 2023-04-05 18:51:44 +02:00
Michael Fabian 'Xaymar' Dirks 1d4bc9377f examples: Add RGB<->YUV color conversion shader 2023-04-05 18:51:44 +02:00
Xaymar b366cf055c locale: New Crowdin updates (#711)
* New translations en-US.ini (German)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (German)

* New translations en-US.ini (Thai)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Swedish)

* New translations en-US.ini (English, United Kingdom)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (French)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Czech)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Polish)
2023-04-05 18:51:44 +02:00
Michael Fabian 'Xaymar' Dirks 1b573103cc examples: New examples for Shader Texture parameters 2023-04-05 18:51:43 +02:00
coolsoft.rf 4601df76d9 gfx/shader/param/texture: Add support for Texture parameters
Implements File, Source and Enumeration type for Texture shader inputs, completing the initial Shader implementation.

Related: #5

Co-authored-by: Michael Fabian 'Xaymar' Dirks <info@xaymar.com>
2023-04-05 18:51:43 +02:00
Xaymar e730b5b9bd locale: New Crowdin updates (#695)
* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Traditional)

* New translations en-US.ini (Chinese Traditional)

* New translations en-US.ini (Ukrainian)

* New translations en-US.ini (Ukrainian)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Ukrainian)
2023-04-05 18:51:38 +02:00
Michael Fabian 'Xaymar' Dirks adc38738f7 effects: 'texture2D' -> 'texture2d'
Fixes #696
2023-04-05 18:51:38 +02:00
Xaymar d46244ba89 locale: New Crowdin updates (#685)
* New translations en-US.ini (Russian)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Turkish)

* New translations en-US.ini (Chinese Simplified)

* New translations en-US.ini (Chinese Traditional)

* New translations en-US.ini (Portuguese, Brazilian)

* New translations en-US.ini (Thai)

* New translations en-US.ini (Russian)

* New translations en-US.ini (English, United Kingdom)

* New translations en-US.ini (Swedish)

* New translations en-US.ini (Portuguese)

* New translations en-US.ini (Romanian)

* New translations en-US.ini (Finnish)

* New translations en-US.ini (French)

* New translations en-US.ini (Spanish)

* New translations en-US.ini (Arabic)

* New translations en-US.ini (Czech)

* New translations en-US.ini (German)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Hungarian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (Japanese)

* New translations en-US.ini (Korean)

* New translations en-US.ini (Dutch)

* New translations en-US.ini (Norwegian)

* New translations en-US.ini (Polish)

* New translations en-US.ini (Russian)

* New translations en-US.ini (Italian)

* New translations en-US.ini (French)

* New translations en-US.ini (French)

* New translations en-US.ini (German)

* New translations en-US.ini (German)

* New translations en-US.ini (Portuguese, Brazilian)
2023-04-05 18:51:37 +02:00
Michael Fabian 'Xaymar' Dirks ad3ac69cd7 filter/auto-framing: Frame your face, automatically! 2023-04-05 18:51:36 +02:00
Michael Fabian 'Xaymar' Dirks c3440d2069 project: Remove undocumented "NVIDIA Face Tracking" feature
Originally intended to be an experiment with no future, it turned out to be very popular with streamers that move a lot. In the end it was popular enough that NVIDIA added their own variant to their Broadcast software, which works decently enough. Unfortunately my wrapper code around the library was written very poorly, so it didn't take long for it to break out of nowhere.
2023-04-05 18:51:35 +02:00