Commit graph

624 commits

Author SHA1 Message Date
Cameron Gutman
a66fbcd6be Use version.txt for Info.plist too 2019-01-05 18:53:17 -08:00
Cameron Gutman
102e5f6de9 Move the version string into version.txt 2019-01-05 18:08:34 -08:00
Cameron Gutman
f2fdd048c7 Use stun.moonlight-stream.org for STUN 2019-01-04 20:16:27 -08:00
Cameron Gutman
5a2cfc15a6 Ensure WoL works properly on multi-homed hosts. Fixes #135 2019-01-04 20:05:31 -08:00
Cameron Gutman
11c7131875 Replace forgotten clamp to frameCountMax removed by e75dce2543 2019-01-03 18:49:18 -08:00
Cameron Gutman
34aacc90d7 Include version string in update tooltip 2019-01-03 18:00:54 -08:00
Cameron Gutman
e75dce2543 Remove one-sample-per-callback write logic to fix crackling at 44.1 KHz. Fixes #152 2019-01-03 17:23:29 -08:00
Cameron Gutman
e2774309fb Fix context menus on Qt 5.9 2019-01-02 19:49:06 -08:00
Cameron Gutman
dfefdc93c5 Update macOS icns 2019-01-01 19:33:08 -08:00
Cameron Gutman
d46ea28bba
Merge pull request #151 from Jorys-Paulin/feature/icon-tweaks
Updated Moonlight icon
2019-01-01 19:32:21 -08:00
Cameron Gutman
d35c5bcaba Print socket errors when sending WoL packets 2019-01-01 19:20:09 -08:00
Jorys Paulin
3316fdb80e Updated Moonlight icon 2018-12-26 13:29:49 +01:00
Cameron Gutman
c5d70c48c9 Fix QMap usage where insertion on read of missing value was not intended 2018-12-26 00:59:30 -08:00
Cameron Gutman
82230ef2f5 Version 0.8.0 2018-12-25 22:29:27 -08:00
Cameron Gutman
dcfd3d3e48 Add a debug print for V-sync 2018-12-25 22:19:23 -08:00
Cameron Gutman
cb1e2ac32e Avoid filling our client logs with QNetworkReplyHttpImplPrivate warnings 2018-12-25 21:54:20 -08:00
Cameron Gutman
ec2c15946a Update audio buffering parameters based on local testing 2018-12-25 21:45:15 -08:00
Cameron Gutman
8be73142f8 Fix cert pinning on macOS 2018-12-25 21:15:59 -08:00
Cameron Gutman
d1640e3bb8 Audio latency tweaks and fix for PulseAudio with A2DP 2018-12-25 17:54:18 -08:00
Cameron Gutman
8612e6726d Remove accidentally enabled debug prints 2018-12-25 14:05:55 -08:00
Cameron Gutman
14cb2e1999 Remove latency drop logic and replace by single frame writes 2018-12-25 14:05:17 -08:00
Cameron Gutman
cfabaf334e Add frame pacing toggle 2018-12-25 12:57:00 -08:00
Cameron Gutman
c054536fab Count Pacer delay in frame stats 2018-12-25 12:09:45 -08:00
Cameron Gutman
35aac18b4e Improve bitrate slider label and add tooltip 2018-12-25 11:48:34 -08:00
Cameron Gutman
de3928cb4d Reduce FPs on the unmapped gamepad dialog 2018-12-25 11:41:48 -08:00
Cameron Gutman
d9a8d67e3d Use a shared UID for all Moonlight clients 2018-12-22 21:04:44 -08:00
Cameron Gutman
99b0a56a6a Add additional cert pinning assert 2018-12-22 20:05:45 -08:00
Cameron Gutman
61d7aa0400 Require cert pinning for HTTPS 2018-12-22 19:55:28 -08:00
Cameron Gutman
1e98594972 Handle server cert change by pairing again 2018-12-21 19:17:32 -08:00
Cameron Gutman
c6383f042c Pin server cert to host during pairing 2018-12-21 18:08:07 -08:00
Cameron Gutman
d696536486 Version 0.7.0 2018-12-05 22:49:42 -08:00
Cameron Gutman
b46a3cf759 Show stream error dialog when launching from the CLI 2018-12-05 22:22:30 -08:00
Cameron Gutman
8a5e3cdb76 Fix returning to app page when start fails 2018-12-05 22:17:26 -08:00
Cameron Gutman
4fb39226ef Fix 'moonlight -v' output on Linux 2018-12-05 22:01:22 -08:00
Cameron Gutman
c40174034c Don't kill the app on the host when the session terminates unexpectedly 2018-12-05 20:17:00 -08:00
Cameron Gutman
5029c855f0 Simplify app quitting implementation a bit 2018-12-05 19:49:06 -08:00
Cameron Gutman
f42c7fec1e Update SDL GC DB 2018-12-05 18:47:44 -08:00
Janne Hakonen
0ab07303c9 Add quit cli command and app quit option after stream session. Fixes #92 (#138)
* Add quit cli command and app quit option after stream session. Fixes #92

