Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						128a8938c6 
					 
					
						
						
							
							[host] nvfbc: remove useless update of member  
						
						
						
						
					 
					
						2023-10-20 22:12:42 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2e515657dd 
					 
					
						
						
							
							[all] update/add license headers  
						
						
						
						
					 
					
						2023-10-20 15:36:34 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						99333a03c1 
					 
					
						
						
							
							[host] nvfbc: fix failure to store last hdr state  
						
						
						
						
					 
					
						2023-04-26 15:58:22 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						45318aa653 
					 
					
						
						
							
							[host] nvfbc: bump the format version when HDR status changes  
						
						
						
						
					 
					
						2023-04-26 15:55:26 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f84165ac66 
					 
					
						
						
							
							[host] app: report to the client if the frame is actually HDR  
						
						
						
						
					 
					
						2023-04-26 15:48:01 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e4a8424fad 
					 
					
						
						
							
							[host] nvfbc: fix ARGB10 support  
						
						... 
						
						
						
						There is no performance penalty to using ARGB10 as it's still a 32-bit copy per
pixel and the nvidia driver internally handles any conversions required to make
this work for both SDR and HDR. 
						
						
					 
					
						2023-04-19 19:52:30 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						188f25c6bf 
					 
					
						
						
							
							[host] nvfbc: increase retry timeout to 1 second  
						
						
						
						
					 
					
						2022-12-09 08:00:03 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8619f787b9 
					 
					
						
						
							
							[host] nvfbc: retry on failure to init  
						
						... 
						
						
						
						@quantum has observed nvfbc under rare circumstances fail to initialize,
this adds a retry to the init with a short delay to hopefully recover
from this situation. 
						
						
					 
					
						2022-12-08 21:24:11 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e1ebde3cd2 
					 
					
						
						
							
							[host] windows: log to stderr that logs will continue in file  
						
						... 
						
						
						
						This prevents users from posting the stderr as if it's the only output. 
						
						
					 
					
						2022-12-08 21:08:07 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						a8521b821e 
					 
					
						
						
							
							[all] cmake: standardize indentation to 2 spaces  
						
						
						
						
					 
					
						2022-05-29 11:16:16 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						a41ab81a90 
					 
					
						
						
							
							[host] nvfbc: try all NVIDIA adapters in the system  
						
						... 
						
						
						
						This will allow LG to start if the VM still has a virtual device as
the primary output. 
						
						
					 
					
						2022-05-18 16:27:17 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						0f8c0b5fb3 
					 
					
						
						
							
							[host] dxgi: fix incorrect skip logic  
						
						
						
						
					 
					
						2022-05-18 15:59:31 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						57e20007db 
					 
					
						
						
							
							[host] dxgi: don't try to use devices without d3d support  
						
						... 
						
						
						
						This change should allow LG to work even if a virtual device is still
attached to the VM even though it might be capturing the wrong display. 
						
						
					 
					
						2022-05-18 15:38:42 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						87077dfe6e 
					 
					
						
						
							
							[host] nvfbc: add downscale support  
						
						
						
						
					 
					
						2022-05-04 13:38:49 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						60834a5719 
					 
					
						
						
							
							[host] xcb/pipewire/nfbc: use min and correct inverted logic  
						
						
						
						
					 
					
						2022-05-04 12:23:20 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d5e2689d64 
					 
					
						
						
							
							[host] nvfbc: fix inverted truncated frame logic  
						
						
						
						
					 
					
						2022-05-04 11:58:04 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e4a4e2331a 
					 
					
						
						
							
							[host] nvfbc: fix build due to frame info structure changes  
						
						
						
						
					 
					
						2022-05-04 10:37:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8682ec207e 
					 
					
						
						
							
							[host] dxgi: check for invalid usage of d3d12 & downsampling  
						
						
						
						
					 
					
						2022-05-04 10:23:42 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						c8a5293645 
					 
					
						
						
							
							[host] dxgi: refactor dxgi_copyFrame  
						
						
						
						
					 
					
						2022-05-04 09:27:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						15334c89d6 
					 
					
						
						
							
							[host] dxgi: match the last entry in the downsample rule list  
						
						
						
						
					 
					
						2022-05-03 17:58:41 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2eec459b47 
					 
					
						
						
							
							[host] dxgi: finish downsample support for d3d11 backend  
						
						
						
						
					 
					
						2022-05-03 12:15:24 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						947325e00d 
					 
					
						
						
							
							[host] dxgi: fix failure to copy to texture with sub resources  
						
						... 
						
						
						
						`CopyResource` will silently fail when trying to copy from a texture
