Commit Graph

589 Commits

Author SHA1 Message Date
Cameron Gutman a4f788f853 Replace Win32 UTF-16 conversion with std::wstring_convert
Removes VLA that upsets Clang and MSVC
2023-05-11 20:52:44 -05:00
Cameron Gutman 1c83a44222 Fix const reference and const pointer types in wrap_ptr
They were const refs to a T rather than a ref to a const T.
2023-05-11 20:52:44 -05:00
istori1 9e23b39634 Add NO_RC_BUF_LIMIT vaapi 2023-05-11 18:59:13 -05:00
Cameron Gutman 71dcef8259 Fix systray icon sometimes not appearing after login 2023-05-11 18:32:33 -05:00
Cameron Gutman 53125ffeca Add support for installing the Steam Streaming Speakers driver (#1262)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-05-09 20:02:28 -05:00
Cameron Gutman 4ae412b219 Allow localAudioPlayMode to change on /resume
Newer clients send all /launch parameters to /resume too
2023-05-08 18:57:55 -05:00
Cameron Gutman 66989a4690 Set the default back to the virtual sink if it's changed
Fixes #976
2023-05-08 18:57:55 -05:00
Cameron Gutman bc392093a3 Reinitialize capture if the default audio device changes
We already reinitialized if the default device was removed, but we didn't in the case a new default device was set without removing the old one.
2023-05-08 18:57:55 -05:00
Cameron Gutman ccdc882c13 Fix pessimising move warning with GCC 13.1 2023-05-08 18:57:55 -05:00
ReenigneArcher 4ca6dc6c8e docs: update file level doxygen blocks (#1258) 2023-05-07 18:12:39 -04:00
ReenigneArcher 979f7f4e60 docs: improvements to source code documentation (#1236) 2023-05-07 15:01:44 -04:00
Cameron Gutman 97f18d6353 Fix audio capture reinitialization
We returned instead of continuing, so audio never worked after reinit.

We also had no retry logic if no audio device was available.
2023-05-07 11:52:57 -05:00
Cameron Gutman 86c854ce97 Allow streaming even if no audio sink is available 2023-05-07 11:52:57 -05:00
Cameron Gutman 1d6ea8c759 Allow audio sinks to match on device names
Names are more stable than IDs on Windows
2023-05-07 11:52:57 -05:00
ReenigneArcher 91460f3c72 fix(ui): allow case-insensitive username (#1249) 2023-05-06 08:45:35 -04:00
Cameron Gutman 020d5cd8c3 Add status messages for client errors 2023-05-05 23:14:04 -05:00
Cameron Gutman 6a3b7708bb Remove unnecessary uniqueid check for /applist
We already perform access control via client certificates
2023-05-05 23:14:04 -05:00
Cameron Gutman b59b885dbd Fix pairing error handling when the hash doesn't match
We shouldn't proceed to signature verification if we already failed hash verification
2023-05-05 23:14:04 -05:00
Cameron Gutman 663bf750d9 Add missing cstdint include 2023-05-05 22:49:39 -05:00
Cameron Gutman a7c1252fd9 Fix accidental concatenation of resolution strings
Spotted by @ns6089
2023-05-05 17:42:59 -05:00
Cameron Gutman 2fca9cd0da Fix launching apps with a log file specified 2023-05-05 17:42:59 -05:00
Cameron Gutman a6d295b273 Wait for pending sessions to connect before breaking on app termination
If we don't wait, clients may fail control stream establishment if the app terminates early.
2023-05-05 17:42:59 -05:00
Cameron Gutman eb8aaf0093 Fix graceful termination messages being discarded by Moonlight 2023-05-05 17:42:59 -05:00
Cameron Gutman 10ea67719e Fix crash if capture is stopped before completing startup 2023-05-05 17:42:59 -05:00
Cameron Gutman df1286ac88 Fix crash if the app terminates before the control stream is connected 2023-05-05 17:42:59 -05:00
Cameron Gutman c706ba4ca2 Add Windows-specific warnings if Sunshine is unable to access config or credentials
http::init() failure must be fatal because attempting to start the web servers will crash due to null creds.
2023-05-03 00:33:06 -05:00
Cameron Gutman 65b7f2373c Fix merging user environment variables during process launch 2023-05-03 00:33:06 -05:00
Cameron Gutman 292ef7eca3 Don't show a console window when opening a URL 2023-05-03 00:33:06 -05:00
Cameron Gutman c4c04694ac Restore the start menu shortcut as a proper launcher for the UI and service 2023-05-03 00:33:06 -05:00
Cameron Gutman c8d4fd9f69 Keep/turn the display on during streaming
IDXGIDuplication::DuplicateOutput() may fail with 0x80070005 if the display is off and cause streaming to fail
2023-05-03 00:07:01 -05:00
ns6089 8347824eee Print frame processing latency to debug log 2023-05-02 23:41:13 -05:00
ns6089 bd533dc31b Extend packet header with frame processing latency 2023-05-02 23:41:13 -05:00
ReenigneArcher 3cfb520217 fix(audio)!: remove policy config for Windows Vista (#1235) 2023-04-30 20:41:45 -04:00
Cameron Gutman 50f689ff80 Implement restart support for all platforms 2023-04-29 21:22:18 -05:00
Cameron Gutman 4668ff59e5 Fix ringing with non-truthy values in alarm_t
The Windows mDNS registration code does this in the failure path and ends up deadlocking.
2023-04-29 20:43:16 -05:00
Cameron Gutman d05dc731be Add RFC 6598 CGN CIDR block to LAN addresses list 2023-04-29 20:01:45 -05:00
Chase Payne 430a439698 Elevated Commands Redesign (#1123) 2023-04-29 00:22:01 -05:00
Cameron Gutman 18ab7dcf6c Remove 3-byte NALU prefix fixup
The bug in Moonlight that required it has been fixed since the middle of last year.
2023-04-28 22:20:09 -05:00
Zach Sirotto eed4df1eee fix: header guards on system tray (#1222)
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com>
2023-04-27 10:19:33 -04:00
ReenigneArcher db5c03282c refactor(tray icon): update header definitions (#1221) 2023-04-26 09:27:08 -04:00
ReenigneArcher 2215ab98b4 fix(web ui): add response headers (#1190) 2023-04-18 17:41:45 -04:00
Cameron Gutman f51876893e Stop the service if the user quits via the tray icon 2023-04-16 16:16:03 -05:00
Cameron Gutman dd6fcbd7b8 Grant everyone SYNCHRONIZE access to our systray thread
Explorer requires this access right to remove our tray icon if we terminate unexpectedly
2023-04-16 16:16:03 -05:00
Cameron Gutman d33bd00bb4 Fix HEVC mode if the encoder changes 2023-04-16 15:53:02 -05:00
Cameron Gutman 006a6984c3 Use a faster probe for launch-time encoders that weren't available before 2023-04-16 15:53:02 -05:00
Cameron Gutman d973e5bbc7 Avoid unnecessary encoder probing during startup and launch 2023-04-16 15:53:02 -05:00
Cameron Gutman 8f74c3b482 Leave reference frames unspecified if REF_FRAMES_RESTRICT is not supported
FFmpeg codecs specify their own defaults that we shouldn't override.
2023-04-16 15:53:02 -05:00
ns6089 7da33f7951 Remove unnecessary reference 2023-04-15 15:16:14 -05:00
ns6089 045d4b81a4 Switch between img and surface in last frame 2023-04-15 15:16:14 -05:00
ns6089 7b11b48317 Delayed capture buffer trim 2023-04-15 14:37:23 -05:00