* Code review fixes.
2018-12-05 18:45:28 -08:00
Cameron Gutman
ad47990a87 Make update icon more obnoxious so people actually update 2018-12-05 18:40:21 -08:00
Cameron Gutman
1968461ce9 Allow HTTP redirects when checking for updates 2018-12-03 23:29:49 -08:00
Cameron Gutman
8aa3b5d3da Switch to new hostname 2018-12-03 21:48:49 -08:00
Cameron Gutman
23e77eefb0 Rename multi-controller checkbox to be more descriptive 2018-11-29 20:10:47 -08:00
Cameron Gutman
094443cf26 Rename start in windowed mode option to be more accurate 2018-11-28 21:46:14 -08:00
Cameron Gutman
b97758ef46 Switch to libsoundio on Linux now that PA works reliably after d1fe752028 2018-11-28 00:13:04 -08:00
Cameron Gutman
d1fe752028 Fix busy looping in libsoundio audio renderer when no audio is playing 2018-11-27 23:43:31 -08:00
Cameron Gutman
9a153b7170 Remove unneccessary hardcoded text color for better style support 2018-11-22 02:35:25 -08:00
Cameron Gutman
065a6caee5 Use automatic remote streaming detection 2018-11-21 20:55:25 -08:00
Cameron Gutman
c63c5100e2 Version 0.6.4 2018-11-20 22:23:03 -08:00
Cameron Gutman
bf05088d70 Remove checks that rely on display modes because they can be inaccurate on machines when the monitor is off 2018-11-20 22:02:43 -08:00
Cameron Gutman
e7bb146f92 Allow streaming to match the refresh rate in unsupported mode 2018-11-20 21:47:08 -08:00
Cameron Gutman
688c4a90d9 Use the raw display bounds not the usable display bounds for full-screen calculations 2018-11-18 23:10:30 -08:00
Cameron Gutman
165ad96be1 Fix stack overflow if SDL gamepad initialization fails 2018-11-18 22:04:44 -08:00
Cameron Gutman
115ced7ab4 Only precompile QML files on release builds 2018-11-18 22:04:11 -08:00
Cameron Gutman
ef15b5641a Fix accidental dependency on system SDL2.framework when building in the IDE 2018-11-18 21:23:46 -08:00
Cameron Gutman
d847b71c86 Fix host virtual gamepads being reconnected during stream startup and causing issues with multiple controllers. Fixes #108 2018-11-18 12:05:17 -08:00
Cameron Gutman
dfcc1ff899 Also print gamepad mapping on gamepad attach 2018-11-17 17:23:20 -08:00
Cameron Gutman
65562937f3 Print gamepad GUID string in logs 2018-11-17 17:10:52 -08:00
Cameron Gutman
7b5dc33a21 Version 0.6.3 2018-11-16 01:17:57 -08:00
Cameron Gutman
25f70e570e Add timer-based input batching for GFE 3.16 2018-11-15 20:52:07 -08:00
Cameron Gutman
b27b64c25c Initialize the SDL timer subsystem 2018-11-15 20:45:32 -08:00
Cameron Gutman
bfc64c926a Reorganize settings page now that vertical scrolling works 2018-11-15 16:41:02 -08:00
Cameron Gutman
a95d2e76f5 Fix settings page scrolling. Fixes #106 2018-11-13 18:03:53 -08:00
Cameron Gutman
037886ba5b Add tooltips and update help text 2018-11-04 14:36:12 -08:00
Cameron Gutman
011edfe2a0 Disable any usage of proxy servers 2018-11-04 14:15:53 -08:00
Cameron Gutman
1a5a6773ce Add option to determine if Moonlight launches in full-screen. Fixes #103 2018-11-04 13:57:33 -08:00
Cameron Gutman
dda22fd387 Rename mouse acceleration toggle to raw mouse input 2018-11-04 13:31:28 -08:00
Cameron Gutman
789e52af57 Use SDL_GameControllerGetPlayerIndex() as a hint for picking player indexes 2018-11-03 13:04:34 -07:00
Cameron Gutman
76e5794203 Remove SetThreadExecutionState() call now that SDL_DisableScreenSaver() works on Windows 2018-11-03 12:44:14 -07:00
Cameron Gutman
e1fab22d98 Fix accidental removal of decoder deletion in previous commit 2018-10-31 18:49:37 -07:00
Cameron Gutman
cb5e58d465 Fix use-after-free caught by debug build of SDL2 2018-10-31 18:20:39 -07:00
Cameron Gutman
eaeb9ec6f7 Version 0.6.2 2018-10-28 19:57:38 -07:00
Cameron Gutman
f672b8534f Change quit tip based on whether gamepads are attached 2018-10-28 17:59:07 -07:00
Cameron Gutman
839c0a45a0 Avoid polling server status while streaming 2018-10-28 17:53:49 -07:00
Cameron Gutman
9461ebec2d Log an error if STUN fails 2018-10-26 20:54:17 -07:00
Cameron Gutman
48d8a53cd6 Resolve WAN address using STUN if the PC is discovered over mDNS 2018-10-26 20:44:51 -07:00
Cameron Gutman
8a7c463c52 Version 0.6.1 2018-10-14 23:08:58 -07:00
Cameron Gutman
61d90a5a88 Also display a tooltip when the item is highlighted by gamepad/keyboard 2018-10-14 22:23:08 -07:00
Cameron Gutman
ef99f02bc7 Display the tooltip over the text itself and only if it's truncated 2018-10-14 21:39:37 -07:00
Cameron Gutman
d5a1189053 Avoid VAAPI on AMD drivers due to a bad memory leak 2018-10-14 20:37:13 -07:00
Cameron Gutman
cb52a53922 Remove accidentally committed debugging code 2018-10-14 12:59:13 -07:00
Cameron Gutman
fd63aad3b8 Only avoid HEVC on GFE 3.10 and lower on macOS 2018-10-14 11:28:52 -07:00
Cameron Gutman
40fc9fa26f Fix Qt 5.9 incompatibility in AutoResizingComboBox. Fixes #107 2018-10-13 20:16:18 -07:00
Cameron Gutman
cf0d29d452 Add AntiHooking helper DLL to prevent NahimicOSD.dll from loading into Moonlight and causing us to hang in full-screen mode. Fixes #102 2018-10-13 19:35:21 -07:00
Cameron Gutman
e411c207ae Implement quitting Moonlight via gamepad or keyboard. Fixes #100 2018-10-13 00:41:22 -07:00
Cameron Gutman
36f468a599 Fix window icon disappearing when toggling out of full-screen mode on Windows 2018-10-12 20:34:58 -07:00
Cameron Gutman
dfae69834a Fix misleading debug print 2018-10-12 20:02:54 -07:00
Cameron Gutman
e53b32fa57 Stop polling machines after 5 minutes of inactivity to conserve power 2018-10-12 19:58:29 -07:00
Cameron Gutman
969afac696 Add tool tips to app grid 2018-10-12 19:41:20 -07:00
Cameron Gutman
50d4f267ba Fix font setting in TextMetrics. Fixes #99 2018-10-12 19:19:33 -07:00
Cameron Gutman
4f84843b00 Fixup H.264 SPS for VideoToolbox compatibility. Fixes #98 2018-10-12 17:59:53 -07:00
Cameron Gutman
6e4dd161ac Version 0.6.0 2018-10-06 20:46:01 -07:00
Cameron Gutman
1fc63a6529 Exclude libsoundio from Linux build 2018-10-06 18:24:34 -07:00
Cameron Gutman
5d84ab4a47 Update SDL_GameControllerDB to 19944691bf18b97c0df2254ce52772b549d4d2bf 2018-10-06 14:07:22 -07:00
Cameron Gutman
fc315feac4 Maximize the Qt UI window if configured for a full-screen display mode 2018-10-06 13:14:32 -07:00
Cameron Gutman
82a87e96b3 Include the indicator in combo box width 2018-10-06 12:59:59 -07:00
Cameron Gutman
7d1ecc8d82 Fix popup font resizing on macOS 2018-10-06 12:41:55 -07:00
Cameron Gutman
f9daf2a45c Resize settings combo boxes to match their contents 2018-10-06 12:12:05 -07:00
Cameron Gutman
113751a4bc Avoid Qt bug by using onAfterRendering instead of onAfterSynchronizing to display dialogs 2018-10-05 19:54:13 -07:00
Cameron Gutman
e182445593
libsoundio audio renderer for Windows and Mac (#97) 2018-10-05 19:22:57 -07:00
Cameron Gutman
6661ca17c2 Fix keys being stuck after Moonlight loses focus or is quit via OS shortcut (Alt+Tab/Alt+F4) 2018-10-03 18:27:12 -07:00
Cameron Gutman
1b4e75f49e Add support for sending X1 and X2 mouse buttons. Fixes #91 2018-10-03 17:56:42 -07:00
Janne Hakonen
1d691cf763 Reserve a static size for app icon in PC view to position the icon and text on same level with other apps 2018-10-03 19:31:37 +03:00
Cameron Gutman
9075f309ad Disable annoying stream stats prints 2018-10-02 20:12:53 -07:00
Cameron Gutman
18d97e9f73 Fix errant touch events on macOS 2018-10-02 20:11:13 -07:00
Cameron Gutman
bccd118abb Finish removal of auto audio option and rename the remaining options 2018-10-02 15:30:22 -07:00
Cameron Gutman
3dc049ee5f Remove automatic audio configuration permanently due to brokenness and allow renderers to request reinitialization on demand 2018-10-02 01:21:42 -07:00
Cameron Gutman
a614a693e5 Revert "Fix surround sound channel mapping on ALSA" since it can be handled inside PortAudio 2018-10-02 01:09:13 -07:00
Cameron Gutman
8dddcd04d5 Remove IAudioRenderer::testAudio() and just use IAudioRenderer::prepareForPlayback() instead 2018-10-01 19:49:08 -07:00
Cameron Gutman
209b4a1b02 Fix surround sound channel mapping on ALSA 2018-10-01 18:46:16 -07:00
Cameron Gutman
b14a0fa2ce Ensure initial warning dialogs always appear on top of the Moonlight window 2018-09-30 22:39:51 -07:00
Cameron Gutman
5f05363996 Fix keyboard navigation of quit app and delete PC dialogs 2018-09-30 22:20:19 -07:00
Cameron Gutman
d5770ad8cc Fix "Connection terminated" dialog being stuck out of input focus on gamepad 2018-09-30 18:38:54 -07:00
Cameron Gutman
c239d0814b Move audio renderer destruction back off the main thread now that we're using atexit(SDL_Quit) 2018-09-30 18:09:12 -07:00
Cameron Gutman
f7789a1e4a Add Select+Start+L1+R1 quit combo 2018-09-30 14:38:54 -07:00
Cameron Gutman
6d382078d3 Allow gamepad navigation with the left analog stick 2018-09-30 14:30:12 -07:00
Cameron Gutman
162a16ed3a Allow settings to be activated when an app or PC is in focus 2018-09-30 13:52:38 -07:00
Cameron Gutman
d706e81cd4 Add gamepad navigation support for everything except context menus and dialogs 2018-09-30 13:41:32 -07:00
Cameron Gutman
9fb0bffd61 Finish touch input support 2018-09-30 01:03:26 -07:00
Cameron Gutman
4a452a2467 Touch input WIP 2018-09-29 22:43:28 -07:00
Cameron Gutman
396d65b003 Fix typo in previous commit 2018-09-29 22:24:26 -07:00
Cameron Gutman
fa52e7c1b7 Fix audio device error with PA renderer (and constify some methods) 2018-09-29 22:19:41 -07:00
Cameron Gutman
6758d6c43e Create MappingManager class to handle gamepad mappings (currently only saving custom mappings) 2018-09-29 20:33:45 -07:00
Cameron Gutman
4ad27670ec Provide detection and help for unmapped gamepads. Fixes #70 2018-09-29 19:14:52 -07:00
Cameron Gutman
1ad072236d Avoid calling Pa_IsStreamStopped() on each audio frame 2018-09-29 16:52:40 -07:00
Cameron Gutman
76387aacad Switch SDL_GameControllerDB to submodule 2018-09-29 16:43:14 -07:00
Cameron Gutman
200b1c5095 Rename hpp -> h 2018-09-29 16:18:46 -07:00
Janne Hakonen
d14cfb577b Add command line parameters. Fixes #30 (#89)
* Add command line parameters. Fixes #30

* Fixed compile errors

* Fixed code review findings

* Fixed code review findings, take 2
2018-09-29 14:06:55 -07:00
Cameron Gutman
c04113c9fa Fix GCC and Clang build 2018-09-29 03:11:17 -07:00
Cameron Gutman
4620fa5001 Retry serverinfo query for adding a PC if the request fails with ServiceUnavailableError. Fixes #88 2018-09-29 03:01:49 -07:00
Cameron Gutman
ba7dd31035 Refactor ComputerManager and BoxArtManager to get code out of headers and split NvComputer into its own file 2018-09-29 02:19:44 -07:00
Cameron Gutman
a0249b4337 Add video stats for performance overlay 2018-09-25 00:47:59 -07:00
Cameron Gutman
7e414f0af3 Add keyboard shortcuts for Help and Settings 2018-09-23 19:24:47 -07:00
Cameron Gutman
8fb37ae229 Finish keyboard navigation for GridViews and MenuItems 2018-09-23 19:06:26 -07:00
Cameron Gutman
2e3de32810 Partially working keyboard navigation support 2018-09-23 15:16:27 -07:00
Cameron Gutman
f2e40889b2 Performance tweaks to PortAudio renderer 2018-09-22 21:00:44 -07:00
Cameron Gutman
896b247bc0 Remove H.264 high performance preference and enable HEVC split encode 2018-09-22 20:27:02 -07:00
Cameron Gutman
605d52f160 Don't block in audio/video renderer callbacks while the renderer is being destroyed 2018-09-22 20:03:41 -07:00
Cameron Gutman
afb2b465a8 Avoid using direct submit for video decoding because FFmpeg can delay for a fairly significant period of time within avcodec_send_packet() and avcodec_receive_frame(), even for software decoding. This is particularly apparent when streaming well above hardware capabilities and leads to packet loss. 2018-09-22 19:30:13 -07:00
Cameron Gutman
b1de66d878 Directly use the AVBufferSampleDisplayLayer as the rendering view's layer to increase efficiency 2018-09-22 18:34:15 -07:00
Cameron Gutman
71b625081a Switch to PortAudio for audio playback 2018-09-22 17:39:12 -07:00
Cameron Gutman
2cd4851601 Improve PortAudio channel autodetection algorithm to workaround PulseAudio issues 2018-09-22 16:51:45 -07:00
Cameron Gutman
14ec0259df Switch back from Qt Multimedia to SDL for audio configuration detection. Qt is also broken, but just broken in a way that always reports stereo 2018-09-22 16:20:00 -07:00
Cameron Gutman
9f0617f6ee Gracefully fall back to stereo audio if 5.1 doesn't work 2018-09-22 16:04:36 -07:00
Cameron Gutman
926b192722 Warn portable users if they download the wrong version 2018-09-22 14:16:48 -07:00
Cameron Gutman
97e5acecd7 Precompile QML files to avoid writing qmlcache. Fixes #86 2018-09-22 13:44:58 -07:00
Cameron Gutman
2c960059ee Add PoC PortAudio audio renderer 2018-09-21 23:30:47 -07:00
Cameron Gutman
e20bf3fbd9 Fix persistence of deleted PCs. Fixes #82 2018-09-21 20:21:49 -07:00
Cameron Gutman
af9fb0e091 Fix GetVideoProcessorCaps() failure handling 2018-09-21 17:29:53 -07:00
Cameron Gutman
f96911e1ba Use DXVA2_VideoProcProgressiveDevice since we don't need any fancy image processing or deinterlacing 2018-09-21 17:07:28 -07:00
Cameron Gutman
fdbb1c8d72 Only set QT_OPENGL if it's not already set 2018-09-20 21:27:19 -07:00