Commit graph

1239 commits

Author SHA1 Message Date
Michael Fabian 'Xaymar' Dirks
a96151a874 encoder/aom-av1: Respect "Default" setting for Metric tune setting 2021-10-07 00:24:11 +02:00
Michael Fabian 'Xaymar' Dirks
41a0873deb encoder/aom-av1: Fix automatic selection of AV1 profile 2021-10-07 00:24:11 +02:00
Michael Fabian 'Xaymar' Dirks
1df8eb4a89 encoder/aom-av1: Bitrate Overshoot only goes to 100% 2021-10-07 00:24:11 +02:00
Michael Fabian 'Xaymar' Dirks
37abedceb8 project: Version 0.11.0a5
- Updated the AOM library to libAOM v3.1.2-882-03b6f69.
- Fixed the Denoising filter not working correctly with unexpected sizes.
- Fixed the Denoising filter not rendering at the correct size.
- Fixed the Denoising and Upscaling filter destroying the Alpha channel.
- Fixed the Denoising filter running twice on the same image, resulting in a far worse image.
- Fixed Upscaling not automatically deciding on a proper scale factor for you when the selected one is not supported.
2021-10-06 04:34:34 +02:00
Xaymar
67a0d3fd83
locale: New translations en-US.ini (Russian) (#647) 2021-10-06 04:28:44 +02:00
Michael Fabian 'Xaymar' Dirks
99644fe0b5 nvidia/vfx/superresolution: Reduce overall CPU usage by caching results 2021-10-06 04:26:39 +02:00
Michael Fabian 'Xaymar' Dirks
4cf443e352 nvidia/vfx/superresolution: Automatically select ideal scale factors
Prevents some scale factors from simply not rendering anything at all, resulting in weird scene layouts. While this may incur a higher performance penalty, it does fix the issue with enough accuracy to be deployed into production.
2021-10-06 04:26:39 +02:00
Michael Fabian 'Xaymar' Dirks
e109e61ab8 filter/upscaling: Restore alpha after processing
As none of the known Upscaling algorithms handle Alpha, we need to manually restore and interpolate it properly. While this technically reduces visual quality slightly, the chances of this being noticed are slim to none considering that Upscaling is already a questionable solution to quality. Linear was picked here as it produces the best overall result for scaling, keeping gradients mostly in one piece. Mostly.

Fixes #646
2021-10-06 03:08:55 +02:00
Michael Fabian 'Xaymar' Dirks
588c45fec2 filter/denoising: Restore alpha after processing
As the Alpha channel is completely ignored and possibly destroyed by denoising algorithms, we should restore the Alpha channel manually. Linear interpolation was chosen here as it will behave like Point if the size matches, and properly interpolate if the size doesn't match.

Fixes: #646
2021-10-06 03:08:55 +02:00
Michael Fabian 'Xaymar' Dirks
e7206b398f effects: Add standard effect file
There are a number of duplicate shader routines we should combine into a single shader to save disk space, and remove unexpected errors in one copy but not the other.
2021-10-06 03:08:55 +02:00
Michael Fabian 'Xaymar' Dirks
eb9cd1abc6 filter/upscaling: Update Source Identifier 2021-10-06 02:47:02 +02:00
Michael Fabian 'Xaymar' Dirks
f6d12035f8 filter/denoising: Update Source Identifier 2021-10-06 02:47:02 +02:00
Michael Fabian 'Xaymar' Dirks
5820ce2b36 filter/denoising: Don't denoise the same image twice 2021-10-06 02:46:32 +02:00
Michael Fabian 'Xaymar' Dirks
91e8946b2b filter/denoising: Use actual size instead of base size of target 2021-10-06 00:52:32 +02:00
Michael Fabian 'Xaymar' Dirks
af22ee0cec filter/denoising: Restrict size to reasonable numbers
Prevents invalid sizes from being used by the filter, which sometimes happens with Async Sources that aren't quite ready yet.

Fixes: #642
2021-10-06 00:52:32 +02:00
Michael Fabian 'Xaymar' Dirks
1acf73b24e third-party: Update libAOM to v3.1.2-882-03b6f69 2021-10-05 22:34:42 +02:00
Michael Fabian 'Xaymar' Dirks
a54b7da5db ci: Properly check if cache was restored 2021-10-05 22:21:44 +02:00
Michael Fabian 'Xaymar' Dirks
bccc65a692 ci: Pull Requests shouldn't invoke CI twice 2021-10-05 22:21:33 +02:00
Xaymar
45906a3198
locale: New Crowdin updates (#639)
* New translations en-US.ini (Italian)
* New translations en-US.ini (Turkish)
* New translations en-US.ini (Russian)
* New translations en-US.ini (German)
* New translations en-US.ini (Indonesian)
* New translations en-US.ini (Dutch)
* New translations en-US.ini (Russian)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (French)
* New translations en-US.ini (Russian)
* New translations en-US.ini (Turkish)
* New translations en-US.ini (Russian)
* New translations en-US.ini (French)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (German)
* New translations en-US.ini (Polish)
* New translations en-US.ini (Italian)
* New translations en-US.ini (Dutch)
* New translations en-US.ini (Italian)
* New translations en-US.ini (French)
* New translations en-US.ini (German)
2021-10-05 21:33:48 +02:00
Michael Fabian 'Xaymar' Dirks
6b6479a7f2 project: Version 0.11.0a4
* The "Super Resolution" filter is now called "Upscaling" and in the future will support additional providers, like FidelityFX "Super-Resolution" and NVIDIA "Upscaling".
* The entire plugin now has identical logging behavior, so it should be easy to identify exact parts of the plugin in log files.
* A crash caused by log functions on Linux/Mac has been fixed, which was caused by reusing variable length arguments. (#632)
* Radeghast submitted a new 'Swirl' example shader. (#618)
* Added an AV1 encoder based on AOM-AV1, although its stability and quality may not be great so far.
* Denoising of Video content is now possible with the new "Denoising" filter on NVIDIA RTX hardware.
* Fixed a few bugs affecting the "Upscaling" (previously "Super Resolution") filter.
* Fixed references to NVIDIA missing the ®.
2021-10-03 22:06:56 +02:00
Michael Fabian 'Xaymar' Dirks
529626138c filter/denoising: Fix incorrect define checks 2021-10-03 22:06:56 +02:00
Michael Fabian 'Xaymar' Dirks
2ff883f423 ci: (AOM) Replace files if they exist
This shouldn't happen, but it seems our 'if' case is not working right. Will have to investigate this in the future.
2021-10-03 22:06:56 +02:00
Michael Fabian 'Xaymar' Dirks
08cd4ec655 project: Update issue Template 2021-10-03 22:06:56 +02:00
Michael Fabian 'Xaymar' Dirks
75582faa86 locale: Adjust text to match reality 2021-10-03 22:06:56 +02:00
Xaymar
aa27a92916
locale: New Crowdin updates (#638)
* New translations en-US.ini (German)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (Italian)
* New translations en-US.ini (Russian)
* New translations en-US.ini (Spanish)
* New translations en-US.ini (German)
* New translations en-US.ini (Italian)
* New translations en-US.ini (German)
* New translations en-US.ini (Polish)
* New translations en-US.ini (Russian)
2021-09-28 15:38:49 +02:00
Michael Fabian 'Xaymar' Dirks
7f5df9f843 locale: Fix incorrect key for provider 2021-09-28 14:00:11 +02:00
Michael Fabian 'Xaymar' Dirks
4d222ef952 cmake: Fix incorrect target for interface include directories 2021-09-28 05:03:21 +02:00
Xaymar
b66910b048
locale: New Crowdin updates (#635)
* 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)
* New translations en-US.ini (Chinese Traditional, Hong Kong)
* 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 (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 (Polish)
* New translations en-US.ini (Portuguese)
* New translations en-US.ini (Portuguese, Brazilian)
* 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)
2021-09-28 04:57:32 +02:00
Michael Fabian 'Xaymar' Dirks
3cdcf18107 filter/denoising: Add Denoising filter 2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
75397d8f01 filter/upscaling: 'Video Super-Resolution' -> 'Upscaling'
The previous name was too strict on what could be put into the effect, and would result in additional clutter in the Filter menu when we eventually decide to support other Upscaling methods than Super-Resolution networks.
2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
71f372c754 filter/video-superresolution: Fix missing UI when selecting Providers 2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
b6f379de99 filter/video-superresolution: Fix incorrect symbol name 2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
c9b1c175f4 filter/video-superresolution: Catch all exceptions 2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
7f4d0d0343 nvidia/vfx/denoising: Add wrapper for Denoising effect 2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
db30786a75 nvidia/vfx/effect: Implement managed effect wrapper
Slightly simplifies interaction with effects.
2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
05363706ca nvidia/vfx/superresolution: Round to nearest instead of truncate
Slightly improves the accuracy of the scaled size calculations.
2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
756abc04e7 third-party: Update NVIDIA Maxine Video Effects SDK 2021-09-28 03:59:42 +02:00
Michael Fabian 'Xaymar' Dirks
9e992b27b8 nvidia/cuda: Add cuMemsetD# functions 2021-09-28 03:59:42 +02:00
Xaymar
615e334f98
locale: New Crowdin updates (#634) 2021-09-27 23:16:29 +02:00
Michael Fabian 'Xaymar' Dirks
d865058f3a encoders/aom-av1: AV1 encoder based on libaom 2021-09-27 23:15:24 +02:00
Michael Fabian 'Xaymar' Dirks
d890414a6a cmake: Add find package module for libAOM 2021-09-27 23:15:24 +02:00
Michael Fabian 'Xaymar' Dirks
61d7bb36a1 obs/encoder-factory: Don't require implementing all virtual functions
As not all encoders need all functions, classes inheriting from this should not need to implement all of them as no-ops. Instead the header should take care of this, which reduces duplicated empty code paths.
2021-09-27 23:15:24 +02:00
Radegast-FFXIV
1ad0f2a520
examples: Add Swirl shader (#618) 2021-09-20 11:27:02 +02:00
William Pettersson
cdf718217f
util/logging: Don't reuse vargs (#632)
As vargs may be modified by some functions, we should not reuse it and instead create a copy of it. This fixes a segfault on logging calls happening with GCC, and potentially may fix other compilers and platforms as well.
2021-09-20 11:17:51 +02:00
Michael Fabian 'Xaymar' Dirks
3902672095 project: Fix various warnings 2021-09-07 05:22:15 +02:00
Michael Fabian 'Xaymar' Dirks
5bc6b2473d project: Unify logging structure 2021-09-07 05:22:15 +02:00
Michael Fabian 'Xaymar' Dirks
20769762c7 project: Don't leak exceptions if possible 2021-09-07 05:22:15 +02:00
Michael Fabian 'Xaymar' Dirks
7532eae39f project: Apply Coding Guidelines 2021-09-07 03:14:29 +02:00
Xaymar
863909edba
locale: New Crowdin updates (#607) 2021-09-07 02:50:46 +02:00
Xaymar
0c10446ea4
locale: New Crowdin updates (#601) 2021-08-01 11:32:21 +02:00