vmfortress 
							
						 
					 
					
						
						
							
						
						6c76d6ada5 
					 
					
						
						
							
							[host] xcb: fixed early start of pointer thread by adding xcb_start  
						
						
						
						
					 
					
						2022-03-08 06:12:17 +11: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 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						fc96b6691e 
					 
					
						
						
							
							[host] linux: remove useless libX11 dependency  
						
						
						
						
					 
					
						2022-02-14 15:08:29 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						5a94f82f10 
					 
					
						
						
							
							[host] linux: remove useless GL dependency  
						
						
						
						
					 
					
						2022-02-14 15:08:29 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						f01489720f 
					 
					
						
						
							
							[host] linux: build with PipeWire by default  
						
						... 
						
						
						
						Since the client already depends on PipeWire by default, there is no
reason why the host shouldn't. 
						
						
					 
					
						2022-02-12 22:13:31 +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 
							
						 
					 
					
						
						
							
						
						d93510e9f2 
					 
					
						
						
							
							[host] linux: allow getting system version  
						
						... 
						
						
						
						Result is something like:
    Debian GNU/Linux 11 (bullseye), kernel: Linux 5.14.0-0.bpo.2-amd64 on x86_64 
						
						
					 
					
						2022-01-27 05:47:53 +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 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						34e5f7e968 
					 
					
						
						
							
							[host] windows: fix usage of MCSS and try to get priority "Capture"  
						
						
						
						
					 
					
						2022-01-06 20:14:55 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2f8b139131 
					 
					
						
						
							
							[host] windows: set DwmFlush default to off  
						
						... 
						
						
						
						This new feature while helps on some systems, others using freesync or
higher refresh rates where the capture can't keep up will limit to
fractions of the refresh rate. Better to disable and allow users to
opt-in. 
						
						
					 
					
						2022-01-06 19:20:08 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b058cbe9fe 
					 
					
						
						
							
							[host] nvfbc: add DwmFlush here too as it makes a large difference  
						
						
						
						
					 
					
						2022-01-06 19:01:29 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						443f98d2fa 
					 
					
						
						
							
							[host] windows: opt into the Multimedia Class Schedule Service  
						
						... 
						
						
						
						This improves overall application performance as windows will give this
process higher priority for low latency multimedia tasks. 
						
						
					 
					
						2022-01-06 18:41:48 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						92f27cc0f0 
					 
					
						
						
							
							[host] dxgi: use DwmFlush to sync to presentation interval  
						
						... 
						
						
						
						This change reduces the host GPU and CPU load by a large margin
improving guest system performance along with removing latency spikes
when moving the mouse. This is default enabled but can be disabled with
the new option `dxgi:dwmFlush=no` as it limits the capture rate to the
refresh rate of the guests output which may not be desireable. 
						
						
					 
					
						2022-01-06 18:39:08 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5bb1f01dea 
					 
					
						
						
							
							[host] windows: parse the UUID from the SMBIOS  
						
						
						
						
					 
					
						2022-01-06 14:22:38 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						fdb38a227e 
					 
					
						
						
							
							[host] app: implement stubs for platform specific guest information  
						
						
						
						
					 
					
						2022-01-05 21:04:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						952ebea2c5 
					 
					
						
						
							
							[all] refresh copyright dates  
						
						
						
						
					 
					
						2022-01-05 19:42:46 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ebf20dd108 
					 
					
						
						
							
							[host] nvfbc: fix failure to startup  
						
						
						
						
					 
					
						2022-01-05 19:31:47 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ba9f2b85b6 
					 
					
						
						
							
							[host/client] kvmfr: update to include extra user data about the VM  
						
						... 
						
						
						
						This change allows the host to provide information to the client about
how the VM is configured, information such as the UUID, CPU
configuration and capture method both for informational display in the
client as well as debugging in the client's logs.
The format of the records allows this to be extended later with new
record types without needing to bump the KVMFR version. 
						
						
					 
					
						2022-01-05 19:18:43 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e7fdf7e77a 
					 
					
						
						
							
							[host] pipewire: report stream state  
						
						... 
						
						
						
						This should provide some useful debug information and report stream
errors. 
						
						
					 
					
						2021-12-28 19:23:14 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						a21e897bb5 
					 
					
						
						
							
							[host] pipewire: use new format for 10-bit colour  
						
						... 
						
						
						
						I recently added little-endian 10-bit colour formats to PipeWire, which
is what we actually use. The old r210 format is big endian. 
						
						
					 
					
						2021-12-28 18:50:29 +11:00 
						 
				 
			
				
					
						
							
							
								vmfortress 
							
						 
					 
					
						
						
							
						
						8ab130deba 
					 
					
						
						
							
							xcb: added basic cursor support via xcb_fixes  
						
						... 
						
						
						
						xcb interface now properly supports cursor integration through
a `pointerThread` similar to the nvfbc implementation. 
						
						
					 
					
						2021-12-27 11:10:07 +11:00 
						 
				 
			
				
					
						
							
							
								vmfortress 
							
						 
					 
					
						
						
							
						
						fbf294efd9 
					 
					
						
						
							
							xcb: Fixed return value of xcb_deinit  
						
						... 
						
						
						
						`xcb_deinit` returns `true` to fit the capture interface standard. 
						
						
					 
					
						2021-12-27 11:10:07 +11:00 
						 
				 
			
				
					
						
							
							
								vmfortress 
							
						 
					 
					
						
						
							
						
						2824238b4d 
					 
					
						
						
							
							xcb: added xcb_stop and xcb_initOptions support  
						
						... 
						
						
						
						Added basic functions and the necessary variables for the
`.initOptions` and `.stop` items in the capture interface. 
						
						
					 
					
						2021-12-27 11:10:07 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						6f8745a89b 
					 
					
						
						
							
							[host] installer: enable DPI awareness  
						
						... 
						
						
						
						This should make the installer look less blurry on high DPI displays. 
						
						
					 
					
						2021-12-26 11:34:43 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						3d1eedd4ef 
					 
					
						
						
							
							[host] installer: add ability to install IVSHMEM driver  
						
						... 
						
						
						
						To use this, run makensis with -DIVSHMEM with the driver files in the
ivshmem subdirectory under the build directory. 
						
						
					 
					
						2021-12-26 11:31:32 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						d073f9969c 
					 
					
						
						
							
							[host] installer: clean up trailing whitespace  
						
						
						
						
					 
					
						2021-12-26 11:31:32 +11:00