with no subresources to one with. Instead we must use `ResolveSubresource` 
						
						
					 
					
						2022-05-02 15:53:20 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3134ec84de 
					 
					
						
						
							
							[host] dxgi: add support for downsampling the capture before sending  
						
						... 
						
						
						
						This is an experimental & incomplete feature for those using
supersampling. Anything > 1200p will be downsampled by 50% before
copying out of the GPU to save on memory bandwidth.
Unfinished! Has issues with damage tracking and currently can not
be configured. Only dx11 has been tested at this point, everything
else will likely have problems/crash. 
						
						
					 
					
						2022-05-01 19:45:44 +10:00 
						 
				 
			
				
					
						
							
							
								vmfortress 
							
						 
					 
					
						
						
							
						
						36f97f08ad 
					 
					
						
						
							
							[host] dxgi: add nanosecond-scale sleep capability to d3d12  
						
						... 
						
						
						
						The nsleep() call lets d3d12 sleep for a more precise amount of
time while maintaining the current millisecond-scale sleep
interface in the configuration file. 
						
						
					 
					
						2022-03-06 17:21:14 +11:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						eeefc15e46 
					 
					
						
						
							
							[host] build with -Wstrict-prototypes  
						
						
						
						
					 
					
						2022-02-25 20:38:44 +11:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						9ddfa585ec 
					 
					
						
						
							
							[host] cleanup some missing (void) parameters  
						
						
						
						
					 
					
						2022-02-08 16:37:17 +11:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						809e1095bd 
					 
					
						
						
							
							[host] windows: plumb guest activation request to host  
						
						
						
						
					 
					
						2022-02-08 15:27:27 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						75ec3c0478 
					 
					
						
						
							
							[host] nvfbc: shorten nvfbc_getName() result  
						
						... 
						
						
						
						To avoid client showing "Using    : NVFBC (NVidia Frame Buffer Capt".
This happens because the string is truncated to 31 characters to fit
in the char capture[32]; member of KVMFRRecord_VMInfo. 
						
						
					 
					
						2022-01-26 23:06:47 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e85fd68d82 
					 
					
						
						
							
							[host] windows: read ProductName from registry if possible  
						
						... 
						
						
						
						For Windows 10, it so happens that the major.minor is 10.0. This is not
usually a given, e.g. on Windows 7 where it would read 6.1, on
Windows 8 it would read 6.2, and on Windows 8.1 it would read 6.3.
This is obviously undesirable, so we should just read the ProductName
from registry if possible. This results in something like:
    OS Name: Windows 10 Pro for Workstations (Build: 19043) 
						
						
					 
					
						2022-01-26 23:06:14 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						db3d20f935 
					 
					
						
						
							
							[host] windows: report windows version information  
						
						
						
						
					 
					
						2022-01-26 19:58:46 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ccdf7b7c0e 
					 
					
						
						
							
							[host] app: report the full capture name to the client  
						
						
						
						
					 
					
						2022-01-26 19:32:55 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						99536eaf9d 
					 
					
						
						
							
							dxgi: check for memory leaks in d3d12  
						
						
						
						
					 
					
						2022-01-19 09:58:14 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f8b4874799 
					 
					
						
						
							
							dxgi: cosmetics  
						
						
						
						
					 
					
						2022-01-19 09:58:14 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						cff64ee7d3 
					 
					
						
						
							
							dxgi: cache shared handles instead of re-creating them  
						
						... 
						
						
						
						This will cache up to 10 handles, in practice I have never seen DXGI
