f93d5c2202 
								
							 
						 
						
							
							
								
								encoder/ffmpeg: Remove legacy API usage ( #783 )  
							
							... 
							
							
							
							The build breaks if compiling against a newer version of ffmpeg which does not define the FF_API_NEXT macro and has fully removed the av_codec_next() API. 
							
						 
						
							2023-04-05 18:58:18 +02:00  
				
					
						
							
							
								 
						
							
								03b16786e7 
								
							 
						 
						
							
							
								
								encoders/ffmpeg/nvenc: Improve compatibility with FFmpeg  
							
							... 
							
							
							
							Replaces some very specific code with generic support for FFmpeg, which should last us much longer than the old way. Also improves the migration of settings, which wasn't quite working with the previous way. 
							
						 
						
							2023-04-05 18:58:17 +02:00  
				
					
						
							
							
								 
						
							
								378f2b3f0e 
								
							 
						 
						
							
							
								
								ffmpeg/tools: Improve helper functions for AVOption lists  
							
							
							
						 
						
							2023-04-05 18:58:17 +02:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								7f6047f43f 
								
							 
						 
						
							
							
								
								ffmpeg/tools: Helpers for easily populating OBS property lists  
							
							
							
						 
						
							2023-04-05 18:58:17 +02:00  
				
					
						
							
							
								 
						
							
								a32c2b1104 
								
							 
						 
						
							
							
								
								ui/about: Remove additional spacers  
							
							... 
							
							
							
							These just break the flow, with no visual improvement. 
							
						 
						
							2023-04-05 18:51:55 +02:00  
				
					
						
							
							
								 
						
							
								b5cb3440f2 
								
							 
						 
						
							
							
								
								filters/autoframing: Always set projection matrix  
							
							... 
							
							
							
							Fixes  #739  
						
							2023-04-05 18:51:55 +02:00  
				
					
						
							
							
								 
						
							
								decca6e906 
								
							 
						 
						
							
							
								
								ui/about: Use auto-generated credits for "About StreamFX"  
							
							... 
							
							
							
							As contributors and translators always increase in number and never decrease, it was getting difficult to thank everyone properly with every update. So instead of manually writing each entry we should take advantage of the power of automation and use APIs to gather this information properly. As long as the user is not actively hiding their profile, they will be thanked properly.
This also includes a potential fix for the problem with multi-lingual text in the About StreamFX window. 
							
						 
						
							2023-04-05 18:51:54 +02:00  
				
					
						
							
							
								 
						
							
								d15e8d58da 
								
							 
						 
						
							
							
								
								encoders/ffmpeg/nvenc: Fix new Reference Frames setting  
							
							
							
						 
						
							2023-04-05 18:51:54 +02:00  
				
					
						
							
							
								 
						
							
								2505b193c8 
								
							 
						 
						
							
							
								
								encoders/ffmpeg/nvenc: Allow OBS to detect or override bitrate  
							
							... 
							
							
							
							We won't allow OBS to override everything, just the bare minimum necessary for Replay Buffer, Dynamic Bitrate and generic Streaming. 
							
						 
						
							2023-04-05 18:51:54 +02:00  
				
					
						
							
							
								 
						
							
								567620a6ad 
								
							 
						 
						
							
							
								
								encoders/ffmpeg/nvenc: Support reconfiguration during encoding  
							
							
							
						 
						
							2023-04-05 18:51:53 +02:00  
				
					
						
							
							
								 
						
							
								19689d1a11 
								
							 
						 
						
							
							
								
								encoders/ffmpeg: Add support for re-configuration of encoders  
							
							
							
						 
						
							2023-04-05 18:51:53 +02:00  
				
					
						
							
							
								 
						
							
								977716d679 
								
							 
						 
						
							
							
								
								encoders/ffmpeg/nvenc: Always set rc_max_rate if needed  
							
							
							
						 
						
							2023-04-05 18:51:53 +02:00  
				
					
						
							
							
								 
						
							
								6cf663ffff 
								
							 
						 
						
							
							
								
								encoders/aom-av1: Set proper packet priority and drop priority  
							
							
							
						 
						
							2023-04-05 18:51:53 +02:00  
				
					
						
							
							
								 
						
							
								ac466a65f8 
								
							 
						 
						
							
							
								
								encoders/ffmpeg: Set proper packet priority and drop priority  
							
							... 
							
							
							
							With increasing complexity in video encoders, we end up with complex priority and drop priority structures. While the fields are currently ignored by the default libOBSs output plugins, in the future this might no longer be the case. In any case, the increase in complexity requires us to adjust to it. 
							
						 
						
							2023-04-05 18:51:53 +02:00  
				
					
						
							
							
								 
						
							
								b151a44790 
								
							 
						 
						
							
							
								
								encoders/ffmpeg: Support proper settings migration  
							
							
							
						 
						
							2023-04-05 18:51:53 +02:00  
				
					
						
							
							
								 
						
							
								132c58632e 
								
							 
						 
						
							
							
								
								obs/encoder-factory: Support proper settings migration  
							
							
							
						 
						
							2023-04-05 18:51:52 +02:00  
				
					
						
							
							
								 
						
							
								bc5de8061f 
								
							 
						 
						
							
							
								
								encoders/codecs/h264: Basic support for parsing NALs  
							
							
							
						 
						
							2023-04-05 18:51:51 +02:00  
				
					
						
							
							
								 
						
							
								afa47646f5 
								
							 
						 
						
							
							
								
								encoders/ffmpeg/nvenc: Don't migrate already correct settings  
							
							
							
						 
						
							2023-04-05 18:51:51 +02:00  
				
					
						
							
							
								 
						
							
								cce33eef80 
								
							 
						 
						
							
							
								
								gfx/shader/texture: Fix incorrect placement of modified_type  
							
							... 
							
							
							
							The previous placement would result in the properties not yet existing. 
							
						 
						
							2023-04-05 18:51:49 +02:00  
				
					
						
							
							
								 
						
							
								ba05258547 
								
							 
						 
						
							
							
								
								gfx/shader/texture: Improve load/acquire behavior  
							
							... 
							
							
							
							Prevents massive stalls from happening unexpectedly due to repeatedly loading the same thing over and over. 
							
						 
						
							2023-04-05 18:51:49 +02:00  
				
					
						
							
							
								 
						
							
								7994d03166 
								
							 
						 
						
							
							
								
								gfx/shader/texture: Add default file annotation  
							
							
							
						 
						
							2023-04-05 18:51:49 +02:00  
				
					
						
							
							
								 
						
							
								c3b1dc2ec2 
								
							 
						 
						
							
							
								
								gfx/shader: Call defaults before update before properties  
							
							... 
							
							
							
							Fixes an unusual order of initialization bug resulting in poor user experience 
							
						 
						
							2023-04-05 18:51:48 +02:00  
				
					
						
							
							
								 
						
							
								86cb224783 
								
							 
						 
						
							
							
								
								gfx/shader: Clear render target before rendering  
							
							... 
							
							
							
							Accidentally left as a comment, this causes things like SMAA to freak out. 
							
						 
						
							2023-04-05 18:51:48 +02:00  
				
					
						
							
							
								 
						
							
								89f1affe32 
								
							 
						 
						
							
							
								
								gfx/shader: Shaders don't render in sRGB mode  
							
							
							
						 
						
							2023-04-05 18:51:47 +02:00  
				
					
						
							
							
								 
						
							
								ab84537a6e 
								
							 
						 
						
							
							
								
								gfx/shader/param-texture: Fix detection of enumerations and paths  
							
							
							
						 
						
							2023-04-05 18:51:46 +02:00  
				
					
						
							
							
								 
						
							
								4b86d67517 
								
							 
						 
						
							
							
								
								obs/gs/effect: Only add defines to the top level shader  
							
							... 
							
							
							
							Fixes certain warnings that are caused by duplicate '#define' lines. 
							
						 
						
							2023-04-05 18:51:46 +02:00  
				
					
						
							
							
								 
						
							
								2962be9d52 
								
							 
						 
						
							
							
								
								obs/gs/effect: gs_get_device_type() requires graphics context  
							
							
							
						 
						
							2023-04-05 18:51:45 +02:00  
				
					
						
							
							
								 
						
							
								9859b44b1c 
								
							 
						 
						
							
							
								
								obs/gs/mipmapper: Enable support for sRGB mip-mapping  
							
							
							
						 
						
							2023-04-05 18:51:45 +02:00  
				
					
						
							
							
								 
						
							
								9f035deaaa 
								
							 
						 
						
							
							
								
								obs/gs/mipmapper: Don't cache the "source" parameter  
							
							... 
							
							
							
							Fixes  #721  
						
							2023-04-05 18:51:45 +02:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								1816e29862 
								
							 
						 
						
							
							
								
								gfx/shader: Optional sRGB support for inputs  
							
							
							
						 
						
							2023-04-05 18:51:43 +02:00  
				
					
						
							
							
								 
						
							
								93a20c7dd4 
								
							 
						 
						
							
							
								
								gfx/shader: Add profiling code and fix problems with properties  
							
							
							
						 
						
							2023-04-05 18:51:43 +02:00  
				
					
						
							
							
								 
						
							
								e1b7e6eaf2 
								
							 
						 
						
							
							
								
								gfx/shader: Get-er for currently loaded shader file  
							
							
							
						 
						
							2023-04-05 18:51:43 +02:00  
				
					
						
							
							
								 
						
							
								6f7c03fb28 
								
							 
						 
						
							
							
								
								obs/gs/effect-parameter: Add support for sRGB texture inputs  
							
							
							
						 
						
							2023-04-05 18:51:42 +02:00  
				
					
						
							
							
								 
						
							
								22786005d6 
								
							 
						 
						
							
							
								
								gfx/shader/param: Track the parent shader object  
							
							
							
						 
						
							2023-04-05 18:51:42 +02:00  
				
					
						
							
							
								 
						
							
								69a72d4975 
								
							 
						 
						
							
							
								
								gfx/shader: Add a way to retrieve the underlying obs_source_t*  
							
							
							
						 
						
							2023-04-05 18:51:42 +02:00  
				
					
						
							
							
								 
						
							
								bba606e439 
								
							 
						 
						
							
							
								
								gfx/shader: Support for visible and active tracking in parameters  
							
							... 
							
							
							
							Co-authored-by: Michael Fabian 'Xaymar' Dirks <info@xaymar.com> 
							
						 
						
							2023-04-05 18:51:42 +02:00  
				
					
						
							
							
								 
						
							
								6aa3f6dbc2 
								
							 
						 
						
							
							
								
								gfx/shader: De-duplicate some code paths  
							
							... 
							
							
							
							Co-authored-by: Michael Fabian 'Xaymar' Dirks <info@xaymar.com> 
							
						 
						
							2023-04-05 18:51:41 +02:00  
				
					
						
							
							
								 
						
							
								d1fdab45fc 
								
							 
						 
						
							
							
								
								filter/transform: Fix mip-map level calculation  
							
							
							
						 
						
							2023-04-05 18:51:40 +02:00  
				
					
						
							
							
								 
						
							
								10ec6a7ad2 
								
							 
						 
						
							
							
								
								obs/gs/mipmapper: Add support for OpenGL  
							
							
							
						 
						
							2023-04-05 18:51:40 +02:00  
				
					
						
							
							
								 
						
							
								655ff6e367 
								
							 
						 
						
							
							
								
								third-party: Add GLAD OpenGL wrapper  
							
							
							
						 
						
							2023-04-05 18:51:40 +02:00  
				
					
						
							
							
								 
						
							
								ab6ba5ee4c 
								
							 
						 
						
							
							
								
								encoder/ffmpeg/nvenc: Swap parameter names in migration code  
							
							
							
						 
						
							2023-04-05 18:51:39 +02:00  
				
					
						
							
							
								 
						
							
								50a23799b0 
								
							 
						 
						
							
							
								
								filter/transform: Swap parameter names in migration code  
							
							
							
						 
						
							2023-04-05 18:51:39 +02:00  
				
					
						
							
							
								 
						
							
								e954e86308 
								
							 
						 
						
							
							
								
								encoder/ffmpeg: libOBS samples Chroma at Top, not Center  
							
							... 
							
							
							
							This bug predates the merge into StreamFX and was present in the original release as a separate plugin. libOBS has never sampled Chroma at Center as far as I can look back into its history.
Fixes  #676  
							
						 
						
							2023-04-05 18:51:38 +02:00  
				
					
						
							
							
								 
						
							
								29bbe22bec 
								
							 
						 
						
							
							
								
								obs/gs/effect: Preprocess shaders to improve platform compatibility  
							
							... 
							
							
							
							Improves cross-platform compatibility of Shaders written for StreamFX through the use of preprocessing to make things a bit more compatible. While we don't perform any proper parsing, this will be able to prevent basic issues. 
							
						 
						
							2023-04-05 18:51:38 +02:00  
				
					
						
							
							
								 
						
							
								2ccbd76c02 
								
							 
						 
						
							
							
								
								util/library: Don't mix incompatible parameters  
							
							
							
						 
						
							2023-04-05 18:51:37 +02:00  
				
					
						
							
							
								 
						
							
								aeb889091e 
								
							 
						 
						
							
							
								
								filter/autoframing: Remaining part of ff235b765e4d59bdab4161bbbe6b8297fb4a1203  
							
							
							
						 
						
							2023-04-05 18:51:37 +02:00  
				
					
						
							
							
								 
						
							
								2b3535f089 
								
							 
						 
						
							
							
								
								filter/autoframing: Allow specifying Tracking Frequency in Hz  
							
							
							
						 
						
							2023-04-05 18:51:36 +02:00  
				
					
						
							
							
								 
						
							
								ad3ac69cd7 
								
							 
						 
						
							
							
								
								filter/auto-framing: Frame your face, automatically!  
							
							
							
						 
						
							2023-04-05 18:51:36 +02:00  
				
					
						
							
							
								 
						
							
								e6ec0fc4c7 
								
							 
						 
						
							
							
								
								nvidia/ar/facedetection: Add Face Detection feature  
							
							
							
						 
						
							2023-04-05 18:51:36 +02:00  
				
					
						
							
							
								 
						
							
								c1ecfe70b3 
								
							 
						 
						
							
							
								
								nvidia/ar/feature: Add wrapper for AR features  
							
							
							
						 
						
							2023-04-05 18:51:35 +02:00  
				
					
						
							
							
								 
						
							
								913ac4b309 
								
							 
						 
						
							
							
								
								nvidia/ar: Add modern wrapper for Maxine AR SDK  
							
							
							
						 
						
							2023-04-05 18:51:35 +02:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								28fa127ead 
								
							 
						 
						
							
							
								
								gfx/debug: Helper class to handle common debug rendering  
							
							
							
						 
						
							2023-04-05 18:51:35 +02:00  
				
					
						
							
							
								 
						
							
								e4b15d0f73 
								
							 
						 
						
							
							
								
								nvidia/vfx/superresolution: Refactor onto effect class  
							
							
							
						 
						
							2023-04-05 18:51:34 +02:00  
				
					
						
							
							
								 
						
							
								8d029c97a2 
								
							 
						 
						
							
							
								
								nvidia/vfx/denoising: Refactor onto effect class  
							
							
							
						 
						
							2023-04-05 18:51:34 +02:00  
				
					
						
							
							
								 
						
							
								092ba2cad5 
								
							 
						 
						
							
							
								
								nvidia/vfx/greenscreen: Parent class already does this for us  
							
							
							
						 
						
							2023-04-05 18:51:34 +02:00  
				
					
						
							
							
								 
						
							
								883839ed2b 
								
							 
						 
						
							
							
								
								nvidia/vfx/effect: Auto-assign model path, and optimize with const-reference  
							
							... 
							
							
							
							Improves code performance slightly and reduces overall code duplication. 
							
						 
						
							2023-04-05 18:51:34 +02:00  
				
					
						
							
							
								 
						
							
								39c2fdb943 
								
							 
						 
						
							
							
								
								nvidia/vfx: Optimize by returning a const-reference  
							
							... 
							
							
							
							Prevents a needless deep clone of the path object. 
							
						 
						
							2023-04-05 18:51:34 +02:00  
				
					
						
							
							
								 
						
							
								939ad35dd7 
								
							 
						 
						
							
							
								
								nvidia/cv: Publicly inherit from std::runtime_error  
							
							... 
							
							
							
							It wasn't possible to cast these exceptions to the underlying type, so they were treated as unknown exceptions. 
							
						 
						
							2023-04-05 18:51:33 +02:00  
				
					
						
							
							
								 
						
							
								25dc14f805 
								
							 
						 
						
							
							
								
								util/library: Load wstring instead of string  
							
							
							
						 
						
							2023-04-05 18:51:33 +02:00  
				
					
						
							
							
								 
						
							
								f0b0b0d33d 
								
							 
						 
						
							
							
								
								filter/denoising: Wait for internal task to be completed  
							
							
							
						 
						
							2023-04-05 18:51:33 +02:00  
				
					
						
							
							
								 
						
							
								926cb740b3 
								
							 
						 
						
							
							
								
								filter/upscaling: Wait for internal task to be completed  
							
							
							
						 
						
							2023-04-05 18:51:33 +02:00  
				
					
						
							
							
								 
						
							
								21f872edfc 
								
							 
						 
						
							
							
								
								filter/virtual-greenscreen: Wait for internal task to be completed  
							
							
							
						 
						
							2023-04-05 18:51:33 +02:00  
				
					
						
							
							
								 
						
							
								97318eacac 
								
							 
						 
						
							
							
								
								util/threadpool: Allow waiting for task completion  
							
							
							
						 
						
							2023-04-05 18:51:33 +02:00  
				
					
						
							
							
								 
						
							
								a7fd867be6 
								
							 
						 
						
							
							
								
								filter/upscaling: Set correct parameters to the appropriate textures  
							
							
							
						 
						
							2023-04-05 18:51:32 +02:00  
				
					
						
							
							
								 
						
							
								26d854b7ce 
								
							 
						 
						
							
							
								
								nvidia/vfx: Prefer AddDllDirectory over SetDefaultDllDirectories  
							
							
							
						 
						
							2023-04-05 18:51:32 +02:00  
				
					
						
							
							
								 
						
							
								6983be457a 
								
							 
						 
						
							
							
								
								nvidia/cv: Prefer AddDllDirectory over SetDefaultDllDirectories  
							
							
							
						 
						
							2023-04-05 18:51:32 +02:00  
				
					
						
							
							
								 
						
							
								a56f3816a1 
								
							 
						 
						
							
							
								
								util/library: Force specific search directories  
							
							
							
						 
						
							2023-04-05 18:51:31 +02:00  
				
					
						
							
							
								 
						
							
								90bb03779c 
								
							 
						 
						
							
							
								
								filter/virtual-greenscreen: Add Virtual Greenscreen filter  
							
							
							
						 
						
							2023-04-05 18:51:31 +02:00  
				
					
						
							
							
								 
						
							
								6d20280956 
								
							 
						 
						
							
							
								
								nvidia/vfx/greenscreen: Simple wrapper for the Green Screen effect  
							
							
							
						 
						
							2023-04-05 18:51:30 +02:00  
				
					
						
							
							
								 
						
							
								c714d932b8 
								
							 
						 
						
							
							
								
								nvidia/vfx/effect: Fix 'run()' defaulting to async and expose internals  
							
							
							
						 
						
							2023-04-05 18:51:30 +02:00  
				
					
						
							
							
								 
						
							
								fe4ed123d0 
								
							 
						 
						
							
							
								
								nvidia/cv: Add specialized exception  
							
							
							
						 
						
							2023-04-05 18:51:30 +02:00  
				
					
						
							
							
								 
						
							
								a7faa2e445 
								
							 
						 
						
							
							
								
								filter/transform: Enable Anisotropic Filtering with Mip-Mapping  
							
							
							
						 
						
							2023-04-05 18:51:29 +02:00  
				
					
						
							
							
								 
						
							
								150b728419 
								
							 
						 
						
							
							
								
								filter/transform: Implement 'Corner Pin' mode  
							
							... 
							
							
							
							'Perspective' and 'Orthographic' work great if you know what the parameters were to generate the exact object position, but what if you don't know them? That is where 'Corner Pin' comes in! With it you can specify the exact location of every corner down to the micro-pixel, instead of fiddling with parameters.
Fixes  #565  
							
						 
						
							2023-04-05 18:51:29 +02:00  
				
					
						
							
							
								 
						
							
								e0c6e55259 
								
							 
						 
						
							
							
								
								filter/transform: Modernize code base for future expansion  
							
							
							
						 
						
							2023-04-05 18:51:29 +02:00  
				
					
						
							
							
								 
						
							
								a40021b17b 
								
							 
						 
						
							
							
								
								filter/transform: Migrate a number of settings for future use  
							
							
							
						 
						
							2023-04-05 18:51:29 +02:00  
				
					
						
							
							
								 
						
							
								948976fce1 
								
							 
						 
						
							
							
								
								effects: Add Draw, DrawPremultiplied to 'standard.effect'  
							
							
							
						 
						
							2023-04-05 18:51:29 +02:00  
				
					
						
							
							
								 
						
							
								cc9fa6de8f 
								
							 
						 
						
							
							
								
								locale: Remove any unused Strings  
							
							
							
						 
						
							2023-04-05 18:51:28 +02:00  
				
					
						
							
							
								 
						
							
								a7cf5bd941 
								
							 
						 
						
							
							
								
								encoder/ffmpeg: Adjust i18n identifiers to match other parts of code  
							
							
							
						 
						
							2023-04-05 18:51:28 +02:00  
				
					
						
							
							
								 
						
							
								3ebaf9ea30 
								
							 
						 
						
							
							
								
								encoder/ffmpeg: Remove color format and compliance choice  
							
							... 
							
							
							
							As people appear to be far too willing to mess with settings they have absolutely no reason to mess with, removing these seems like the best option. Both of these can still be set if you know where to look, and aren't actually required for operation at all. 
							
						 
						
							2023-04-05 18:51:28 +02:00  
				
					
						
							
							
								 
						
							
								4fea923371 
								
							 
						 
						
							
							
								
								ui: Update StreamFX's menu with new Links  
							
							
							
						 
						
							2023-04-05 18:51:25 +02:00  
				
					
						
							
							
								 
						
							
								e3563c7cf4 
								
							 
						 
						
							
							
								
								filter/dynamic-mask: Prevent recursive filter graphs  
							
							
							
						 
						
							2023-04-05 18:51:25 +02:00  
				
					
						
							
							
								 
						
							
								6a6929105a 
								
							 
						 
						
							
							
								
								ffmpeg: Fix print_av_option_string2 printing wrong names  
							
							
							
						 
						
							2023-04-05 18:51:25 +02:00  
				
					
						
							
							
								 
						
							
								b122785bd1 
								
							 
						 
						
							
							
								
								encoder/ffmpeg/nvenc: Fix migration code causing issues  
							
							
							
						 
						
							2023-04-05 18:51:25 +02:00  
				
					
						
							
							
								 
						
							
								6473882c57 
								
							 
						 
						
							
							
								
								encoder/ffmpeg/nvenc: Add Reference Frames and remove useless settings  
							
							
							
						 
						
							2023-04-05 18:51:25 +02:00  
				
					
						
							
							
								 
						
							
								b1a35118ee 
								
							 
						 
						
							
							
								
								encoder/ffmpeg/nvenc: Fix localization file order  
							
							
							
						 
						
							2023-04-05 18:51:24 +02:00  
				
					
						
							
							
								 
						
							
								7e9e9e037d 
								
							 
						 
						
							
							
								
								encoder/ffmpeg/nvenc: Fix missing settings and CQ being applied in CBR mode  
							
							
							
						 
						
							2023-04-05 18:51:24 +02:00  
				
					
						
							
							
								 
						
							
								e2efc01917 
								
							 
						 
						
							
							
								
								encoder/aom-av1: Add CPU Usage 10  
							
							
							
						 
						
							2023-04-05 18:51:24 +02:00  
				
					
						
							
							
								 
						
							
								a628dfebae 
								
							 
						 
						
							
							
								
								encoder/aom-av1: Respect "Default" setting for Metric tune setting  
							
							
							
						 
						
							2023-04-05 18:51:23 +02:00  
				
					
						
							
							
								 
						
							
								8250e63fd3 
								
							 
						 
						
							
							
								
								encoder/aom-av1: Fix automatic selection of AV1 profile  
							
							
							
						 
						
							2023-04-05 18:51:23 +02:00  
				
					
						
							
							
								 
						
							
								2abbbfe133 
								
							 
						 
						
							
							
								
								encoder/aom-av1: Bitrate Overshoot only goes to 100%  
							
							
							
						 
						
							2023-04-05 18:51:23 +02:00  
				
					
						
							
							
								 
						
							
								d0762e7150 
								
							 
						 
						
							
							
								
								nvidia/vfx/superresolution: Reduce overall CPU usage by caching results  
							
							
							
						 
						
							2023-04-05 18:51:22 +02:00  
				
					
						
							
							
								 
						
							
								d1c8cda0a3 
								
							 
						 
						
							
							
								
								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. 
							
						 
						
							2023-04-05 18:51:22 +02:00  
				
					
						
							
							
								 
						
							
								5952dfe73f 
								
							 
						 
						
							
							
								
								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  
							
						 
						
							2023-04-05 18:51:22 +02:00  
				
					
						
							
							
								 
						
							
								fc479bcdaf 
								
							 
						 
						
							
							
								
								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  
							
						 
						
							2023-04-05 18:51:22 +02:00  
				
					
						
							
							
								 
						
							
								e40e7526de 
								
							 
						 
						
							
							
								
								filter/upscaling: Update Source Identifier  
							
							
							
						 
						
							2023-04-05 18:51:21 +02:00  
				
					
						
							
							
								 
						
							
								0e5709f7da 
								
							 
						 
						
							
							
								
								filter/denoising: Update Source Identifier  
							
							
							
						 
						
							2023-04-05 18:51:21 +02:00  
				
					
						
							
							
								 
						
							
								f9c03f2c86 
								
							 
						 
						
							
							
								
								filter/denoising: Don't denoise the same image twice  
							
							
							
						 
						
							2023-04-05 18:51:21 +02:00  
				
					
						
							
							
								 
						
							
								3735627b13 
								
							 
						 
						
							
							
								
								filter/denoising: Use actual size instead of base size of target  
							
							
							
						 
						
							2023-04-05 18:51:21 +02:00  
				
					
						
							
							
								 
						
							
								45cedde1ae 
								
							 
						 
						
							
							
								
								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  
							
						 
						
							2023-04-05 18:51:20 +02:00  
				
					
						
							
							
								 
						
							
								a5166c409e 
								
							 
						 
						
							
							
								
								filter/denoising: Fix incorrect define checks  
							
							
							
						 
						
							2023-04-05 18:51:19 +02:00  
				
					
						
							
							
								 
						
							
								0ff1e3145d 
								
							 
						 
						
							
							
								
								locale: Adjust text to match reality  
							
							
							
						 
						
							2023-04-05 18:51:18 +02:00  
				
					
						
							
							
								 
						
							
								247553fa74 
								
							 
						 
						
							
							
								
								filter/denoising: Add Denoising filter  
							
							
							
						 
						
							2023-04-05 18:51:17 +02:00  
				
					
						
							
							
								 
						
							
								843a76d1c6 
								
							 
						 
						
							
							
								
								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. 
							
						 
						
							2023-04-05 18:51:17 +02:00  
				
					
						
							
							
								 
						
							
								03e6ce0dbc 
								
							 
						 
						
							
							
								
								filter/video-superresolution: Fix missing UI when selecting Providers  
							
							
							
						 
						
							2023-04-05 18:51:17 +02:00  
				
					
						
							
							
								 
						
							
								37666b0dc1 
								
							 
						 
						
							
							
								
								filter/video-superresolution: Fix incorrect symbol name  
							
							
							
						 
						
							2023-04-05 18:51:17 +02:00  
				
					
						
							
							
								 
						
							
								496fe424f4 
								
							 
						 
						
							
							
								
								filter/video-superresolution: Catch all exceptions  
							
							
							
						 
						
							2023-04-05 18:51:17 +02:00  
				
					
						
							
							
								 
						
							
								33c665982e 
								
							 
						 
						
							
							
								
								nvidia/vfx/denoising: Add wrapper for Denoising effect  
							
							
							
						 
						
							2023-04-05 18:51:17 +02:00  
				
					
						
							
							
								 
						
							
								cebd8fa744 
								
							 
						 
						
							
							
								
								nvidia/vfx/effect: Implement managed effect wrapper  
							
							... 
							
							
							
							Slightly simplifies interaction with effects. 
							
						 
						
							2023-04-05 18:51:16 +02:00  
				
					
						
							
							
								 
						
							
								7c7ea3c3b6 
								
							 
						 
						
							
							
								
								nvidia/vfx/superresolution: Round to nearest instead of truncate  
							
							... 
							
							
							
							Slightly improves the accuracy of the scaled size calculations. 
							
						 
						
							2023-04-05 18:51:16 +02:00  
				
					
						
							
							
								 
						
							
								772d21a8b6 
								
							 
						 
						
							
							
								
								nvidia/cuda: Add cuMemsetD# functions  
							
							
							
						 
						
							2023-04-05 18:51:15 +02:00  
				
					
						
							
							
								 
						
							
								9a4ab558c0 
								
							 
						 
						
							
							
								
								encoders/aom-av1: AV1 encoder based on libaom  
							
							
							
						 
						
							2023-04-05 18:51:15 +02:00  
				
					
						
							
							
								 
						
							
								12f976fde3 
								
							 
						 
						
							
							
								
								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. 
							
						 
						
							2023-04-05 18:51:14 +02:00  
				
					
						
							
							
								 
						
							
								3eacc47085 
								
							 
						 
						
							
							
								
								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. 
							
						 
						
							2023-04-05 18:51:14 +02:00  
				
					
						
							
							
								 
						
							
								04c7116f5a 
								
							 
						 
						
							
							
								
								project: Fix various warnings  
							
							
							
						 
						
							2023-04-05 18:51:14 +02:00  
				
					
						
							
							
								 
						
							
								380d75f770 
								
							 
						 
						
							
							
								
								project: Unify logging structure  
							
							
							
						 
						
							2023-04-05 18:51:14 +02:00  
				
					
						
							
							
								 
						
							
								b8f23fa8ab 
								
							 
						 
						
							
							
								
								project: Don't leak exceptions if possible  
							
							
							
						 
						
							2023-04-05 18:51:13 +02:00  
				
					
						
							
							
								 
						
							
								4943b697bc 
								
							 
						 
						
							
							
								
								encoder/ffmpeg: Fix incorrect translations  
							
							
							
						 
						
							2023-04-05 18:51:12 +02:00  
				
					
						
							
							
								 
						
							
								4b36c91fe8 
								
							 
						 
						
							
							
								
								plugin: Don't leak CUDA load exceptions  
							
							
							
						 
						
							2023-04-05 18:51:12 +02:00  
				
					
						
							
							
								 
						
							
								2c4e001751 
								
							 
						 
						
							
							
								
								nvidia/vfx/superresolution: Use resize instead of reallocate  
							
							
							
						 
						
							2023-04-05 18:51:11 +02:00  
				
					
						
							
							
								 
						
							
								cfc463ec0d 
								
							 
						 
						
							
							
								
								nvidia/cv/image: Store alignment for later use  
							
							
							
						 
						
							2023-04-05 18:51:11 +02:00  
				
					
						
							
							
								 
						
							
								faf85138fe 
								
							 
						 
						
							
							
								
								nvidia/cv: NvCVImage_Dealloc returns void  
							
							
							
						 
						
							2023-04-05 18:51:11 +02:00  
				
					
						
							
							
								 
						
							
								bb03864664 
								
							 
						 
						
							
							
								
								filter/video-superresolution: Add Video Super-Resolution filter  
							
							
							
						 
						
							2023-04-05 18:51:09 +02:00  
				
					
						
							
							
								 
						
							
								cb88682f7c 
								
							 
						 
						
							
							
								
								nvidia/vfx/superresolution: Add wrapper for Super-Resolution effect  
							
							
							
						 
						
							2023-04-05 18:51:09 +02:00  
				
					
						
							
							
								 
						
							
								02c6156f2e 
								
							 
						 
						
							
							
								
								nvidia/vfx: Add wrapper for NVIDIA Video Effects SDK  
							
							
							
						 
						
							2023-04-05 18:51:09 +02:00  
				
					
						
							
							
								 
						
							
								04c3b88d5d 
								
							 
						 
						
							
							
								
								nvidia/cv/texture: Wrapper for gs::texture Images  
							
							
							
						 
						
							2023-04-05 18:51:08 +02:00  
				
					
						
							
							
								 
						
							
								8784c91ec6 
								
							 
						 
						
							
							
								
								nvidia/cv/image: Wrapper for Images  
							
							
							
						 
						
							2023-04-05 18:51:08 +02:00  
				
					
						
							
							
								 
						
							
								84a7685d7b 
								
							 
						 
						
							
							
								
								nvidia/cv: Add NVIDIA Computer Vision wrapper  
							
							
							
						 
						
							2023-04-05 18:51:08 +02:00  
				
					
						
							
							
								 
						
							
								7a94007283 
								
							 
						 
						
							
							
								
								nvidia/cuda: Don't be so extremely spammy  
							
							
							
						 
						
							2023-04-05 18:51:08 +02:00  
				
					
						
							
							
								 
						
							
								6fc18faab0 
								
							 
						 
						
							
							
								
								util/profiler: Adjust to match coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:08 +02:00  
				
					
						
							
							
								 
						
							
								61c143a0c8 
								
							 
						 
						
							
							
								
								util: Add is_close function  
							
							
							
						 
						
							2023-04-05 18:51:07 +02:00  
				
					
						
							
							
								 
						
							
								5279993f4b 
								
							 
						 
						
							
							
								
								plugin: If CUDA is requested, ensure it is loaded first  
							
							
							
						 
						
							2023-04-05 18:51:07 +02:00  
				
					
						
							
							
								 
						
							
								0f92a4b499 
								
							 
						 
						
							
							
								
								nvidia/cuda/obs: Release stream before context  
							
							
							
						 
						
							2023-04-05 18:51:07 +02:00  
				
					
						
							
							
								 
						
							
								0f56f822c3 
								
							 
						 
						
							
							
								
								nvidia/cuda/context: Don't try to destroy device contexts  
							
							
							
						 
						
							2023-04-05 18:51:07 +02:00  
				
					
						
							
							
								 
						
							
								6ba51efceb 
								
							 
						 
						
							
							
								
								nvidia/cuda/context: Log the current device name, UUId und LUId  
							
							
							
						 
						
							2023-04-05 18:51:07 +02:00  
				
					
						
							
							
								 
						
							
								1a5dad8d97 
								
							 
						 
						
							
							
								
								nvidia/cuda: Add functions to get device name, UUId and LUId  
							
							
							
						 
						
							2023-04-05 18:51:07 +02:00  
				
					
						
							
							
								 
						
							
								b4c7d5f91c 
								
							 
						 
						
							
							
								
								util/library: Convert paths to native format  
							
							
							
						 
						
							2023-04-05 18:51:06 +02:00  
				
					
						
							
							
								 
						
							
								57f15b64f7 
								
							 
						 
						
							
							
								
								util/platform: Add Path and String conversion utility functions  
							
							
							
						 
						
							2023-04-05 18:51:06 +02:00  
				
					
						
							
							
								 
						
							
								8d7f2ffec7 
								
							 
						 
						
							
							
								
								filter/nv-face-tracking: Adjust to match coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:05 +02:00  
				
					
						
							
							
								 
						
							
								7f5916dd72 
								
							 
						 
						
							
							
								
								nvidia/ar: Adjust to match coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:05 +02:00  
				
					
						
							
							
								 
						
							
								cd8abac142 
								
							 
						 
						
							
							
								
								nvidia/cuda: Adjust to match coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:05 +02:00  
				
					
						
							
							
								 
						
							
								733b325f98 
								
							 
						 
						
							
							
								
								gfx/blur/dual-filtering: Clean up code  
							
							... 
							
							
							
							Cleans up the code slightly, without affecting actual functionality 
							
						 
						
							2023-04-05 18:51:02 +02:00  
				
					
						
							
							
								 
						
							
								011bee032a 
								
							 
						 
						
							
							
								
								gfx/blur/gaussian: Fix Gaussian Kernel generation  
							
							... 
							
							
							
							While the previous method worked, it matches no other implementation including a reference implementation. The new implementation almost perfectly matches the reference implementation and uses oversampling to achieve the goal. This has the downside of limiting the blur size to just 64, but it is necessary in order to achieve correct results.
Fixes  #573  
							
						 
						
							2023-04-05 18:51:01 +02:00  
				
					
						
							
							
								 
						
							
								8a10ca93e5 
								
							 
						 
						
							
							
								
								util: Add Pascal Triangle and integer power  
							
							
							
						 
						
							2023-04-05 18:51:01 +02:00  
				
					
						
							
							
								 
						
							
								cda430ccad 
								
							 
						 
						
							
							
								
								gfx/shader: Apply coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:01 +02:00  
				
					
						
							
							
								 
						
							
								66ecc90988 
								
							 
						 
						
							
							
								
								filter/blur: Apply coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:00 +02:00  
				
					
						
							
							
								 
						
							
								5cdf3d1201 
								
							 
						 
						
							
							
								
								filter/displacement: Apply coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:00 +02:00  
				
					
						
							
							
								 
						
							
								d9d66a19af 
								
							 
						 
						
							
							
								
								filter/dynamic-mask: Apply coding guidelines  
							
							
							
						 
						
							2023-04-05 18:51:00 +02:00