Commit Graph

179 Commits

Author SHA1 Message Date
Yukino Song
bd69b78f44 Merge remote-tracking branch 'origin/master' 2024-08-07 22:56:18 +08:00
Yukino Song
ef3dc6464c Further rebrand 2024-08-05 07:03:17 +08:00
ns6089
adf068e44e fix(windows): properly break on the first matching DXGI output (#2962) 2024-08-04 22:40:28 +00:00
Yukino Song
774ce93162 Try to make the audio sink mess clear 2024-08-04 19:11:58 +08:00
ns6089
f4dda21248 Migrate audio pipeline to float from 16-bit integer (#2873)
Co-authored-by: Cameron Gutman <aicommander@gmail.com>
2024-07-25 21:01:43 -04:00
Cameron Gutman
0ca560ced8 Fix invalid parameter passed to WSASendMsg() (#2890)
The third parameter is for flags, not number of messages.
2024-07-19 08:39:37 +00:00
Cameron Gutman
3935d305ae Implement S/G IO for batched sends and eliminate another frame copy (#2874) 2024-07-19 04:04:18 +00:00
Cameron Gutman
81c6e61594 Implement S/G IO for non-batched sends and eliminate more data copies (#2867) 2024-07-18 02:34:56 +00:00
ns6089
18e7dfb190 Refactor periodic loggers and limit batch size for small packets (#2835)
* Refactor periodic loggers

* Limit network batch size also by packet count

Previously it was limited only by size, and exceeding 64 packets in a
single batch is asking for problems.
2024-07-13 20:55:03 +00:00
ns6089
037c61dc99 Implement basic network flow control (#2803)
Co-authored-by: Cameron Gutman <aicommander@gmail.com>
2024-07-11 00:03:16 +00:00
ns6089
30748dd916 Check API before trying to disable border on WGC capture (#2825) 2024-07-10 12:14:17 +00:00
ReenigneArcher
1dd4b68e1c docs(src): add examples alias and general cleanup (#2763) 2024-06-28 08:34:14 -04:00
ReenigneArcher
acd9ae606e docs: more doxygen fixes (#2736) 2024-06-21 01:34:27 +00:00
ReenigneArcher
f3abf59fbf docs(src): fix some doxygen warnings (#2731) 2024-06-20 01:36:09 +00:00
Vithorio Polten
509576d616 feat(input/linux): add support for more virtual input devices (#2606)
Co-authored-by: ABeltramo <beltramo.ale@gmail.com>
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2024-06-16 00:21:18 +00:00
Vithorio Polten
02ddbefd44 fix(macos): Mouse input broken in-game (#2550)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2024-06-12 17:26:02 -04:00
Tejas Rao
287ac4c0fb feat(win): new capture method, Windows.Graphics.Capture (#2580) 2024-05-27 18:16:14 +00:00
Tejas Rao
7fb8c76590 Use C++20. (#2322) 2024-04-26 15:49:15 -04:00
Gilles Schintgen
fcd4c07bd0 Improve frametiming for linux capture (#2333) 2024-04-12 19:36:56 -04:00
ReenigneArcher
2af0ce364d Revert "Add capture using WinRT Windows.Graphics.Capture API." (#2320) 2024-03-29 12:43:44 -04:00
Tejas Rao
8f1692a5ac Add capture using WinRT Windows.Graphics.Capture API. (#2149)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2024-03-27 23:47:26 -04:00
ReenigneArcher
89e8b9628c ci(tests): add test framework (#1603) 2024-03-24 19:52:24 -04:00
Cameron Gutman
7cdd156bce Fix heap corruption with cursor pixel counts that aren't divisible by 8 2024-03-07 19:01:36 -06:00
Cameron Gutman
06c0ed1d1c Temporarily add the working directory to our path when starting an app
CreateProcess() doesn't search in the child's specified working directory by default.
2024-03-07 18:14:28 -06:00
Cameron Gutman
6aeaaf5ec9 Fix process tree tracking when the cmd.exe trampoline is used 2024-03-07 18:14:28 -06:00
Cameron Gutman
75a97883e7 Rework dummy image handling to avoid RTX HDR driver bug
As a side effect, it avoids useless allocations and uploads of
a zeroed memory buffer to clear the dummy image textures.
2024-03-01 01:09:10 -06:00
Cameron Gutman
a0d5973799 Avoid display switching unexpectedly when the UAC secure desktop appears 2024-02-27 23:12:31 -06:00
Cameron Gutman
83e3ea5aa7 Use a common function to abort for debugging purposes 2024-02-27 21:21:16 -06:00
Cameron Gutman
56da68c863 Preserve backwards-compatible argument escaping behavior for executables 2024-02-15 18:29:33 -06:00
Cameron Gutman
6ddc4b7ba3 Properly re-escape arguments when processing %* 2024-02-15 18:29:33 -06:00
Cameron Gutman
69a3edd9b0 Use Win32 APIs for UTF-16<->UTF-8 conversion
std::codecvt is deprecated since C++17 and broken for some characters/locales
2024-02-12 18:43:44 -06:00
ReenigneArcher
8689469ea8 refactor(main): move remaining entry related code (#2127) 2024-02-11 14:15:45 -05:00
Cameron Gutman
78ed91af5c Treat escape sequences like other replacements 2024-02-10 09:52:35 -06:00
Cameron Gutman
c0ad9639c4 Fix spacing of multi-argument %* substitutions 2024-02-10 09:52:35 -06:00
Cameron Gutman
11c8cf176c Simplify and fix handling of incomplete substitution strings 2024-02-10 09:52:35 -06:00
ReenigneArcher
1c50bc502b refactor(main): move map_port to network (#2115) 2024-02-09 09:15:47 -05:00
Cameron Gutman
aa76b2398b Add support for starting URLs and regular files that aren't executable
This provides some limited ShellExecute-like behavior.
2024-02-08 01:59:40 -06:00
ReenigneArcher
0aa4f06c39 refactor(logging): separate logging from main (#2110) 2024-02-07 09:59:24 -05:00
Cameron Gutman
ff8c8ce3ab Skip encoder reprobing if no GPU changes have occurred 2024-02-06 20:00:24 -06:00
Cameron Gutman
5c9533f6d7 Allow DSCP tagging and local traffic prioritization to be enabled separately on Mac and Linux 2024-02-02 18:30:48 -06:00
Cameron Gutman
fe8b0bad92 Implement workaround for qWAVE issues handling IPv4-mapped IPv6 addresses 2024-02-02 18:30:48 -06:00
ns6089
66150872b0 Add nvprefs user override options 2024-01-20 18:28:09 -06:00
Lukas Senionis
bf1b9a20ec Add a dedicated library for working with JSON (#2047) 2024-01-20 17:05:35 -05:00
Cameron Gutman
404b434754 Fix starvation of encoder thread when not receiving new captured frames
This often happens when switching to the UAC secure desktop.
2024-01-18 19:14:45 -06:00
Cameron Gutman
f64712f277 Always reset the thread desktop before calling DuplicateOutput()
Otherwise capture will fail if the thread desktop is different than the current input desktop (ex: UAC secure desktop is active)
2024-01-18 19:14:45 -06:00
Cameron Gutman
593e170da8 Implement graceful termination and group-based app tracking 2024-01-08 23:55:43 -06:00
Cameron Gutman
e7a3c485ee Only keep the ViGEmBus connection alive while gamepads are attached 2024-01-02 19:32:19 -06:00
Cameron Gutman
3ca75bee19 Add option to disable native pen/touch support 2024-01-01 19:53:57 -06:00
Cameron Gutman
6ea836c511 Add options to control gamepad autoselection heuristics
Also move gamepad type selection to the input tab while we're here
2024-01-01 19:53:57 -06:00
Cameron Gutman
11d472362c Print a fatal warning for lack of ViGEmBus
While this is not technically fatal, it's almost certainly not what the user wants.
2023-12-29 23:01:28 -06:00