Geoffrey McRae
667ab981ba
[host] send the latest cusror information when a new client connects
2020-05-25 14:37:02 +10:00
Geoffrey McRae
bc7871f630
[c-host] renamed finall to just plain host
2020-05-25 13:42:43 +10:00
Geoffrey McRae
373d4ac932
[host] removed old host application from the project, see c-host
2019-05-28 14:47:09 +10:00
Paul Götzinger
b5975e0f05
[host] [c-host] added support to specify IVSHMEM device
...
[host] basic IVSHMEM device selecting implemented
Minor fixes for IVSHMEM device scanning
[c-host] added support to specify IVSHMEM device
2019-05-10 22:28:27 +10:00
Geoffrey McRae
28b12c85f4
[build] make "common" a static library (part 1/2)
2019-04-11 11:03:30 +10:00
Geoffrey McRae
526c09b7ff
[host] added missing file from build
2019-02-28 16:26:09 +11:00
Geoffrey McRae
5a37a53cb0
[host] move windows specific debug code to the host
2019-02-28 16:23:31 +11:00
Geoffrey McRae
08bf01b649
[all] update copyright dates
2019-02-22 22:16:14 +11:00
Geoffrey McRae
263b412fdf
[host] dxgi: fixed reversed logic for fallback
2019-02-07 15:13:07 +11:00
Geoffrey McRae
037ea5b1fc
[host] fix compiler warnings
2019-02-07 14:43:18 +11:00
Geoffrey McRae
18634fa805
[host] fallback to IDXGIOutput1 if IDXGIOutput5 is not available
2019-02-07 14:43:18 +11:00
Geoffrey McRae
1ef61f6cd3
[host] use a global hook to obtain cursor move pos
2019-01-11 23:58:50 +11:00
Geoffrey McRae
5518ccb795
[host] NvFBC: user specified privateData for debug
2019-01-09 16:10:46 +11:00
Geoffrey McRae
6e1180ce06
[host] nvfbc: initial updates to re-enable support
2019-01-03 17:08:05 +11:00
Geoffrey McRae
2a86339b1d
[host] [Patch 1/2] fix copy of padded resolutions
2019-01-02 10:29:46 +11:00
Geoffrey McRae
a1b1ed0060
[host] initiate the texture copy earlier
2018-12-07 20:54:30 +11:00
Geoffrey McRae
2cb18a3f8f
[host] removed incomplete h264
2018-12-07 20:54:30 +11:00
Geoffrey McRae
2a30bb718a
[host] updated to take advantage of DXGI v1.5
2018-12-04 21:26:46 +11:00
Geoffrey McRae
d235d076c4
[host] simplify capture logic and fix re-init bug
2018-11-02 21:38:02 +11:00
Geoffrey McRae
9f67f42f94
[host] fix hang on capture error
2018-10-19 21:16:47 +11:00
Geoffrey McRae
31a25c94c6
[host] fix failure to re-init
2018-10-19 21:16:42 +11:00
Geoffrey McRae
6a9f687eae
[host] increase cursor ring size to avoid a race
2018-10-19 20:20:01 +11:00
Geoffrey McRae
df7e9b1184
[host] remove unused critical sections
2018-10-19 20:15:42 +11:00
Geoffrey McRae
1350ba6c4b
[host] accumulate cursor updates rather then queue
2018-10-19 20:14:43 +11:00
Geoffrey McRae
f36fd5ac1a
[host] correct cursor visibility information
2018-10-09 18:28:08 +11:00
Geoffrey McRae
0e8678b182
[host] correct mouse position with hotspot offset
2018-10-09 18:10:59 +11:00
Geoffrey McRae
ce4f1be2a6
[host] fix cursor visibility bug
2018-10-09 17:52:13 +11:00
Geoffrey McRae
db907b1b67
[host] improve mouse sync with the client
2018-10-09 17:48:59 +11:00
Geoffrey McRae
fb37174e5f
[dxgi] cleaned up retry logic
2018-10-04 17:05:32 +10:00
Geoffrey McRae
8f0a6cd810
[host] general performance improvements
2018-10-04 00:07:34 +10:00
Geoffrey McRae
471303a179
[host] better sync, helps enormously with 4K!!!
2018-09-30 03:50:43 +10:00
Geoffrey McRae
73a2597c8a
[dxgi] fix crash caused by failure to release in some instances.
2018-09-27 12:49:52 +10:00
Geoffrey McRae
3cd152c9d5
[host] DXGI capture improvements
2018-09-26 21:20:17 +10:00
Geoffrey McRae
a989914fef
[host] remove the invalid usage of SafeRelease
...
SafeRelease was really useless, derefencing the smart pointers through
the use of & releases the value before SafeRelease get's to it. Instead
either allow the destructor to handle it's release, or explicityly
release it by assigning NULL
2018-07-28 10:27:50 +10:00
Geoffrey McRae
f692284f27
[host] don't uselessly try to scale 1:1 textures
2018-07-28 10:27:50 +10:00
Geoffrey McRae
d292d46fcb
[host] correct YUV output, do not copy padding bytes
2018-07-28 07:48:10 +10:00
Geoffrey McRae
b899a65726
[host] correct RGBtoYUV shader output
2018-07-28 07:47:49 +10:00
Geoffrey McRae
63b4dd633c
[host] correct invalid copy size for U & V planes
2018-07-28 07:25:00 +10:00
Geoffrey McRae
eba99f6968
[host] fix compiler warnings
2018-07-28 06:29:34 +10:00
Geoffrey McRae
354bef94ee
[host] fixed project Release shader build
2018-07-28 06:25:41 +10:00
Geoffrey McRae
e515cdc8dd
[host] added YUV420 output support
2018-07-28 06:19:59 +10:00
Geoffrey McRae
2a03d1c4a9
[host] removed unused shader view
2018-07-28 06:19:59 +10:00
Geoffrey McRae
3e3c409fc4
[host] ignore compiled shader headers
2018-07-28 06:19:59 +10:00
Geoffrey McRae
62e3dd250b
[host] remove compiled shader headers from repo
2018-07-28 06:19:59 +10:00
Geoffrey McRae
3799929f59
[host] remove the depth buffer, it's unused
2018-07-28 06:19:59 +10:00
Geoffrey McRae
2019766989
[host] added format converter class
2018-07-28 06:19:58 +10:00
Geoffrey McRae
58c3b37e49
[h264] cosmetics
2018-07-28 06:19:58 +10:00
Geoffrey McRae
c650c2e474
[dxgi/h264] fix failure to re-init h264 correctly
2018-07-28 06:19:58 +10:00
Geoffrey McRae
e4cdc58399
[host] move H264 out of DXGI into seperate class
2018-07-26 05:50:06 +10:00
Geoffrey McRae
af143bdd82
[dxgi] update DXGI to use timeout return value
2018-07-26 03:09:59 +10:00
Geoffrey McRae
343983d9af
[host] add timeout return value for repeated frame
...
This is to allow a repeat frame without incuring an additional
memory copy when the frame is already in shared memory.
2018-07-26 03:08:52 +10:00
Geoffrey McRae
5cabf155ab
[host] flag paused when waiting for sec desktop
2018-07-24 01:12:24 +10:00
Geoffrey McRae
43593d8aea
[host] replaced MultiMemcpy with plain memcpySSE
2018-07-23 15:21:43 +10:00
Geoffrey McRae
8a9d0b0bfb
[host] fix crash on screen blanking
2018-06-01 00:39:18 +10:00
Geoffrey McRae
d4c41d2d94
[host] improve capture performance
...
Contrary to the MS documentation, benchmarking shows a substantial
increase in performance when releasing the captured frame as soon
as possible. This change makes it possible to achieve 60FPS at 4K
resolutions.
2018-05-31 18:53:11 +10:00
Geoffrey McRae
d753af9d17
[host] remove debug tracing noise
2018-05-29 18:37:21 +10:00
Geoffrey McRae
b23c7808c0
[host] don't count re-init requests as failures
2018-05-29 18:37:21 +10:00
commander kotori
80581a4aa2
[host] ask for unicode with mingw-w64 makefile
...
Pass -DUNICODE as a CFLAG. The visual studio project asks for
a unicode (wide-string) build, but the unix makefile did not.
This fixes the build on msys2.
2018-05-28 12:10:52 +10:00
Geoffrey McRae
871aee2aae
[host] fixed missed cursor shape updates
2018-05-28 10:34:24 +10:00
Geoffrey McRae
3adcbfaa7d
[host] cosmetics
2018-05-24 18:08:59 +10:00
Geoffrey McRae
213c220d83
[host] don't assume the capture was successful
2018-05-24 17:05:49 +10:00
Geoffrey McRae
eef18dd655
[host] add critical section for m_cursorInfo
2018-05-24 16:50:50 +10:00
Geoffrey McRae
b29f1c62bb
[host] update to KVMFR v6 and decouple mouse
2018-05-24 11:24:24 +10:00
Geoffrey McRae
15a337fee8
[host] use the new memcpySSE implementation
2018-05-22 18:59:24 +10:00
arcnmx
35b4d75eea
[host] mingw-w64 compile fixes ( #44 )
...
* [host] rename min() to LG_MIN()
* [host] format string type fixes, %Ix doesn't exist in mingw
* [host] DXGI minor fixes
* [host] mingw lacks media foundation api headers and QISearch
2018-01-30 21:07:46 +11:00
Geoffrey McRae
a36d312844
[host] dxgi: fixed missed header update for timeout fix
2018-01-04 09:30:55 +11:00
Geoffrey McRae
6653340bac
[host] dxgi: follow suit and use h264 high profile
2018-01-04 09:30:27 +11:00
Geoffrey McRae
9000fdf6fc
[host] fix frame duplication problem with new MFT implementation
2017-12-31 00:32:39 +11:00
Geoffrey McRae
9b7f54fa35
[host] service restarts now restart capture interfaces
2017-12-30 13:35:45 +11:00
Geoffrey McRae
9ef9f60505
[host] dxgi: fixed MFT memory leak and re-init failure
2017-12-30 13:35:45 +11:00
Geoffrey McRae
b5f2092e9c
[host] return the compressed frame size in the pitch field
2017-12-29 21:01:02 +11:00
Geoffrey McRae
03622f61b0
[host] Added experimental H264 compression to DXGI (disabled by default)
...
This is not yet working, the client is yet to be updated to support
decompressing this stream.
2017-12-29 20:53:52 +11:00
Geoffrey McRae
3d9230ac93
[host] dxgi: fixed frame update regression
2017-12-29 07:15:59 +11:00
Geoffrey McRae
2d746cbfd4
[host] dxgi: performance improvements
2017-12-29 07:01:13 +11:00
Geoffrey McRae
2f2813037b
[host] improved latency of multimemcpy with hybrid locking and preempt
2017-12-29 07:00:27 +11:00
Geoffrey McRae
f6f4c8070a
[host] adjusted frame and cursor offset calculations
2017-12-29 06:11:32 +11:00
Geoffrey McRae
59fa025292
[host] add store fence to shm writes as we are using writecombine
2017-12-28 15:42:44 +11:00
Geoffrey McRae
e09d7f0ad0
[host] Update IVSHMEM class to support incoming driver version
2017-12-28 15:42:44 +11:00
Geoffrey McRae
16e804b068
[host] added tracing class to help profile slow code points
2017-12-23 18:15:15 +11:00
arcnmx
d9397610f3
[host] compile MultiMemcpy on mingw
2017-12-21 14:42:49 +11:00
arcnmx
f26d8fbd3e
[host] remove unused variables
2017-12-21 14:42:49 +11:00
Geoffrey McRae
43b096a5e7
[host] added multi-threaded memcopy for high resolutions
2017-12-21 13:49:36 +11:00
Geoffrey McRae
2fe800f502
[host] dxgi: corrected timeout alteration left behind from debugging
2017-12-20 04:35:07 +11:00
Geoffrey McRae
ec6c35010b
[host] updated host application for the new mt client format
...
See prior commit for details on this update
2017-12-20 00:58:42 +11:00
Geoffrey McRae
2a93e2ed55
[host] removed comments from prior testing
2017-12-19 13:40:59 +11:00
Geoffrey McRae
1f004472cc
[host] dxgi: re-mapping is required to sync memory changes properly
2017-12-18 21:34:44 +11:00
Geoffrey McRae
0d1d49b00e
[host] dxgi: wait for sync before trying to read the memory map
2017-12-18 17:35:35 +11:00
Geoffrey McRae
e298f9169c
[client] dxgi: persistant map the texture memory
2017-12-18 17:18:37 +11:00
Geoffrey McRae
9e75c7ab34
[host] boost the priority to realtime (run as admin required)
2017-12-18 17:18:11 +11:00
Geoffrey McRae
8dec59f3ff
[host] dxgi: don't release the frame until we need a new one
...
Per Microsoft spec we should not release the frame until we are about to
acquire another frame, this pervents additional GPU overhead on the
guest.
2017-12-18 12:03:22 +11:00
Geoffrey McRae
49acc6ec0b
[host] dxgi: fix termination due to wait timeout
2017-12-18 00:10:42 +11:00
Geoffrey McRae
4e6c1ea648
[host] fix build in VS++
2017-12-18 00:06:53 +11:00
arcnmx
e6c6c16d56
[host] compile NvFBC on mingw
2017-12-17 09:11:25 +11:00
Geoffrey McRae
24709ef186
[host] dxgi: set the pitch on new frames
2017-12-17 05:20:40 +11:00
Geoffrey McRae
db59e67ddb
[host] update capture classes to return the pitch
2017-12-17 05:05:56 +11:00
Geoffrey McRae
1815387bbb
[host] update to use the new header format
2017-12-17 05:03:47 +11:00
Geoffrey McRae
9d8f3a79b0
[host] detect switch user event and wait instead of terminating
...
Fixes #22
2017-12-17 04:50:04 +11:00
Geoffrey McRae
bf85358715
Revert "[host] simplify dll loading"
...
This reverts commit b89a8fee04
.
2017-12-17 04:04:25 +11:00
Geoffrey McRae
b77a34b8b6
[host] DXGI: fix Secure Desktop wait logic
...
Fixes #20
2017-12-17 02:27:48 +11:00
Geoffrey McRae
7c5b2b5c1c
[host] dxgi: re-send the last frame if capture times out
...
This change prevents the guest from stalling on startup if there are no
frames being captured
2017-12-16 10:24:37 +11:00