Commit Graph

333 Commits

Author SHA1 Message Date
ns6089
ae7ae8a870 Raise capture buffer normal size to 2
Temporal measure until dynamic resize is merged.
2023-04-11 18:17:48 -05:00
ns6089
eed27d3c0a Decrease normal capture buffer to single image 2023-04-11 18:17:48 -05:00
Cameron Gutman
a9b7fd7fa3 Remove useless Flush() call 2023-04-08 20:36:23 -05:00
ns6089
abf4ab42a0 Don't zero-initialize non-dummy textures 2023-04-08 19:41:22 -05:00
aseligmann
0e92bdd29c Use DS4_BUTTON_SHARE as BACK action 2023-04-08 16:27:48 -05:00
Cameron Gutman
036aa2e470 Free dummy images when they are no longer needed 2023-04-08 15:15:02 -05:00
Cameron Gutman
bd443395c6 Don't test HDR encoding with H.264
It doesn't work on any GPU, and even if it did, Moonlight doesn't support it.
2023-04-06 22:37:05 -05:00
Cameron Gutman
f04d5e12de Combine the separate HDR and SDR capture formats
Since we support multi-encoding from a single display context, we have
to ensure our capture format allows for HDR color even if the initial
encoding session is SDR.
2023-04-06 22:37:05 -05:00
ns6089
290c9b3e20
Fix compilation on macOS (#1132) 2023-04-05 20:54:49 -05:00
ReenigneArcher
809d7f9d0e
config: fix 4K resolution typo (#1139) 2023-04-05 10:12:02 -04:00
KuleRucket
cd2fe18140
Hotfix - keep platform guard in scope (#1104)
Co-authored-by: KuleRucket <luke.d.tucker@gmail.com>
2023-03-30 08:06:19 -04:00
KuleRucket
70674325ba
Fix system tray Open Sunshine (#1095)
Co-authored-by: KuleRucket <luke.d.tucker@gmail.com>
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-03-28 18:51:10 -04:00
KuleRucket
57a722a3fb
Continue in the face of failure (#1094)
Co-authored-by: KuleRucket <luke.d.tucker@gmail.com>
2023-03-28 17:54:46 -04:00
luk1337
1ab1b7920e
Don't skip disconnected X11 outputs (#1071) 2023-03-28 16:44:32 -04:00
luk1337
648df66b98
Fix X11 fallback during init (#1087) 2023-03-28 10:01:11 -04:00
ReenigneArcher
21eb4eb6dd
clang: adjust formatting rules (#1015) 2023-03-27 21:45:29 -04:00
ReenigneArcher
014ca7e8a1
commands: fix prep commands when empty (#1083) 2023-03-27 16:46:25 -04:00
pgrunzjr
8c86baf627
Add support for global prep commands (#977) 2023-03-27 12:02:20 -04:00
Chase Payne
c2fba6f651
Add Support for Safely Elevating Administrator Privileges (#1036) 2023-03-27 10:51:48 -04:00
pgrunzjr
6a914f7016
Execute do/undo commands non-elevated (#1022) 2023-03-27 10:15:35 -04:00
KuleRucket
a487fb31ea
Fix compiler warnings due to deprecated elements in C++17 (#1077)
Co-authored-by: KuleRucket <luke.d.tucker@gmail.com>
2023-03-25 21:52:46 -04:00
KuleRucket
c6548f4271
Provide ability to force a capture method via configuration. (#1063)
Co-authored-by: KuleRucket <luke.d.tucker@gmail.com>
2023-03-25 21:26:28 -04:00
luk1337
455155a1c9
Add missing <string> include (#1057) 2023-03-24 19:37:06 -04:00
ReenigneArcher
e20ca7a8f0
tray-icon: execute as user (#1046) 2023-03-17 08:59:13 -04:00
ReenigneArcher
014d693112
add tray icon (#1035) 2023-03-15 16:30:18 -04:00
Mark Dietzer
fbe5e2486f
Fix startup when /dev/dri doesn't exist (#1027) 2023-03-11 10:27:07 -05:00
Brian Kendall
80aa61b6e4
Support compiling for earlier releases of macOS (#960) 2023-03-10 09:53:29 -05:00
ReenigneArcher
6d54356166
logging: change client verified messages to debug (#1020) 2023-03-10 09:05:52 -05:00
Elia Zammuto
c29c917474
Versioning improvements (#768)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-03-09 18:13:57 -05:00
ReenigneArcher
889b93da2d
input: invert default config settings (#1017) 2023-03-08 21:44:11 -05:00
Mathias Tillman
c3f3e1606d
Fix linux clang build errors (#879)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-03-08 18:05:38 -05:00
Mark Dietzer
8227e8f8e5
Add XTest input fallback (#997) 2023-03-08 09:26:06 -05:00
ABeltramo
7d01b50498
feat: implemented unicode input mode (#966)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-03-08 08:35:34 -05:00
Brian Kendall
f238cf5303
Add setting for suppressing input from mouse, keyboard, or gamepads (#941) 2023-03-08 07:47:19 -05:00
ReenigneArcher
31885434f2
docs: add doxygen (#1004) 2023-03-07 20:26:03 -05:00
Conn O'Griofa
845749d525
windows: input: activate US keyboard layout for scancode mapping (#975) 2023-02-25 14:08:42 -05:00
Conn O'Griofa
55a225d21c
AMF: add missing encoder tunables (#902) 2023-02-13 09:23:29 -05:00
ReenigneArcher
a21e231cae
web: api: add mimes type map (#890) 2023-02-08 21:35:02 -05:00
Conn O'Griofa
1b45b57d07
Linux/VAAPI: implement vaSyncBuffer stub for libva <2.9.0 (#886) 2023-02-07 16:02:42 -05:00
Grider
d2461e1908
Fix wayland capture on nvidia for kms (#884) 2023-02-05 18:41:35 -05:00
Cameron Gutman
592f3a70a3
Display initialization and frame ownership fixes (#850) 2023-01-28 23:15:37 -06:00
Cameron Gutman
a3e2c4fa31
Free AVFrame before calling eglTerminate() (#842) 2023-01-27 09:21:05 -06:00
Conn O'Griofa
8b507d2b30
Fix image leak of hardware parallel encoder on display reinit (#823) 2023-01-26 12:12:49 -05:00
manteuffel723
0698210ce1
Fix Error: Couldn't import RGB Image: 00003002 and 00003004 (#761) 2023-01-26 11:23:44 -05:00
Cameron Gutman
bcd5188ac5
Implement HDR support for Windows (#825) 2023-01-25 19:48:55 -06:00
Jari
1f2ad8da00
Scrub basic auth header from logs (#834) 2023-01-25 19:14:59 -05:00
Jari
35b660851c
Fix SimpleWeb arbitrary file read vulnurability (#829) 2023-01-25 16:26:41 -05:00
Jari
d625dda4ea
Steam Deck Gamingmode fix (#711) 2023-01-24 20:47:52 -06:00
Cameron Gutman
9181028bcf
HDR prep work (#808) 2023-01-23 20:54:08 -06:00
Cameron Gutman
4b642f6e01
Implement horizontal scrolling and Sunshine detection for Moonlight (#793) 2023-01-21 17:42:08 -06:00
Cameron Gutman
da390c37db
Improve reliability of hybrid graphics detection (#801) 2023-01-20 22:12:16 -06:00
Lukas Senionis
c81aa99c38
Fix child process spawning on linux (#773) 2023-01-19 00:40:12 -06:00
Cameron Gutman
c4c0413f9e
Fix streaming to multiple clients from hardware encoder on Windows (#798) 2023-01-18 07:47:00 -06:00
Cameron Gutman
49fc618682
Add support for hybrid graphics systems (NVIDIA Optimus) (#782) 2023-01-17 23:55:44 -06:00
Cameron Gutman
1fbbab9df7
QSV performance optimization and HEVC hang fix (#786) 2023-01-17 18:12:14 -06:00
Cameron Gutman
7f6383833c
Replace frame capture busy loop with waitable timer (#778) 2023-01-17 09:09:15 -05:00
KuleRucket
4ef97c755a
Fix multi-character character constant compiler warning (#765)
Co-authored-by: KuleRucket <luke.d.tucker@gmail.com>
2023-01-16 22:19:26 -05:00
Cameron Gutman
fa14b6ead7
Network performance optimizations (#771) 2023-01-16 18:17:04 -05:00
Cameron Gutman
9fe539f87d
Avoid redundant padding fills in display_vram_t::convert() (#763) 2023-01-14 20:14:55 -05:00
Cameron Gutman
4fc444b5b3
Intel QuickSync support for Windows (#758) 2023-01-14 16:23:49 -05:00
Cameron Gutman
5480d3d59d
Switch to faster nanors Reed-Solomon implementation (#753) 2023-01-14 09:45:12 -05:00
Cameron Gutman
696a11942c
Enforce 10 FPS encoding frame rate floor to improve static image quality (#754) 2023-01-11 11:02:53 -05:00
Cameron Gutman
44ad28ebf4
Fix a reference leak of hw_frames_ctx and prepare for QSV (#736) 2023-01-10 14:52:15 -05:00
Tony Langhammer
5477f58f18
Move the check for UPnP enabled up to avoid error messages (#748) 2023-01-10 13:25:16 -05:00
Cameron Gutman
6607062648
Fix divisor for YUV range (#728) 2023-01-08 09:04:07 -05:00
Cameron Gutman
77d3a7e2ab
Color conversion fixes and BT.2020 support (#723) 2023-01-07 22:28:47 -05:00
Cameron Gutman
7770b5f708
Enable Mouse Keys while streaming for systems with no mouse plugged in (#721) 2023-01-07 15:11:14 -05:00
Cameron Gutman
e2fce257b5
Fix Windows masked cursor blending with GPU encoders (#720) 2023-01-07 14:25:02 -05:00
Cameron Gutman
c95f54f874
Migrate Windows config files into specific config directory (#716) 2023-01-07 13:34:06 -05:00
Brad Richardson
9b6d0b7a06
Generated app id with hashed input data (#715) 2023-01-07 09:42:40 -05:00
Cameron Gutman
65574a02d4
Add an Apply button to the Web UI when running as a Win32 Service (#700) 2023-01-05 14:26:54 -05:00
Cameron Gutman
5980e520b9
Improve robustness of encoder selection (#710) 2023-01-05 12:28:40 -05:00
Cameron Gutman
00aa23b342
Fix hang on stream termination if no frames can be captured (#709) 2023-01-05 11:21:38 -05:00
Cameron Gutman
f1c225fccc
Terminate Sunshine if a session doesn't terminate for more than 10 seconds (#707) 2023-01-05 09:05:25 -05:00
Cameron Gutman
c72aeef67b
Only increase rc_buffer_size when software encoding with more than one slice (#692) 2023-01-04 11:50:36 -05:00
Cameron Gutman
76896eba88
Fix NVENC profile values not applying (#695) 2023-01-04 11:18:28 -05:00
Cameron Gutman
1c1a7fa8c0
Fix 7.1 surround channel mapping (#694) 2023-01-04 10:08:33 -05:00
Jackson Garner
ff883058e6
Fix wayland capture on nvidia (#649) 2023-01-04 09:13:09 -05:00
Cameron Gutman
cc688c7845
Implement process and thread priority adjustments (#691) 2023-01-03 22:05:00 -05:00
Tony Langhammer
30a790ba40
Fix UPnP IGD detection (#689) 2023-01-03 16:09:07 -05:00
Brad Richardson
052297a1a5
Update app id on edit (#670)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-01-02 21:02:10 -05:00
Cameron Gutman
0439d7a83a
Use separate encoding and capture devices to enable parallel encoding and capture (#668) 2023-01-02 15:56:58 -05:00
Cameron Gutman
76ffa2a0b5
Fix unexpected format switching in display_vram (#667) 2023-01-02 12:11:45 -05:00
ReenigneArcher
f9963ed39b
update clang-format (#666) 2023-01-02 11:17:02 -05:00
Elia Zammuto
a5213c6225
Logs inside the WebUI (#634) 2022-12-31 20:12:36 -05:00
Cameron Gutman
248b1bfa19
Fix launching apps when Sunshine is running as admin (#659) 2022-12-31 19:05:22 -05:00
Cameron Gutman
0c6d0edacf
Dynamic capture format selection (IDXGIOutput5) (#654)
Co-authored-by: Conn O'Griofa <connogriofa@gmail.com>
2022-12-31 17:38:29 -05:00
Cameron Gutman
03b62730ae
Convert keyboard input to scancodes using the US English layout (#651) 2022-12-30 13:30:11 -05:00
ReenigneArcher
8aaf9fd141
remove automatic desktop entry (#652) 2022-12-30 09:31:50 -05:00
Cameron Gutman
e00aa4f0f3 Make log priority consistent for execution messages 2022-12-29 12:47:44 -06:00
Cameron Gutman
a95a553970 Remove prompt to press enter after Sunshine exits 2022-12-29 12:47:20 -06:00
Cameron Gutman
d6db10afb4
Remove/fix calls to std::abort() (#648) 2022-12-29 11:09:11 -05:00
Cameron Gutman
8ad7af86c0
Graceful termination on shutdown, logoff, and service stop (#647) 2022-12-29 09:32:23 -05:00
Cameron Gutman
a996902a33
Generate certificates with unique serial numbers (#645) 2022-12-28 14:03:41 -05:00
Cameron Gutman
f4a48f44e4
Rework audio bitrate and quality handling (#642) 2022-12-28 09:30:51 -05:00
Cameron Gutman
c7fe8f65bd
windows: Fix audio when host is not using 48 KHz sample rate (#640) 2022-12-28 08:53:58 -05:00
Conn O'Griofa
215c86455f
nvenc, amdvce: rework all user presets/options (#623) 2022-12-27 21:27:47 -05:00
Cameron Gutman
05f5370efe
Launch games under the correct user account on Windows (#600) 2022-12-27 15:52:41 -05:00
Conn O'Griofa
c0b042fa8a
windows/vram: fix fringing in NV12 colour conversion (#622) 2022-12-27 11:05:57 -05:00
Brad Richardson
95437d15f3
FFmpeg 5 and pre-built CBS (#509) 2022-12-27 09:13:54 -05:00
Cameron Gutman
1e037db7bd
Fix pixel pitch handling for DXGI_FORMAT_R16G16B16A16_FLOAT (#605) 2022-12-22 21:58:39 -05:00
Cameron Gutman
bb092c0723
Fix streaming with non-B8G8R8A8 desktop mode (#609) 2022-12-22 20:48:31 -05:00
Cameron Gutman
dfb8d9d87f Fix PATH environment variable handling on Windows
PATH needs to be matched case-insensitively on Windows or we will just clobber the pre-existing PATH
2022-12-21 09:48:30 -06:00
dependabot[bot]
66f1ac664a
Bump third-party/miniupnp from 6f848ae to 207cf44 (#557)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2022-12-16 18:48:09 -05:00
Cameron Gutman
633f0035c2
Send a valid PTS in the RTP video header (#529) 2022-12-16 15:56:44 -05:00
Cameron Gutman
66f46ab341
Send valid frame type value in frame header (#516) 2022-12-16 14:53:34 -05:00
Cameron Gutman
f4edce318c
Avoid using functions deprecated in OpenSSL 3.0 (#515) 2022-12-15 21:21:57 -05:00
Conn O'Griofa
a54830cf39
video: vaapi: reduce async_depth to 1 (#545) 2022-12-15 20:37:55 -05:00
Cameron Gutman
5e6a42abb2
Migrate to upstream Simple-Web-Server submodule (#517) 2022-12-15 15:32:31 -05:00
Conn O'Griofa
3fd38b3a2e
video: reduce nvenc delay/async_depth to 0 (#507) 2022-12-15 14:18:11 -05:00
Conn O'Griofa
cb406bce06
Video: revert software bitrate change & use more conservative bufsize (#482) 2022-12-15 13:12:25 -05:00
Conn O'Griofa
a4a5d30603
AMD encoder improvements (#480) 2022-12-15 11:23:59 -05:00
Cameron Gutman
e39d9bc662 Add support for Unicode input messages on Windows 2022-11-23 21:45:26 -06:00
Cameron Gutman
d912cce5ba Update moonlight-common-c to pick up new input structures 2022-11-23 21:45:26 -06:00
ReenigneArcher
981d878082
use npm dependencies 2022-11-19 12:58:29 -05:00
Mariotaku
01b8ba353a
Cover Finder (#216)
Adds functionality to search and add game cover images automatically.

Co-authored-by: Conn O'Griofa <connogriofa@gmail.com>
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2022-11-18 11:07:22 -05:00
ReenigneArcher
3ee511cabb
Merge branch 'nightly' into nightly 2022-10-26 16:19:05 -04:00
ReenigneArcher
b484060831
Merge branch 'nightly' into master 2022-10-26 15:35:47 -04:00
ReenigneArcher
b4703efbef
Merge branch 'nightly' into fix/image-paths 2022-10-16 08:44:15 -04:00
ReenigneArcher
264c9272df
fix string concatenation of image in assets dir 2022-10-15 20:04:40 -04:00
w0utert
79ce11fe72
Merge branch 'nightly' into nightly 2022-10-13 22:08:20 +02:00
Wouter Bijlsma
7f53388304 Fix CUDA RGBA to NV12 conversion
On linux hosts with Nvidia GPU and CUDA support enabled, a CUDA kernel
is used to convert captured RGBA frames to NV12 before encoding. This
kernel contained a bug affecting image quality, in particular when
rendering high-contrast colored text and sharp lines. See [1] for more
information.

This commit fixes the format conversion kernel by taking 2x2 RGBA blocks
to generate 4 luma (Y) values and 1 chroma (UV) pair, ie: 12 bits per
pixel YUV420 (NV12). Previous code incorrectly generated 1 UV pair for
every 2 pixels.

[1] https://github.com/LizardByte/Sunshine/issues/154
2022-10-10 21:39:58 +02:00
Michael Rogers
cf6107971d
Merge branch 'nightly' into no-sink-path-rebased 2022-09-16 11:54:02 -05:00
Michael Rogers
62af7d255c Clang Format Applied 2022-09-16 11:47:10 -05:00
Michael Rogers
d4a4096bba Added some sanity checks for no sink being detected. 2022-09-16 11:46:41 -05:00
ReenigneArcher
5e5ae0b4b8
Merge branch 'nightly' into fix/image-paths 2022-09-11 20:35:24 -04:00
ReenigneArcher
58ed5ba3ce
fix typos and comment formatting 2022-08-28 16:42:00 -04:00
ReenigneArcher
b3a1615170
fix image paths 2022-08-26 19:40:53 -04:00
Jack Brown
977a4d3d4a Add dma import modifiers EGL ext 2022-08-26 18:20:49 -04:00
ReenigneArcher
6980ee36b3
fix windows install extra commands and...
- prompt to remove install directory on uninstall
- delete start menu icons on uninstall
- create appdata folder if it doesn't exist
2022-08-20 22:18:25 -04:00
ReenigneArcher
8b0e6a28c2
single AppImage file
- simplify cmake install prefix and assets directory
2022-08-14 18:29:05 -04:00
ReenigneArcher
30c178baa1
move default configs to assets directory 2022-08-12 16:00:19 -04:00
ReenigneArcher
a4acaf15b0
move sunshine to src
- this will allow for common cpp workflow files within org
2022-08-07 23:37:57 -04:00