ns6089
bfdfcebc80
feat(win/video): support native YUV 4:4:4 encoding ( #2533 )
2024-08-16 13:41:27 -04:00
Insanemal
c246c78b13
fix(linux): ensure NvFBC capture works after multiple sessions ( #3020 )
2024-08-15 21:30:00 -04:00
ns6089
f9c885a414
fix(linux/audio): don't set pulseaudio buffer size ( #2999 )
2024-08-09 20:29:17 +00:00
ns6089
adf068e44e
fix(windows): properly break on the first matching DXGI output ( #2962 )
2024-08-04 22:40:28 +00: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
Cameron Gutman
5f715d66cd
fix(linux/input): don't pass unknown battery values ( #2820 )
2024-07-14 18:11:29 +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
Christos Falas
8187a28afc
fix(linux/input): handle pen EVENT_MOVE events ( #2841 )
2024-07-13 19:53:06 +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
Cameron Gutman
38c13c8fe1
Fix rate control for AMD cards using VAAPI ( #2821 )
2024-07-08 15:05:35 +00:00
Cathy J. Fitzpatrick
3cc12dfbe7
macOS: New implementation of service publication ( #2786 )
...
The current implementation of service publication on macOS uses
`avahi-client`, but the majority of macOS machines do not have Avahi
installed because macOS provides a native alternative (`mDNSresponder`),
meaning that there is no reason to install Avahi.
The current implementation also attempts to load the Avahi client
libraries using `dlopen(3)`, which has a variety of restrictions on
macOS, such as only being willing to load from certain directories.
Depending on where the Avahi binaries are installed, they might not
be loadable through the current invocation of `dlopen(3)`.
Instead of using an Avahi client on macOS, it makes more sense to use
the native macOS API for publishing services via `mDNSresponder`. This
commit supplies such an implementation that uses the macOS native API.
It also has the advantage of being much simpler than the previous
implementation. Furthermore, this new implementation works on all
macOS machines, because it relies only on native APIs, rather than on
third-party software that is not commonly installed on macOS.
2024-07-07 15:19:51 +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
ReenigneArcher
9a82b6810a
docs: fix ffmpeg include directory ( #2727 )
2024-06-19 02:54:35 +00:00
ABeltramo
fb18b38f68
fix(linux/input): battery values conversion ( #2715 )
2024-06-17 22:37:48 +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
Hans Gaiser
9afb1aea00
Remove the need for a patched nvidia library for NvFBC. ( #2471 )
2024-06-01 19:30:42 +00:00
Tejas Rao
287ac4c0fb
feat(win): new capture method, Windows.Graphics.Capture ( #2580 )
2024-05-27 18:16:14 +00:00
Vithorio Polten
ff54ab2852
fix(macos): fix broken streaming on MacOS ( #2485 )
2024-05-14 14:14:40 -04:00
Gilles Schintgen
0a595dc7d2
fix(linux): add frame processing latency and logging improvements ( #2502 )
2024-05-12 18:55:43 -04:00
TimmyOVO
9d5ee2f57d
fix(macos/input): incorrect mouse input for non-main display ( #2461 )
2024-05-02 13:52:29 -04:00
Tejas Rao
7fb8c76590
Use C++20. ( #2322 )
2024-04-26 15:49:15 -04:00
TimmyOVO
9288775351
feat(macos/capture): support for capture display other than main display ( #2449 )
2024-04-22 14:16:26 -04:00
Cameron Gutman
25d8e2b478
Fix discarded std::clamp() result compiler warning
2024-04-13 18:53:00 -05:00
Gilles Schintgen
fcd4c07bd0
Improve frametiming for linux capture ( #2333 )
2024-04-12 19:36:56 -04:00
ReenigneArcher
ad5b816261
fix(linux): use correct setap command in logs ( #2400 )
2024-04-10 18:12:03 -04:00
hdL6c
7f795f0e19
fix(linux/capture): fix logical comparison of texture size ( #2349 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2024-04-06 18:03:54 -04:00
ReenigneArcher
2af0ce364d
Revert "Add capture using WinRT Windows.Graphics.Capture API." ( #2320 )
2024-03-29 12:43:44 -04:00
KuleRucket
526121d81d
Populate host latency for kms/x11 grab ( #2273 )
2024-03-28 17:52:53 -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
15c5e76ed4
Use a copy+delete instead of a move operation for config migration
...
This can handle migration across filesystems.
2024-03-15 01:59:13 -05:00
Cameron Gutman
8c9e14e335
Only attempt a config migration once per launch
2024-03-15 01:59:13 -05:00
Cameron Gutman
aa1985dec8
Avoid calling Boost logging functions in appdata()
...
The app data directory is needed prior to logging initialization.
2024-03-15 01:59:13 -05:00
Cameron Gutman
f66a7d5da6
Fix dereferencing a null pointer if SUNSHINE_MIGRATE_CONFIG doesn't exist
2024-03-15 01:59:13 -05:00
Cameron Gutman
c13a30db78
Allow NVENC to be forced to try capturing non-Nvidia GPUs
2024-03-13 01:23:47 -05:00
Cameron Gutman
d8877982ff
Improve KMS debuggability and avoid known broken cases
2024-03-13 01:23:47 -05:00
Cameron Gutman
91744960c1
Avoid broken fallback to cross-adapter NVENC encoding with KMS
2024-03-11 19:02:16 -05:00
ReenigneArcher
a2785baf0a
fix(linux): automatically migrate config directory ( #2240 )
2024-03-10 22:03:20 -04:00
Cameron Gutman
ce3b625983
Fix undefined behavior when computing cursor end pointer
2024-03-08 23:48:57 -06: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
9f94eebd32
Fix mismatched case and unhandled exception in open_drm_fd_for_cuda_device()
2024-03-05 00:07:04 -06:00