Cameron Gutman
|
7ca2ca8045
|
Print the GPU driver version on Windows
|
2018-09-13 14:54:30 -07:00 |
|
Cameron Gutman
|
7bc43c226d
|
Fix underflow in audio drop code
|
2018-09-13 14:09:03 -07:00 |
|
Cameron Gutman
|
da4697794d
|
Increase buffer size for glitch-free playback on macOS
|
2018-09-13 13:02:21 -07:00 |
|
Cameron Gutman
|
879c524658
|
Revert "Process Qt events in the SDL loop" to fix input issues on Windows and Mac
This reverts commit c8e00195ed .
|
2018-09-13 12:14:56 -07:00 |
|
Cameron Gutman
|
e3a8f010c3
|
Fixes for experimental Qt audio renderer
|
2018-09-13 12:00:51 -07:00 |
|
Cameron Gutman
|
f2f8f92172
|
Add gamepad mapping DB from https://github.com/gabomdq/SDL_GameControllerDB
|
2018-09-13 11:58:32 -07:00 |
|
Cameron Gutman
|
6e06174db6
|
Add experimental Qt audio renderer
|
2018-09-13 08:17:26 -07:00 |
|
Cameron Gutman
|
c8e00195ed
|
Process Qt events in the SDL loop
|
2018-09-13 08:03:06 -07:00 |
|
Cameron Gutman
|
64bc189010
|
Fixes to SDL audio renderer and autodetection support
|
2018-09-13 07:46:01 -07:00 |
|
Cameron Gutman
|
12496e4432
|
Refactor audio rendering into a separate class
|
2018-09-13 06:23:06 -07:00 |
|
Cameron Gutman
|
9e2fd67487
|
Add option to enable mouse acceleration for remote desktop usage
|
2018-09-09 13:21:11 -07:00 |
|
Cameron Gutman
|
9dcd856099
|
Blacklist Kepler GPUs for HEVC due to hybrid decode support present in some drivers
|
2018-09-09 10:48:01 -07:00 |
|
Cameron Gutman
|
cfbcc4093c
|
Reduce UI jank when transitioning to the stream segue
|
2018-09-09 10:17:32 -07:00 |
|
Cameron Gutman
|
4712080a1b
|
Fix centering of streaming window and size after toggling full-screen on Windows
|
2018-09-08 16:01:35 -07:00 |
|
Cameron Gutman
|
93c683be3a
|
Allow renderers that force V-sync on to run without it when streaming higher than the display refresh rate
|
2018-09-08 15:27:21 -07:00 |
|
Cameron Gutman
|
c9a7c15f98
|
Improve unsupported FPS options and performance
|
2018-09-08 15:09:46 -07:00 |
|
Cameron Gutman
|
64a08f0533
|
Allow higher than display refresh rate streaming with unsupported FPS option
|
2018-09-08 14:34:11 -07:00 |
|
Cameron Gutman
|
52c6455ca5
|
Avoid sending a click event on focus gain on Linux
|
2018-09-08 14:05:42 -07:00 |
|
Cameron Gutman
|
238681d72f
|
Merge pull request #67 from jhakonen/capture-on-activated-window
Capture mouse cursor when clicking inactive window
|
2018-09-08 14:01:27 -07:00 |
|
Janne Hakonen
|
300b53f28c
|
Capture mouse cursor when clicking inactive window
|
2018-09-08 16:39:20 +03:00 |
|
Janne Hakonen
|
3dabb1c891
|
Fixed < key in keyboard not working
|
2018-09-08 14:16:27 +03:00 |
|
Cameron Gutman
|
6a2b717ff1
|
Run in native resolution on Retina displays when streaming above scaled resolution
|
2018-09-07 01:12:18 -07:00 |
|
Cameron Gutman
|
475a39cb73
|
Recreate the decoder when moving to a new display to allow Pacer to get the new refresh rate
|
2018-09-06 19:42:53 -07:00 |
|
Cameron Gutman
|
4dba74e2f9
|
Fix handling of undefined and non-matching refresh rate
|
2018-09-06 19:16:59 -07:00 |
|
Cameron Gutman
|
587d783955
|
Use SDL_WINDOWPOS_CENTERED_DISPLAY() to fix incorrect positioning on multi-display system on macOS
|
2018-09-06 18:53:00 -07:00 |
|
Cameron Gutman
|
5da156b433
|
Prefer H.264 for higher decoding performance in very high load situations
|
2018-09-05 18:57:40 -07:00 |
|
Cameron Gutman
|
0d68faf40c
|
Remove unused parameter
|
2018-09-05 15:45:36 -07:00 |
|
Cameron Gutman
|
856318f947
|
Start the SDL window on the same display as the Qt UI was displayed on
|
2018-09-05 15:15:53 -07:00 |
|
Cameron Gutman
|
9a71b4c237
|
Improve mouse batching to only batch if the last event was less than 1 millisecond ago
|
2018-09-04 00:09:35 -07:00 |
|
Cameron Gutman
|
9aa487418f
|
Force V-Sync enabled for DXVA2 windowed with DWM composition enabled
|
2018-09-03 23:34:15 -07:00 |
|
Cameron Gutman
|
203b2fcaca
|
Batch mouse move events for high DPI mice
|
2018-09-04 00:37:21 -04:00 |
|
Cameron Gutman
|
dae21f2638
|
Detect native panel resolution on Retina displays. Fixes #59
|
2018-09-04 00:21:37 -04:00 |
|
Cameron Gutman
|
af6e99cbac
|
Select the highest full-screen refresh rate that our stream FPS evenly divides
|
2018-09-03 22:54:41 -04:00 |
|
Cameron Gutman
|
6d6acf4308
|
Fix release builds
|
2018-09-03 22:47:31 -04:00 |
|
Cameron Gutman
|
7dd4815edf
|
Allow selection between full-screen exclusive mode and borderless windowed mode
|
2018-09-03 22:17:34 -04:00 |
|
Cameron Gutman
|
2c068a99a3
|
Allow FFmpeg renderers to enforce V-sync being enabled or disabled
|
2018-09-03 20:57:09 -04:00 |
|
Cameron Gutman
|
fa93364ddd
|
Ensure the CVDisplayLink is synchronized to the display that our window is on
|
2018-09-03 20:19:24 -04:00 |
|
Cameron Gutman
|
9b1eef3f63
|
Pass AV_HWACCEL_FLAG_IGNORE_LEVEL for VDPAU per FFmpeg documentation recommendation
|
2018-09-03 17:06:21 -04:00 |
|
Cameron Gutman
|
ed6c07fd4b
|
Display all frames even if they are corrupt or missing references (as will happen during reference frame invalidation)
|
2018-09-02 18:45:29 -04:00 |
|
Cameron Gutman
|
5ad96f5287
|
Display a dialog when the connection is terminated by the remote PC
|
2018-09-02 18:34:10 -04:00 |
|
Janne Hakonen
|
b96ace7f04
|
Release mouse cursor when window focus is lost
|
2018-09-02 00:31:37 +03:00 |
|
Cameron Gutman
|
234a8dc3d5
|
Fix build with HAVE_SLVIDEO
|
2018-08-31 10:40:25 -04:00 |
|
Cameron Gutman
|
762fe92933
|
Allow streaming with no audio device. Fixes #52
|
2018-08-31 00:09:31 -04:00 |
|
Cameron Gutman
|
b7cbec0b1c
|
Pass RFI flags to decoder
|
2018-08-25 13:36:54 -07:00 |
|
Cameron Gutman
|
9be9934b8c
|
Add reference frame invalidation for the software decoder
|
2018-08-25 12:38:04 -07:00 |
|
Cameron Gutman
|
408f93732b
|
Fix 'invalid VADisplay' errors on renderer destruction
|
2018-08-25 11:21:52 -07:00 |
|
Cameron Gutman
|
7e560aa09e
|
Use MMCSS when streaming with the DXVA renderer
|
2018-08-21 00:53:41 -07:00 |
|
Cameron Gutman
|
7d9478b774
|
Fix FlipEx on Windows 7
|
2018-08-21 00:49:29 -07:00 |
|
Cameron Gutman
|
0fa0ab43c9
|
Fix broken Alt+Tab behavior on Windows
|
2018-08-20 22:48:48 -07:00 |
|
Cameron Gutman
|
f9cdd49d2e
|
Add settings option to disable V-sync for lowest possible latency on Windows
|
2018-08-20 22:25:19 -07:00 |
|
Cameron Gutman
|
7661f5a3d7
|
Use SetThreadExecutionState() to disable the screensaver since SDL doesn't currently call that. Fixes #46
|
2018-08-20 21:36:23 -07:00 |
|
Cameron Gutman
|
395f337bbb
|
Switch full-screen mode back to full-screen exclusive on Windows to reduce latency by 1 frame
|
2018-08-20 21:19:00 -07:00 |
|
Cameron Gutman
|
9e9fe2a2cf
|
Work around DWM bug on Windows 7 causing horrible performance
|
2018-08-20 21:17:25 -07:00 |
|
Cameron Gutman
|
5bf88cfe96
|
Fix Mac build
|
2018-08-20 18:57:11 -07:00 |
|
Cameron Gutman
|
f7d3c10c9d
|
Plumb the ability to disable V-sync through the video renderers
|
2018-08-20 18:19:42 -07:00 |
|
Cameron Gutman
|
6b395c816f
|
Allow Pacer to wait for frames up until a few ms before v-sync for better smoothness and lower latency
|
2018-08-20 17:53:35 -07:00 |
|
Cameron Gutman
|
d6e7173af0
|
Add a VsyncSource for renderers that already block for V-sync
|
2018-08-20 17:24:47 -07:00 |
|
Cameron Gutman
|
1a60484abc
|
Use hardware vertex processing if available
|
2018-08-19 22:45:17 -07:00 |
|
Cameron Gutman
|
62f765b2b4
|
Switch DXVA2 to IDirect3D9Ex APIs for more detailed control of rendering
|
2018-08-19 21:53:39 -07:00 |
|
Cameron Gutman
|
1b8c3aae73
|
Speed up resize/full-screen by avoiding excessive decoder resets
|
2018-08-19 01:19:23 -07:00 |
|
Cameron Gutman
|
845e84adb7
|
Avoid the test frame for DXVA2 and VT APIs to address flickering in full-screen on Win7
|
2018-08-19 00:59:04 -07:00 |
|
Cameron Gutman
|
c1b1719914
|
Recreate the VT decoder if the display layer fails. Minor fix to Path class.
|
2018-08-16 23:09:40 -07:00 |
|
Cameron Gutman
|
9fbdd794b9
|
Improve support for full-screen exclusive mode
|
2018-08-16 22:25:14 -07:00 |
|
Cameron Gutman
|
345e800abd
|
Always submit frames to Pacer if it's using a frame queue
|
2018-08-16 17:59:33 -07:00 |
|
Cameron Gutman
|
404eaa44e4
|
Implement frame pacing for Windows using D3DKMTWaitForVerticalBlankEvent
|
2018-08-16 01:29:53 -07:00 |
|
Cameron Gutman
|
8e257ab241
|
Remove unused function
|
2018-08-16 00:04:28 -07:00 |
|
Cameron Gutman
|
fabbad5370
|
Fix build error on Windows and warnings
|
2018-08-16 00:02:43 -07:00 |
|
Cameron Gutman
|
7d61acb2a8
|
Use Pacer to drive all rendering
|
2018-08-15 23:57:03 -07:00 |
|
Cameron Gutman
|
f6a451d6e7
|
Add PoC VsyncSource for Windows using DwmFlush(). Soon to be replaced with D3DKMTWaitForVerticalBlankEvent().
|
2018-08-15 23:20:56 -07:00 |
|
Cameron Gutman
|
e68a15c825
|
Move the Vsync logic from VTRenderer into a VsyncSource
|
2018-08-15 22:02:15 -07:00 |
|
Cameron Gutman
|
f929cffce7
|
Let Pacer know what the display Hz and stream FPS are so it can make better drop decisions
|
2018-08-15 21:10:35 -07:00 |
|
Cameron Gutman
|
f171588616
|
Pass the maximum frame rate into FFmpeg renderers
|
2018-08-15 20:41:19 -07:00 |
|
Cameron Gutman
|
e467ce7ce8
|
Uninitialize video subsystem before allowing a racing session to start to prevent an assert from firing
|
2018-08-15 20:35:11 -07:00 |
|
Cameron Gutman
|
f714a5d0cb
|
Refactor frame pacing from VT renderer into a separate class for sharing with other renderers
|
2018-08-14 19:13:17 -07:00 |
|
Cameron Gutman
|
c9bf5ae79d
|
Prevent underflow during audio frame drop calculation
|
2018-08-14 17:39:29 -07:00 |
|
Cameron Gutman
|
cf2d8f71d6
|
Avoid setting timer resolution to 1 ms while Moonlight is not streaming
|
2018-08-13 22:23:05 -07:00 |
|
Cameron Gutman
|
611d9ac1ba
|
Pass the chroma type to the VDPAU video mixer
|
2018-08-13 20:02:55 -07:00 |
|
Cameron Gutman
|
bab11a731e
|
Fix uninitialized gamepad mask in multi-controller mode
|
2018-08-12 01:39:22 -07:00 |
|
Cameron Gutman
|
566181e8d7
|
Display error if video decoder doesn't initialize
|
2018-08-11 22:49:36 -07:00 |
|
Cameron Gutman
|
d3c2f50b20
|
Remove custom VAAPI logging functions
|
2018-08-11 20:32:28 -07:00 |
|
Cameron Gutman
|
f1ee1eeb63
|
Avoid using window systems that SDL wasn't compiled to support
|
2018-08-11 20:19:20 -07:00 |
|
Cameron Gutman
|
bb18519e44
|
WIP Wayland rendering code for VAAPI
|
2018-08-11 19:43:36 -07:00 |
|
Cameron Gutman
|
917f6e5ee9
|
Only capture the mouse by default for full screen streaming
|
2018-08-11 14:19:42 -07:00 |
|
Cameron Gutman
|
8f61a11452
|
Remove improper cast to unsigned value
|
2018-08-09 20:21:18 -07:00 |
|
Cameron Gutman
|
4b1d3b0125
|
Warn users when their configuration is impossible to satisfy. Fixes #26
|
2018-08-09 19:37:49 -07:00 |
|
Cameron Gutman
|
c61182bcb2
|
Allow FFmpeg decoder to self-heal in cases of UAC dialogs and other unexpected loss of hardware state
|
2018-08-09 18:39:38 -07:00 |
|
Cameron Gutman
|
2fdfb3e998
|
Fix a few incorrectly mapped keys. Fixes #28
|
2018-08-06 20:30:09 -07:00 |
|
Cameron Gutman
|
7be167856e
|
Only enable game optimizations when streaming at officially supported resolutions
|
2018-08-05 18:09:35 -07:00 |
|
Cameron Gutman
|
e1d68ef097
|
Fix Y values wrapping at -32768
|
2018-08-05 18:01:50 -07:00 |
|
Cameron Gutman
|
b6763bb9f0
|
Fix VDPAU rendering at 4K
|
2018-08-05 16:33:08 -07:00 |
|
Cameron Gutman
|
6d9c0c96c9
|
Fix streaming with non-aligned resolutions with DXVA2 on my Quadro P400
|
2018-08-05 15:25:40 -07:00 |
|
Cameron Gutman
|
9cc20c27ab
|
Add support for native resolution streaming
|
2018-08-05 14:55:26 -07:00 |
|
Cameron Gutman
|
45ebf2ca7d
|
Add log messages for server GPU, bitrate, and slices
|
2018-08-05 13:32:04 -07:00 |
|
Cameron Gutman
|
b04bc5117d
|
Fix scaling logic in the Linux renderers using the new helper function
|
2018-08-04 22:31:14 -07:00 |
|
Cameron Gutman
|
5cbb38091b
|
Create new utility function for scaling with aspect ratio and use it for DXVA2
|
2018-08-04 22:22:15 -07:00 |
|
Cameron Gutman
|
b076744f00
|
Support HEVC software decoding and forcing HEVC without GPU support
|
2018-08-04 16:45:31 -07:00 |
|
Cameron Gutman
|
723e815546
|
Add warning for forcing software decoding
|
2018-08-04 16:15:13 -07:00 |
|
Cameron Gutman
|
ca72cbb135
|
Implement displaying launch warnings. Fixes #12
|
2018-08-04 16:05:37 -07:00 |
|
Cameron Gutman
|
1e8c2b179a
|
Only fill the screen in windowed mode if the stream is larger than usable display area
|
2018-08-04 15:34:56 -07:00 |
|
Cameron Gutman
|
f2ed3a8502
|
Make stream window resizable
|
2018-08-04 15:34:56 -07:00 |
|