return anything but the same resource each time but we allow for more
anyway should MS change something in the future.
Should the cache get over filled it is disabled entirely and we revert
to the original behaviour. 
						
						
					 
					
						2022-01-19 09:58:07 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						afd5e2d057 
					 
					
						
						
							
							[host] dxgi: remove duplicate AcquireLock print  
						
						
						
						
					 
					
						2022-01-17 15:12:54 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						508c491967 
					 
					
						
						
							
							[host] dxgi: allow the debug layer to be turned on via config  
						
						
						
						
					 
					
						2022-01-17 15:12:54 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						b117bbafe5 
					 
					
						
						
							
							[host] dxgi: add ability to capture OutputDebugMessage  
						
						... 
						
						
						
						This is how Direct3D 12's debug layer outputs messages. Normally, these
are read by the debugger, but we want them logged instead. 
						
						
					 
					
						2022-01-17 15:12:54 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						4c271f8744 
					 
					
						
						
							
							[host] dxgi: move d3d12.h to vendor/directx  
						
						
						
						
					 
					
						2022-01-17 15:12:54 +11:00 
						 
				 
			
				
					
						
							
							
								Chris Spencer 
							
						 
					 
					
						
						
							
						
						3d0a8f6987 
					 
					
						
						
							
							[host] dxgi: fix frame damage method parameters  
						
						... 
						
						
						
						The buffer input sizes to the `IDXGIOutputDuplication` methods are measured
in bytes. This dramatically increases the number of dirty/move rects that
can be handled. 
						
						
					 
					
						2022-01-13 09:34:14 +11:00 
						 
				 
			
				
					
						
							
							
								Chris Spencer 
							
						 
					 
					
						
						
							
						
						f145225dbc 
					 
					
						
						
							
							[host] dxgi: fix d3d11 assertion failure  
						
						... 
						
						
						
						`DEBUG_ASSERT(!this)` in `d3d11_create` is firing on the second
instantiation because we are not clearing `this` in `d3d11_free`. 
						
						
					 
					
						2022-01-13 08:17:59 +11:00 
						 
				 
			
				
					
						
							
							
								vmfortress 
							
						 
					 
					
						
						
							
						
						7da2becfbd 
					 
					
						
						
							
							[host] dxgi: Replace standard asserts with DEBUG_ASSERT  
						
						
						
						
					 
					
						2022-01-11 11:11:42 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						042a7d0925 
					 
					
						
						
							
							[host] dxgi: add configurable sleep before D3D12 copy  
						
						
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						c69b19e68f 
					 
					
						
						
							
							[host] dxgi: add option to disable damage-aware copies  
						
						
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						cf7d501bc4 
					 
					
						
						
							
							[host] dxgi: allow copy backend selection  
						
						
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						68e5b812a9 
					 
					
						
						
							
							[host] dxgi: add preRelease callback  
						
						... 
						
						
						
						This is meant to avoid freeing the texture before the copy has finished. 
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						5a93f1e00c 
					 
					
						
						
							
							[host] dxgi: implement Direct3D 12 texture copy backend  
						
						
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						891f00a011 
					 
					
						
						
							
							[host] dxgi: add d3d12.h from latest MinGW  
						
						... 
						
						
						
						This header was added in late 2020 and hasn't made its way into the GitHub
Actions image yet. 
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						137171a8a2 
					 
					
						
						
							
							[host] dxgi: refactor to support additional copy backends  
						
						
						
						
					 
					
						2022-01-10 14:45:51 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						a391e271c3 
					 
					
						
						
							
							[host] dxgi: damage all textures when skipping frame  
						
						
						
						
					 
					
						2022-01-09 16:36:26 +11:00 
						 
				 
			
				
					
						
							
							
								Johnathon Weaver 
							
						 
					 
					
						
						
							
						
						0f998582b9 
					 
					
						
						
							
							[host] nvfbc: Fix dwmapi linking error  
						
						... 
						
						
						
						Fixed linking for DwmFlush and also rearranged as per how DXGI is. 
						
						
					 
					
						2022-01-07 01:46:35 +11:00