Commit Graph

150 Commits

Author SHA1 Message Date
ns6089
e98d7577bb
Support capturing rotated displays on Windows (#1602) 2023-09-13 10:34:26 -04:00
ns6089
646a569210 nvenc: add option to disable realtime hags 2023-09-07 18:03:19 -05:00
ns6089
cadb45ec3d msvc: misplaced calling convention 2023-09-07 18:03:19 -05:00
ns6089
dfd6eaefcb Don't use rounded refresh rate in info log 2023-09-07 18:03:19 -05:00
ns6089
8b40fa6dd5 nvenc: new config page 2023-09-07 18:03:19 -05:00
ns6089
4094fef67a Bind constant buffers where you define them
And remove possible slot collisions.
2023-09-05 21:32:37 -05:00
Cameron Gutman
9543bc77d8 Fix pen tilt angle calculation 2023-09-02 11:12:59 -05:00
ns6089
7662fe8616 Don't accumulate errors in capture frame pacing 2023-08-27 13:13:43 -05:00
ns6089
b494d06f89 Adjust capture rate to better match display 2023-08-27 13:13:43 -05:00
ns6089
6683ea2ac1 Rework capture sleeps for better frame stability 2023-08-27 13:13:43 -05:00
ns6089
42a77b247e Release duplication frame after snapshot 2023-08-27 13:13:43 -05:00
ns6089
730fce4b1c Move client frame interval to local variable 2023-08-27 13:13:43 -05:00
ns6089
d2a634ee09 Don't check AccumulatedFrames
AMF doesn't do it and MSDN is unclear about it.
2023-08-27 13:13:43 -05:00
ns6089
d81e2cecaa Add high_precision_sleep() method 2023-08-27 13:13:43 -05:00
ns6089
8dc51a21df Remove DwmFlush() 2023-08-27 13:13:43 -05:00
Cameron Gutman
ebb6a7c9a9
Specify the source address for outbound audio and video traffic (#1569) 2023-08-26 16:37:04 -05:00
Cameron Gutman
ef2279d627 Allow the display to reject unsupported codecs 2023-08-26 12:38:24 -05:00
ns6089
cea9f152d8 Add log message for audio capture buffer oveflow 2023-08-22 23:27:14 -05:00
ns6089
2c44c4dbd2 Add log message for audio buffer discontinuity 2023-08-22 23:27:14 -05:00
ns6089
3ceee008f3 Use MMCSS task in audio capture thread 2023-08-22 23:27:14 -05:00
Cameron Gutman
190c9b4216 Move AMF version check into display_vram_t to avoid blocking software encoding 2023-08-19 18:36:48 -05:00
Elia Zammuto
a84dea3862
Windows Manifest improvements (#1557)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-08-19 14:06:35 -04:00
Cameron Gutman
22ab9948fa Pass the environment as a const reference so nobody else is tempted to modify it 2023-08-16 21:48:16 -05:00
Cameron Gutman
774f13aecb Fix race condition inserting new process into our job object
Before this fix, it could spawn a child that would escape our tracking if it ran before we added it to our job object.
2023-08-16 21:48:16 -05:00
Chase Payne
980e396c4f
Command Resource Exhaustion bug fix (#1531)
Co-authored-by: kirksaunders <kirksaunders12@gmail.com>
2023-08-14 19:50:23 -04:00
ns6089
def9b2d76f Add missing software device creation override 2023-08-13 15:15:32 -05:00
ns6089
6c5fa8a08d Mark nvapi_QueryInterface as cdecl
Shouldn't matter on x64 since everything is fastcall here, but cdecl is
the correct declaration.
2023-08-13 07:01:09 -05:00
ns6089
68fa43a61c Add standalone NVENC encoder 2023-08-13 07:01:09 -05:00
Cameron Gutman
4186d83027 Disable HDR encoding for AMF versions below 1.4.23 2023-08-11 18:27:39 -05:00
Cameron Gutman
21dbde9467 Fix touch input on UAC secure desktop and login screen 2023-08-03 23:04:13 -05:00
Cameron Gutman
d7c76cfd2b Update gamepad touch support with latest protocol changes 2023-08-03 19:16:09 -05:00
Cameron Gutman
bd68aebe4c Implement pen and touch support for Windows 2023-08-03 19:16:09 -05:00
Cameron Gutman
f3a257b150 Fix QoS code build with new MinGW headers 2023-07-30 16:35:24 -04:00
Cameron Gutman
d07f5dbd1b Fix audio code build with new MinGW headers 2023-07-30 16:35:24 -04:00
ns6089
f245f777f7 Modify and restore NVIDIA control panel settings
Namely:
- Power profile for sunshine.exe
- Global OpenGL/Vulkan DXGI swapchain
2023-07-19 01:14:08 -05:00
Cameron Gutman
50f353d183 Fix handling of gamepad feedback with multiple clients connected
We need to use the client-relative index rather than the global index
when sending feedback to the client.
2023-07-10 21:45:37 -05:00
Cameron Gutman
3acc7ef557 Remove unused variable 2023-07-10 21:45:37 -05:00
Cameron Gutman
2ed2dd5e0e Implement touch, motion, and battery for DS4 2023-07-10 21:45:37 -05:00
Cameron Gutman
309fcc4142 Convert rumble_queue into a generic feedback_queue for gamepad messages 2023-07-10 21:45:37 -05:00
Cameron Gutman
fd77230964 Stub controller battery, touch, and motion packets 2023-07-10 21:45:37 -05:00
Cameron Gutman
1ef8cb1111 Send feature flags in RTSP DESCRIBE response 2023-07-10 21:45:37 -05:00
ns6089
6dfe56518c Decrease gpu scheduling priority for NVIDIA
Fixes #1031
2023-07-09 18:50:10 -05:00
Cameron Gutman
c5bf78176e Remove GetAsyncKeyState() check before sending mouse button events
It's unnecessary and breaks in cases where event processing is slow

Fixes #1433
2023-07-08 22:58:12 -05:00
jcj83429
d075424225 Add support for Applications (context menu) key in the Windows platform
I will add corresponding support in moonlight-qt.
2023-07-08 21:21:18 -05:00
Casey Korver
881af5b566 Correct typos in logging 2023-07-08 19:56:56 -05:00
Casey Korver
b1ffa8a6c5 Correct typos in comments 2023-07-08 18:56:27 -05:00
Cameron Gutman
70dc582f38 Refactor gamepad emulation code to use the DS4 extended report format
This has the side-effect of fixing #1407 due to the incorrect assumption that
it's safe to cast our gamepad_state_t to a XUSB_REPORT.
2023-07-08 11:34:16 -05:00
Cameron Gutman
11aedf56a2 Implement controller arrival metadata support 2023-06-30 20:47:29 -05:00
Cameron Gutman
12e6774035 Fix max gamepad count to match protocol limitation 2023-06-27 21:11:19 -05:00
Cameron Gutman
feedede6f9 Implement extended controller button support 2023-06-27 21:11:19 -05:00