Cameron Gutman
21f2b1224a
Decode directly into the audio renderer's buffer to avoid a copy
2019-05-01 21:27:41 -07:00
Cameron Gutman
cb75b3d6d2
Version 0.10.1
2019-04-28 19:27:30 -07:00
Cameron Gutman
27708b9ecb
Disable HIDAPI for Xbox gamepads on macOS
2019-04-28 18:45:56 -07:00
Cameron Gutman
dfb006d264
More Steam Link performance optimizations
2019-04-28 15:57:57 -07:00
Cameron Gutman
4f00f62674
Batch controller axis events for reduced CPU usage on Steam Link
2019-04-28 15:16:04 -07:00
Cameron Gutman
4f2fe5c988
Reduce polling rate on SL due to CPU performance limitations
2019-04-28 13:04:58 -07:00
Cameron Gutman
2bf552f801
Batch audio frames on Steam Link to save CPU cycles
2019-04-28 12:55:04 -07:00
Cameron Gutman
477fa8fedf
Add logging callbacks for SLAudio and SLVideo
2019-04-28 11:01:54 -07:00
Cameron Gutman
f1c7c5f02c
Don't emit boxArtLoadComplete on box art load failure to prevent an infinite loop
2019-04-27 18:48:06 -07:00
Cameron Gutman
4e936193c7
Request a test frame for MMAL decoder
2019-04-24 21:31:52 -07:00
Cameron Gutman
f9895c22b6
Update SDL_GameControllerDB to cbebd79740bc1360978bdf6d9d4d13d189e420a3
2019-04-24 20:27:23 -07:00
Cameron Gutman
6e46537112
Fix highlights for toolbar buttons to be more visible
2019-04-24 20:22:39 -07:00
Cameron Gutman
fa29260e09
Work around Qt 5.12 dialog crash on disconnect
2019-04-23 19:40:21 -07:00
Cameron Gutman
9c5d847dae
Autodetect a Wayland environment and configure SDL correctly. Fixes #211
2019-04-21 18:31:11 -07:00
Cameron Gutman
082e330f9d
Partially revert fa4c0e82bd
because we'll need Qt initialized first to detect Wayland
2019-04-21 17:43:38 -07:00
Cameron Gutman
8878c4a136
Use VAAPI decoder for AMD on Wayland
2019-04-21 15:33:21 -07:00
Cameron Gutman
00926bac81
Fix build warning in SDL renderer
2019-04-21 11:09:11 -07:00
Cameron Gutman
67b0907e52
Add globaldefs.pri for setting qmake values in each project
2019-04-21 11:08:33 -07:00
Cameron Gutman
dba479774b
Add DRM renderer for Rockchip devices
2019-04-21 05:22:37 +00:00
Cameron Gutman
5c8a1e632b
Add support for rendering NV12 hwframes with SDL
2019-04-19 22:16:06 -07:00
Cameron Gutman
d65e29111f
Fix some codec selection bugs
2019-04-19 20:57:21 -07:00
Cameron Gutman
ed170b8092
Prevent the computer name from overflowing the PC grid item
2019-04-18 21:03:37 -07:00
Cameron Gutman
ac36fef968
Fix incorrect placeholder status after loading box art causing app label to be absent
2019-04-18 20:58:40 -07:00
Cameron Gutman
10f6b73cad
Revert "Avoid using ANGLE on debug builds due to assert issues on Qt 5.12.2"
...
Qt 5.12.3 fixes the bug. https://bugreports.qt.io/browse/QTBUG-74467
This reverts commit 26bdc3e1d5
.
2019-04-18 20:57:39 -07:00
Cameron Gutman
3ba98e86f2
Remove QC1 style variable since QC1 dialogs are no longer used
2019-04-18 20:04:24 -07:00
Cameron Gutman
1dfca525cf
Refactor renderer initialization to reduce duplication and inconsistency
2019-04-18 20:02:14 -07:00
Cameron Gutman
e51ad1a68a
Fix use-after-free due to stale m_FrontendRenderer pointer. Fixes #214
2019-04-18 19:26:13 -07:00
Cameron Gutman
9c76700f74
Add MMAL renderer for Raspberry Pi
2019-04-16 01:20:21 -07:00
Cameron Gutman
773b1af6f1
Minor refactoring in preparation for non-hwaccel decoder support
2019-04-15 21:56:01 -07:00
Cameron Gutman
b8b633a6cc
Use SDL to render on Wayland for VAAPI
2019-04-12 22:54:21 -07:00
Cameron Gutman
ada2270bd1
Reduce code duplication in renderers
2019-04-12 22:12:53 -07:00
Cameron Gutman
25e5175c54
Refactor parameter passing to decoders and split backend/decode-only and frontend renderers
2019-04-11 22:27:20 -07:00
Cameron Gutman
00a1948b73
Treat AV_CODEC_CAP_HARDWARE codecs as hardware accelerated too
2019-04-09 21:50:22 -07:00
Cameron Gutman
859a5a5e0c
Allow a renderer to opt-out of the render thread and use that for SDL on OGL
2019-04-09 21:46:14 -07:00
Cameron Gutman
6783cf57da
TTF_OpenFontRW retains the SDL_RWops on success, so we must keep the font data around to back it
2019-04-09 21:26:47 -07:00
Cameron Gutman
6182553d79
Version 0.10.0
2019-04-07 13:21:02 -07:00
Cameron Gutman
905a0cdac1
Make GFE-reported errors more clear
2019-04-07 12:21:05 -07:00
Cameron Gutman
fe26098c2b
Fix quitting via Command-Q on macOS
2019-04-06 15:22:14 -07:00
Cameron Gutman
2354a0a640
Fix unresponsive GUI on quit if a polling operation is in progress
2019-04-06 13:11:36 -07:00
Cameron Gutman
7c3f09c70c
Update poor connection behavior
2019-04-06 12:25:35 -07:00
Cameron Gutman
caf5350fe6
Update SDL_GameControllerDB to e411d95fcda34c19270c2d12335fc47512a87dec
2019-04-06 12:06:52 -07:00
Cameron Gutman
84084835ce
Refactor and fix the GridView centering code to avoid flipping between states
2019-04-06 11:48:58 -07:00
Cameron Gutman
7f38a67ede
Fix brown-paper-bag bug in 948910bfa2
2019-04-03 21:13:12 -07:00
Cameron Gutman
54383b84ec
Fix random deadlocks on window resize with the software decoder due to processing window messages off the render thread
2019-04-03 20:44:50 -07:00
Cameron Gutman
948910bfa2
Don't open the app context menu for mouse clicks
2019-04-03 20:27:00 -07:00
Cameron Gutman
ce5dac07d3
Ensure the anchor hack stays in sync with changing margins prior to Qt 5.12
2019-04-01 22:12:49 -07:00
Cameron Gutman
d4b0057423
Minor tweak to the label layout of running apps
2019-04-01 20:55:11 -07:00
Cameron Gutman
de8b12f594
Fix grid view margins and scroll bar positioning on Qt 5.9
2019-04-01 20:40:52 -07:00
Cameron Gutman
69e31a0a37
Redesign the app view UI to feature larger game artwork and less text
2019-04-01 19:49:33 -07:00
Cameron Gutman
c383cd39f4
Fix text wrapping with giant error messages
2019-04-01 18:31:13 -07:00
Cameron Gutman
e88d2f0ab2
Add files and scripts to build for Steam Link
2019-03-31 23:26:17 -07:00
Cameron Gutman
32535578a0
Use newlines for the help text separator on the unmapped gamepad dialog
2019-03-31 20:10:56 -07:00
Cameron Gutman
2e9af8fef0
Fix focus and rejection of Yes/No dialogs on SL
2019-03-31 19:40:30 -07:00
Cameron Gutman
0aa87aacc6
Fix focus issues after dismissal of consecutive dialogs (like Add PC -> Add PC error)
2019-03-31 19:32:17 -07:00
Cameron Gutman
bc38c302ed
Cap the maximum width of the error dialogs
2019-03-31 19:05:38 -07:00
Cameron Gutman
c724902508
Clean up code for new QC2 dialogs and remove some unused imports
2019-03-31 17:44:19 -07:00
Cameron Gutman
73604020d7
Rewrite dialog code to use Quick Controls 2
2019-03-31 17:24:25 -07:00
Cameron Gutman
060a00b9c7
Consolidate help handling into ErrorMessageDialog
2019-03-31 15:16:48 -07:00
Cameron Gutman
2cd32bf25a
Move the cursor into the lower right corner on SL
2019-03-31 13:58:27 -07:00
Cameron Gutman
81ad1a18fa
Fix error dialog focus issues after dismissal on Steam Link
2019-03-31 13:57:57 -07:00
Cameron Gutman
1d94903eef
Add a hack to ensure the layout anchors work properly on Qt 5.11 and earlier
2019-03-30 12:28:18 -07:00
Cameron Gutman
2d7dcb495c
Remove CAPABILITY_DIRECT_SUBMIT for the video decoder because it can block for significant time periods when D3D9 is reconfiguring display settings (and holding the D3D global lock)
...
This can cause false reports of packet loss.
2019-03-29 23:38:23 -07:00
Cameron Gutman
bc580c9aaa
Ensure SdlGamepadKeyNavigation is only re-enabled after the sessionFinished() callback to avoid conflicts with SdlInputHandler
2019-03-29 23:20:43 -07:00
Cameron Gutman
f8e2740532
Add placeholder text when no PCs are present
2019-03-27 18:13:20 -07:00
Cameron Gutman
a079ecd20b
Improve transitions and eliminate conflicting anchor warnings
2019-03-27 01:28:46 -07:00
Cameron Gutman
89c8725766
Improve Add PC dialog readability on Windows
2019-03-27 00:39:25 -07:00
Cameron Gutman
da7d532564
Move Add PC button to toolbar
2019-03-26 21:31:51 -07:00
Cameron Gutman
4752d4966d
Improve Add PC dialog to have a proper text field
2019-03-26 21:12:53 -07:00
Cameron Gutman
50f47f1ed5
Fix handling of screen saver after fa4c0e82bd
and reset background events hint for UI after streaming
2019-03-26 21:11:24 -07:00
Cameron Gutman
26bdc3e1d5
Avoid using ANGLE on debug builds due to assert issues on Qt 5.12.2
2019-03-24 19:23:02 -07:00
Cameron Gutman
764360c0f3
Avoid doing non-trivial work in onCheckedChanged on settings page load
2019-03-24 19:15:35 -07:00
Cameron Gutman
08482577eb
Fix connection termination dialog regression from 03c0be0720
2019-03-24 15:19:38 -07:00
Cameron Gutman
cabbba2448
Move status update overlay to bottom left for SDL
2019-03-23 21:14:21 -07:00
Cameron Gutman
c48ed7bb0d
Fix undefined variable usage after 2703efedef
2019-03-23 20:25:19 -07:00
Cameron Gutman
fa4c0e82bd
Only initialize the video subsystem once per launch
2019-03-23 17:46:42 -07:00
Cameron Gutman
c0bf8b9c25
Remove redundant initializtion of SDL video
2019-03-23 14:26:08 -07:00
Cameron Gutman
d2cff86c97
Refactor SdlGamepadKeyNavigation to avoid multiple reinitializations of SDL
2019-03-23 14:15:55 -07:00
Cameron Gutman
03c0be0720
Only display help options on platforms with web browsers
2019-03-23 13:51:34 -07:00
Cameron Gutman
a3361363e4
Remove duplicate data files on Linux
2019-03-23 12:20:01 -07:00
Cameron Gutman
40e142c5c7
Add force feedback to feature list
2019-03-23 12:14:43 -07:00
Cameron Gutman
2703efedef
Improve performance of looking up static system properties
2019-03-23 12:05:08 -07:00
Cameron Gutman
c313f1a20b
Embed our data files inside the binary with QRC
2019-03-23 10:45:44 -07:00
Cameron Gutman
b7116657d9
Add SLAudio renderer for Steam Link
2019-03-22 23:08:10 -07:00
Cameron Gutman
2bf3f1b94b
Refactor Steam Link support files
2019-03-22 22:51:08 -07:00
Cameron Gutman
b78a7971d9
Fix the launch warning toasts on Qt 5.9
2019-03-22 21:30:06 -07:00
Cameron Gutman
5079bc4976
Fix SDL video initialization on Steam Link
2019-03-22 21:11:17 -07:00
Cameron Gutman
555032c15c
Add fallback font hack for Steam Link
2019-03-22 20:53:02 -07:00
Cameron Gutman
bcff327565
Use QRC URLs for the initialView value to fix loading from the QRC blob
2019-03-22 19:21:04 -07:00
Cameron Gutman
e95ff989b1
Allow DXVA2 renderer blacklists to be bypassed
2019-03-21 20:44:30 -07:00
Cameron Gutman
018e8999e2
Add connection status overlay for the VT renderer
2019-03-18 20:56:53 -07:00
Cameron Gutman
f624a1817e
Add preference and tweak connection warning
2019-03-18 20:21:52 -07:00
Cameron Gutman
202a643e5a
Fix size of the status update overlay on DXVA2
2019-03-17 15:12:25 -07:00
Cameron Gutman
c75b9c9221
Add connection status overlay for DXVA2 and SDL
2019-03-17 15:08:21 -07:00
Cameron Gutman
9a6f5ba1a8
Improve speed of process termination on exit
2019-03-17 12:23:13 -07:00
Cameron Gutman
052194714a
Adjust thread priorities based on recent refactoring
2019-03-17 00:45:31 -07:00
Cameron Gutman
5ccb4a8b7f
Improve busy PC error text
2019-03-17 00:33:52 -07:00
Cameron Gutman
b79d3b31b3
Disable minimize on focus loss by default
2019-03-17 00:20:47 -07:00
Cameron Gutman
bf5d43d0cf
Use SDL_HINT_OVERRIDE for critical hints
2019-03-17 00:18:15 -07:00
Cameron Gutman
f2ac570949
Rebuild SDL2 (5dc13016cf) with USE_D3D9EX
2019-03-16 23:52:40 -07:00
Cameron Gutman
37636ef1eb
Allow other SSL errors as long as the cert is correct
2019-03-16 19:01:55 -07:00
Cameron Gutman
c540bec824
Remove logging hack now that Qt 5.12.2 fixes the bug
2019-03-16 16:59:49 -07:00
Cameron Gutman
9288cfa684
Basic support for building as UWP app
2019-03-13 01:02:04 -07:00
Cameron Gutman
ccd0777ce9
Use a Loader to be able to use StackView.onActivated to trigger stream start
2019-03-02 20:55:50 -08:00
Cameron Gutman
49b67b3e18
Adjust QGnomePlatform hack to avoid disabling desktop settings awareness. Fixes #185
2019-03-02 19:50:05 -08:00
Cameron Gutman
0ec04df334
Hide hint text when the connection completes
2019-03-02 14:13:32 -08:00
Cameron Gutman
26d7946b4a
Fix toolbar hiding in quit segue
2019-03-02 14:13:14 -08:00
Cameron Gutman
292cc579cf
Partially revert 8037fb76fc
to fix mouse polling issues on Windows
2019-03-02 14:11:30 -08:00
Cameron Gutman
ac8183feee
Fix selection loss when going back caused by previous commit
2019-02-22 22:44:09 -08:00
Cameron Gutman
8037fb76fc
Use StackView activation callbacks to perform init and cleanup since visibility callbacks aren't guaranteed to run in any order
2019-02-22 22:14:06 -08:00
Konstantin Budnikov
e32bc1a0a3
SDL_HapticRumblePlay rumble for gamepad without SDL_HAPTIC_LEFTRIGHT support ( #181 )
2019-02-20 19:22:38 -08:00
Cameron Gutman
e5a8b49c93
Limit the number of queued frames in Pacer to prevent excessive memory consumption if the renderer gets blocked for a while
2019-02-18 12:13:45 -08:00
Cameron Gutman
b6872456cd
Version 0.9.1
2019-02-17 13:13:57 -08:00
Cameron Gutman
2a12b018da
Fix special key combos on non-QWERTY latin keyboards
2019-02-17 13:07:54 -08:00
Cameron Gutman
f64486c88f
Version 0.9.0
2019-02-17 00:18:42 -08:00
Cameron Gutman
80a40ac5f9
Increase frame drop threshold
2019-02-16 23:13:35 -08:00
Cameron Gutman
a1956350b1
Rename pacing drop to jitter drop to be less confusing for users
2019-02-16 23:04:25 -08:00
Cameron Gutman
2c09875556
Fix input handler cleanup on startup failure
2019-02-16 01:39:31 -08:00
Cameron Gutman
a8f72df7f8
Fix in-tree builds
2019-02-16 00:42:09 -08:00
Cameron Gutman
ab4127f940
Use presence of a frame after rendering rather than render time for frame dropping
2019-02-15 22:44:52 -08:00
Cameron Gutman
f03d12b677
Use a separate render thread even with a V-Sync source
2019-02-15 22:09:50 -08:00
Cameron Gutman
81c6202582
Rename renderFrameAtVsync() to renderFrame() in preparation for further refactoring
2019-02-15 21:07:02 -08:00
Cameron Gutman
6cab2bec61
Don't trust VT to tell us whether decode is supported
2019-02-15 19:10:21 -08:00
Cameron Gutman
94ffda653c
Update SDL_GameControllerDB to add new mappings
2019-02-15 19:00:30 -08:00
Cameron Gutman
c2268b45f6
Merge pull request #177 from konst2/master
...
Fix hotkeys for non-latin keyboard layouts
2019-02-15 18:57:24 -08:00
Cameron Gutman
38b8a59fe5
Adjust overlay color for more contrast
2019-02-15 18:53:40 -08:00
Cameron Gutman
640e3213ee
Copy the required data files into place for building in the IDE
2019-02-15 18:47:42 -08:00
Cameron Gutman
b1799009b3
Use the Path class to lookup ModeSeven.ttf
2019-02-15 18:13:36 -08:00
Cameron Gutman
f8e693a060
Drop samples to account for lost time reinitializing audio. Fixes #176
2019-02-14 22:32:54 -08:00
Cameron Gutman
aba806bc32
Implement debug overlay for VideoToolbox renderer
2019-02-13 20:55:52 -08:00
Cameron Gutman
b1fb3f2391
Set FFmpeg log level at debug until first frame is rendered
2019-02-13 18:34:59 -08:00
konst2
041e901c61
Fix hotkeys for non-latin keyboard layouts
2019-02-13 19:56:44 +03:00
Cameron Gutman
f83853c2fb
OverlayManager now manages font size for the overlays
2019-02-12 22:36:56 -08:00
Cameron Gutman
b878d64460
Check rumble controller number is within the supported range
2019-02-12 22:05:55 -08:00
Cameron Gutman
5397e8ae1a
Don't use SDL_GameControllerGetPlayerIndex() because the indexes may be non-contiguous (and wrong) on XInput
2019-02-12 22:04:05 -08:00
Cameron Gutman
46bd8ad83d
Add debug overlay for SDL renderer
2019-02-12 21:55:15 -08:00
Cameron Gutman
4dac57cf8c
Add SDL2_ttf dependency for Linux
2019-02-12 21:38:51 -08:00
Cameron Gutman
95cb026446
Add SDL2_ttf for macOS
2019-02-12 21:32:11 -08:00
Cameron Gutman
5788fa7204
Make OverlayManager own the overlay color setting
2019-02-12 20:39:10 -08:00
Cameron Gutman
d077c6450f
Split SdlRenderer from renderer.h
2019-02-12 19:58:36 -08:00
Cameron Gutman
4499ed3878
Work around dialog rendering issue with QGnomePlatform. Fixes #161
2019-02-12 19:45:14 -08:00
Cameron Gutman
feb5e3bc78
Fix SDL_WasInit asserts firing due to lifetime management issues with SdlInputHandler
2019-02-12 19:30:02 -08:00
Cameron Gutman
23f1060756
Polish the resume/quit buttons
2019-02-12 19:07:48 -08:00
Cameron Gutman
6ed512e762
Provide a renderer callback when the overlay data changes
2019-02-12 18:43:38 -08:00
Cameron Gutman
947970e07b
Shortcut decoder initialization when only using it for capability testing
2019-02-12 18:42:53 -08:00
Cameron Gutman
df567b405a
Minor bugfixes to haptics
2019-02-11 21:55:56 -08:00
MINICOM\mrb11
7b0596d9df
Add controller rumble support.
2019-02-11 21:39:55 -08:00
Cameron Gutman
4b7200ae69
Don't display the connection terminated dialog for intended disconnects
2019-02-10 02:19:37 -08:00
Cameron Gutman
710648f3f4
Fix QuitSegue -> StreamSegue transition to be direct via replacement and disallow toolbar interactions
2019-02-09 21:15:17 -08:00
Cameron Gutman
d2002b6a62
Fix SOPS issues causing 720p60 settings on non-standard resolutions and FPS values
2019-02-09 20:37:11 -08:00
Cameron Gutman
8de42b3199
Fix gamepad menu focus and dismissal issues
2019-02-09 19:59:01 -08:00
Cameron Gutman
48e78d2cd3
Don't allow focus on invisible menu items
2019-02-09 19:21:43 -08:00
Cameron Gutman
1fd099db70
Log when StretchRect() fails
2019-02-09 18:47:57 -08:00
Cameron Gutman
2986a40c5a
Fix some gamepads working for UI navigation but not in game
2019-01-29 22:01:05 -08:00
Cameron Gutman
8bb6d4d0d9
Fix VDPAU scaling on AMD cards. Fixes #171
2019-01-29 20:52:41 -08:00
Cameron Gutman
21aad643f3
Use 32 pixel alignment for HEVC to fix Intel green line issue
2019-01-28 21:26:27 -08:00
Cameron Gutman
8687448966
Use StretchRect() on Intel GPUs or if VideoProcessBlt() fails
2019-01-28 19:18:43 -08:00
Cameron Gutman
6fcc8b721b
Add a button for quitting the running app
2019-01-26 23:57:02 -08:00
Cameron Gutman
b4bbd58c77
Add long press action on PC view for touchscreens
2019-01-26 23:11:09 -08:00
Cameron Gutman
1a45b8f07a
Fix dialog box styles
2019-01-26 21:45:32 -08:00
Cameron Gutman
4471a858db
Fix miscounted pacer dropped frames in non-pacing mode
2019-01-22 21:21:29 -08:00
Cameron Gutman
22e712af5a
Add v-sync text to stats overlay
2019-01-22 20:55:58 -08:00
Cameron Gutman
9799b82d53
Improve long render time logic
2019-01-22 20:55:35 -08:00
Cameron Gutman
78915e0b99
Use a separate render thread when not using frame pacing
2019-01-22 20:31:31 -08:00
Cameron Gutman
c9cc65aae7
Fix appstream metadata release date for v0.8.1
2019-01-22 19:07:14 -08:00
Cameron Gutman
a4edd9d202
Submit frame directly from the decoder thread to avoid interference from the main thread
2019-01-21 20:27:37 -08:00
Cameron Gutman
7747624c80
Revert "Wake up main thread immediately after new frame is pushed"
...
This reverts commit aab7191a44
.
2019-01-21 20:10:13 -08:00
Cameron Gutman
aab7191a44
Wake up main thread immediately after new frame is pushed
2019-01-21 18:57:14 -08:00
Cameron Gutman
1f972b1828
Require several consecutive long render times to drop a frame
2019-01-21 17:58:42 -08:00
Cameron Gutman
58b77cf589
Fix inaccurate pacer drop and network drop percentages and add total FPS stat
2019-01-21 17:43:15 -08:00
Cameron Gutman
c064f87889
Drop a frame if the rendering time exceeds the v-sync period
2019-01-20 19:59:29 -08:00
Cameron Gutman
d6b4c8e7da
Avoid blocking decoding operations during Present calls
2019-01-20 14:08:53 -08:00
Cameron Gutman
b19c4bfc5d
Add performance overlay for DXVA2 renderer
2019-01-19 23:05:56 -08:00
Cameron Gutman
e944c819d9
Add prefix for NvLogLevel enum values
2019-01-19 21:32:35 -08:00
Cameron Gutman
75f631599c
Ensure all polling threads are dead before destroying hosts, even ones that have been detached by stopPollingAsync()
2019-01-19 19:18:50 -08:00
Cameron Gutman
e0bebeae25
Allow theme overrides via environment variables
2019-01-19 17:06:35 -08:00
Cameron Gutman
32e7ddf272
Version 0.8.1
2019-01-08 00:48:49 -08:00
Cameron Gutman
88b1ea296c
Remove video bitrate tooltip since audio is accounted for during remote streaming
2019-01-06 15:41:00 -08:00
Cameron Gutman
2a13a869f3
Don't allow the scroll wheel to move the bitrate slider
2019-01-06 15:39:54 -08:00
Cameron Gutman
89c342bb6f
Introduce more granular HTTP timeouts
2019-01-06 14:35:33 -08:00
Cameron Gutman
067f5e33aa
Increase audio buffer on Linux to 25 ms. Fixes #147 . Fixes #157 .
2019-01-06 13:49:20 -08:00
Cameron Gutman
52ef84873e
Remove excess latency control logic from SDL renderer, since it doesn't appear to work very well anyway
2019-01-06 13:28:43 -08:00
Cameron Gutman
c21ba5c808
Allow the audio renderer to be overriden by the ML_AUDIO environment variable
2019-01-06 13:28:05 -08:00
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
Cameron Gutman
8a0089eb81
Print driver information in VDPAU and VAAPI renderers
2018-09-20 21:23:16 -07:00
Cameron Gutman
821d4ac9dd
Version 0.5.1 (hotfix for Windows and Mac only)
2018-09-16 12:18:58 -07:00
Cameron Gutman
f4408473e6
Fix broken Alt+Tab behavior. Fixes #72
2018-09-16 11:21:15 -07:00
Cameron Gutman
1f759577ce
Version 0.5.0
2018-09-15 16:23:10 -07:00
Cameron Gutman
04376ca047
Fix Clang format string signness mismatch warnings
2018-09-15 16:00:36 -07:00
Cameron Gutman
7ac108f495
Reduce delay for PCs appearing online
2018-09-15 13:43:02 -07:00
Cameron Gutman
a2eece0f5c
Log audio buffer size
2018-09-15 13:27:57 -07:00
Cameron Gutman
a03279df3b
Fix errant mouse button event being sent on mouse capture
2018-09-14 22:09:45 -07:00
Cameron Gutman
bef6c2b665
Fix the underflow caused by the underflow fix :(
2018-09-14 21:03:06 -07:00
Cameron Gutman
8002c65693
Block Intel drivers earlier than 4836 from using HEVC due to artifacting issues. Fixes #32
2018-09-14 20:20:47 -07:00
Cameron Gutman
72afa55897
Add tip text to the StreamSegue telling users about the quit shortcut. Fixes #77
2018-09-14 19:11:06 -07:00
Cameron Gutman
eed9fca10c
Mass conversion of isNull() -> isEmpty()
2018-09-14 18:36:15 -07:00
Cameron Gutman
25d97e187a
Fix large mouse input delay on GFE 3.14.0 and earlier. Fixes #68
2018-09-14 18:35:28 -07:00
Cameron Gutman
7ca2ca8045
Print the GPU driver version on Windows
2018-09-13 14:54:30 -07:00
Cameron Gutman
54885c3e5f
Revert "Delay Session::exec() for 250 ms to allow the StackView transition to complete" due to regressing spinner performance on Windows and Linux
...
This reverts commit b8ffb6e53d
.
2018-09-13 14:39:33 -07:00
Cameron Gutman
b8ffb6e53d
Delay Session::exec() for 250 ms to allow the StackView transition to complete
2018-09-13 14:33:38 -07:00
Cameron Gutman
7bc43c226d
Fix underflow in audio drop code
2018-09-13 14:09:03 -07:00
Cameron Gutman
da4697794d
Increase buffer size for glitch-free playback on macOS
2018-09-13 13:02:21 -07:00
Cameron Gutman
879c524658
Revert "Process Qt events in the SDL loop" to fix input issues on Windows and Mac
...
This reverts commit c8e00195ed
.
2018-09-13 12:14:56 -07:00
Cameron Gutman
e3a8f010c3
Fixes for experimental Qt audio renderer
2018-09-13 12:00:51 -07:00
Cameron Gutman
f2f8f92172
Add gamepad mapping DB from https://github.com/gabomdq/SDL_GameControllerDB
2018-09-13 11:58:32 -07:00
Cameron Gutman
6e06174db6
Add experimental Qt audio renderer
2018-09-13 08:17:26 -07:00
Cameron Gutman
c8e00195ed
Process Qt events in the SDL loop
2018-09-13 08:03:06 -07:00
Cameron Gutman
64bc189010
Fixes to SDL audio renderer and autodetection support
2018-09-13 07:46:01 -07:00
Cameron Gutman
12496e4432
Refactor audio rendering into a separate class
2018-09-13 06:23:06 -07:00
Cameron Gutman
9e2fd67487
Add option to enable mouse acceleration for remote desktop usage
2018-09-09 13:21:11 -07:00
Cameron Gutman
af17d56cbd
Add option to disable mDNS PC discovery. Fixes #50
2018-09-09 12:33:19 -07:00
Cameron Gutman
6e0a657b76
Update readme and metadata for Beta 1 features
2018-09-09 11:53:58 -07:00
Cameron Gutman
b0a9fc7085
Add Help option to connection failure dialog
2018-09-09 11:53:14 -07:00
Cameron Gutman
0b94ad1fef
Add help link in Add PC failure dialog
2018-09-09 11:19:33 -07:00
Cameron Gutman
9dcd856099
Blacklist Kepler GPUs for HEVC due to hybrid decode support present in some drivers
2018-09-09 10:48:01 -07:00
Cameron Gutman
cfbcc4093c
Reduce UI jank when transitioning to the stream segue
2018-09-09 10:17:32 -07:00
Cameron Gutman
b8169ae08b
Fix broken quit dialog transition to next app
2018-09-09 10:08:23 -07:00
Cameron Gutman
103625fbdd
Version v0.4.0
2018-09-08 16:58:03 -07:00
Cameron Gutman
4712080a1b
Fix centering of streaming window and size after toggling full-screen on Windows
2018-09-08 16:01:35 -07:00
Cameron Gutman
93c683be3a
Allow renderers that force V-sync on to run without it when streaming higher than the display refresh rate
2018-09-08 15:27:21 -07:00
Cameron Gutman
c9a7c15f98
Improve unsupported FPS options and performance
2018-09-08 15:09:46 -07:00
Cameron Gutman
64a08f0533
Allow higher than display refresh rate streaming with unsupported FPS option
2018-09-08 14:34:11 -07:00
Cameron Gutman
52c6455ca5
Avoid sending a click event on focus gain on Linux
2018-09-08 14:05:42 -07:00
Cameron Gutman
238681d72f
Merge pull request #67 from jhakonen/capture-on-activated-window
...
Capture mouse cursor when clicking inactive window
2018-09-08 14:01:27 -07:00
Janne Hakonen
300b53f28c
Capture mouse cursor when clicking inactive window
2018-09-08 16:39:20 +03:00
Janne Hakonen
3dabb1c891
Fixed < key in keyboard not working
2018-09-08 14:16:27 +03:00
Cameron Gutman
4381f7a973
Apply changes to preferences when loading the settings page
2018-09-07 23:16:13 -07:00
Cameron Gutman
77b767ae5b
Hide autodetect option for audio configuration since it's broken on macOS and Linux (and to some extent, Windows)
2018-09-07 22:51:56 -07:00
Cameron Gutman
2c4f78133f
Avoid inflating MessageDialogs for each app in the grid. Fixes scrolling jank on app grid.
2018-09-07 17:33:34 -07:00
Cameron Gutman
ec2c181f4e
Use 4 threads for fetching box art
2018-09-07 17:30:43 -07:00
Cameron Gutman
fae98eb13a
Limit box art fetching to a single thread to improve UI responsiveness
2018-09-07 17:02:52 -07:00
Cameron Gutman
f1d117d5d7
Ensure FFmpeg log messages are written to the debug log
2018-09-07 15:53:10 -07:00
Cameron Gutman
529ac8041a
Only write a dump for the first unhandled exception
2018-09-07 15:45:35 -07:00
Cameron Gutman
391e84e0f4
Create a crash dump when Moonlight crashes on Windows
2018-09-07 14:16:59 -07:00
Cameron Gutman
6a2b717ff1
Run in native resolution on Retina displays when streaming above scaled resolution
2018-09-07 01:12:18 -07:00
Cameron Gutman
475a39cb73
Recreate the decoder when moving to a new display to allow Pacer to get the new refresh rate
2018-09-06 19:42:53 -07:00
Cameron Gutman
4dba74e2f9
Fix handling of undefined and non-matching refresh rate
2018-09-06 19:16:59 -07:00
Cameron Gutman
587d783955
Use SDL_WINDOWPOS_CENTERED_DISPLAY() to fix incorrect positioning on multi-display system on macOS
2018-09-06 18:53:00 -07:00
Cameron Gutman
5da156b433
Prefer H.264 for higher decoding performance in very high load situations
2018-09-05 18:57:40 -07:00
Cameron Gutman
b2eeb63b6f
Mark the full-screen display mode as recommended due to lower latency and better frame pacing
2018-09-05 17:46:29 -07:00
Cameron Gutman
a7517dace3
Switch to ItemDelegate for PCs and Apps for proper hover and click behavior
2018-09-05 17:08:27 -07:00
Cameron Gutman
bd9f2d2009
Remove unused Menu items in ToolButtons
2018-09-05 16:38:52 -07:00
Cameron Gutman
78730f7235
Wake host on a separate worker thread to avoid hanging the UI for DNS resolution
2018-09-05 16:10:32 -07:00
Cameron Gutman
8a2491d955
Populate RC strings for Windows builds
2018-09-05 15:52:50 -07:00
Cameron Gutman
0d68faf40c
Remove unused parameter
2018-09-05 15:45:36 -07:00
Cameron Gutman
957a2b2169
Fix box art caching location and cleanup of cache directory by the uninstaller
2018-09-05 15:45:10 -07:00
Cameron Gutman
856318f947
Start the SDL window on the same display as the Qt UI was displayed on
2018-09-05 15:15:53 -07:00
Cameron Gutman
6d0fc22ab5
Ensure symbols are always generated for debugging purposes
2018-09-04 00:18:02 -07:00
Cameron Gutman
9a71b4c237
Improve mouse batching to only batch if the last event was less than 1 millisecond ago
2018-09-04 00:09:35 -07:00
Cameron Gutman
9aa487418f
Force V-Sync enabled for DXVA2 windowed with DWM composition enabled
2018-09-03 23:34:15 -07:00
Cameron Gutman
203b2fcaca
Batch mouse move events for high DPI mice
2018-09-04 00:37:21 -04:00
Cameron Gutman
dae21f2638
Detect native panel resolution on Retina displays. Fixes #59
2018-09-04 00:21:37 -04:00
Cameron Gutman
af6e99cbac
Select the highest full-screen refresh rate that our stream FPS evenly divides
2018-09-03 22:54:41 -04:00
Cameron Gutman
6d6acf4308
Fix release builds
2018-09-03 22:47:31 -04:00
Cameron Gutman
7dd4815edf
Allow selection between full-screen exclusive mode and borderless windowed mode
2018-09-03 22:17:34 -04:00
Cameron Gutman
2c068a99a3
Allow FFmpeg renderers to enforce V-sync being enabled or disabled
2018-09-03 20:57:09 -04:00
Cameron Gutman
fa93364ddd
Ensure the CVDisplayLink is synchronized to the display that our window is on
2018-09-03 20:19:24 -04:00
Cameron Gutman
9b1eef3f63
Pass AV_HWACCEL_FLAG_IGNORE_LEVEL for VDPAU per FFmpeg documentation recommendation
2018-09-03 17:06:21 -04:00
Cameron Gutman
ed6c07fd4b
Display all frames even if they are corrupt or missing references (as will happen during reference frame invalidation)
2018-09-02 18:45:29 -04:00
Cameron Gutman
5ad96f5287
Display a dialog when the connection is terminated by the remote PC
2018-09-02 18:34:10 -04:00
Janne Hakonen
b96ace7f04
Release mouse cursor when window focus is lost
2018-09-02 00:31:37 +03:00
Cameron Gutman
234a8dc3d5
Fix build with HAVE_SLVIDEO
2018-08-31 10:40:25 -04:00
Cameron Gutman
0467c2f893
Don't rely on Qt 5.10 icon feature
2018-08-31 02:28:26 -04:00
Cameron Gutman
762fe92933
Allow streaming with no audio device. Fixes #52
2018-08-31 00:09:31 -04:00
Cameron Gutman
8a8b624f47
Add logging for adding a PC and offline/online state transitions
2018-08-30 23:15:06 -04:00
Cameron Gutman
9470615c63
Use QtQuick.Dialogs 1.2 for Qt 5.9 support
2018-08-30 00:00:05 -04:00
Cameron Gutman
8f0ea700a5
Fix QML error when pairing successfully
2018-08-29 23:59:19 -04:00
Cameron Gutman
b7cbec0b1c
Pass RFI flags to decoder
2018-08-25 13:36:54 -07:00
Cameron Gutman
9be9934b8c
Add reference frame invalidation for the software decoder
2018-08-25 12:38:04 -07:00
Cameron Gutman
55f0e1e1d5
Use QT_OPENGL to set ANGLE
2018-08-25 11:59:32 -07:00
Cameron Gutman
bbd784fc85
Use ANGLE for rendering on Windows
2018-08-25 11:35:55 -07:00
Cameron Gutman
408f93732b
Fix 'invalid VADisplay' errors on renderer destruction
2018-08-25 11:21:52 -07:00
Cameron Gutman
fb53c95207
Version 0.3.0
2018-08-21 01:18:55 -07:00
Cameron Gutman
960e083152
Add manifest for Windows
2018-08-21 01:07:30 -07:00
Cameron Gutman
7e560aa09e
Use MMCSS when streaming with the DXVA renderer
2018-08-21 00:53:41 -07:00
Cameron Gutman
7d9478b774
Fix FlipEx on Windows 7
2018-08-21 00:49:29 -07:00
Cameron Gutman
0fa0ab43c9
Fix broken Alt+Tab behavior on Windows
2018-08-20 22:48:48 -07:00
Cameron Gutman
f9cdd49d2e
Add settings option to disable V-sync for lowest possible latency on Windows
2018-08-20 22:25:19 -07:00
Cameron Gutman
7661f5a3d7
Use SetThreadExecutionState() to disable the screensaver since SDL doesn't currently call that. Fixes #46
2018-08-20 21:36:23 -07:00
Cameron Gutman
395f337bbb
Switch full-screen mode back to full-screen exclusive on Windows to reduce latency by 1 frame
2018-08-20 21:19:00 -07:00
Cameron Gutman
9e9fe2a2cf
Work around DWM bug on Windows 7 causing horrible performance
2018-08-20 21:17:25 -07:00
Cameron Gutman
5bf88cfe96
Fix Mac build
2018-08-20 18:57:11 -07:00
Cameron Gutman
f7d3c10c9d
Plumb the ability to disable V-sync through the video renderers
2018-08-20 18:19:42 -07:00
Cameron Gutman
6b395c816f
Allow Pacer to wait for frames up until a few ms before v-sync for better smoothness and lower latency
2018-08-20 17:53:35 -07:00
Cameron Gutman
d6e7173af0
Add a VsyncSource for renderers that already block for V-sync
2018-08-20 17:24:47 -07:00
Cameron Gutman
1a60484abc
Use hardware vertex processing if available
2018-08-19 22:45:17 -07:00
Cameron Gutman
62f765b2b4
Switch DXVA2 to IDirect3D9Ex APIs for more detailed control of rendering
2018-08-19 21:53:39 -07:00
Cameron Gutman
1b8c3aae73
Speed up resize/full-screen by avoiding excessive decoder resets
2018-08-19 01:19:23 -07:00
Cameron Gutman
845e84adb7
Avoid the test frame for DXVA2 and VT APIs to address flickering in full-screen on Win7
2018-08-19 00:59:04 -07:00
Cameron Gutman
30f673efe1
Create Qt components with all parameters specified otherwise it will be instantiated with default properties
2018-08-16 23:29:46 -07:00
Cameron Gutman
c1b1719914
Recreate the VT decoder if the display layer fails. Minor fix to Path class.
2018-08-16 23:09:40 -07:00
Cameron Gutman
9fbdd794b9
Improve support for full-screen exclusive mode
2018-08-16 22:25:14 -07:00
Cameron Gutman
38ff2bf5cb
Store all files in the current directory for portable installations. Fixes #43
2018-08-16 21:04:47 -07:00
Cameron Gutman
345e800abd
Always submit frames to Pacer if it's using a frame queue
2018-08-16 17:59:33 -07:00
Cameron Gutman
404eaa44e4
Implement frame pacing for Windows using D3DKMTWaitForVerticalBlankEvent
2018-08-16 01:29:53 -07:00
Cameron Gutman
8e257ab241
Remove unused function
2018-08-16 00:04:28 -07:00
Cameron Gutman
fabbad5370
Fix build error on Windows and warnings
2018-08-16 00:02:43 -07:00
Cameron Gutman
7d61acb2a8
Use Pacer to drive all rendering
2018-08-15 23:57:03 -07:00
Cameron Gutman
f6a451d6e7
Add PoC VsyncSource for Windows using DwmFlush(). Soon to be replaced with D3DKMTWaitForVerticalBlankEvent().
2018-08-15 23:20:56 -07:00
Cameron Gutman
e68a15c825
Move the Vsync logic from VTRenderer into a VsyncSource
2018-08-15 22:02:15 -07:00
Cameron Gutman
f929cffce7
Let Pacer know what the display Hz and stream FPS are so it can make better drop decisions
2018-08-15 21:10:35 -07:00
Cameron Gutman
f171588616
Pass the maximum frame rate into FFmpeg renderers
2018-08-15 20:41:19 -07:00
Cameron Gutman
e467ce7ce8
Uninitialize video subsystem before allowing a racing session to start to prevent an assert from firing
2018-08-15 20:35:11 -07:00
Cameron Gutman
f714a5d0cb
Refactor frame pacing from VT renderer into a separate class for sharing with other renderers
2018-08-14 19:13:17 -07:00
Cameron Gutman
c9bf5ae79d
Prevent underflow during audio frame drop calculation
2018-08-14 17:39:29 -07:00
Cameron Gutman
cf2d8f71d6
Avoid setting timer resolution to 1 ms while Moonlight is not streaming
2018-08-13 22:23:05 -07:00
Cameron Gutman
611d9ac1ba
Pass the chroma type to the VDPAU video mixer
2018-08-13 20:02:55 -07:00
Cameron Gutman
f3309087ab
Avoid polling if the Qt window is minimized
2018-08-13 19:47:42 -07:00
Cameron Gutman
860d317330
Version 0.2.0
2018-08-12 01:42:28 -07:00
Cameron Gutman
bab11a731e
Fix uninitialized gamepad mask in multi-controller mode
2018-08-12 01:39:22 -07:00
Cameron Gutman
566181e8d7
Display error if video decoder doesn't initialize
2018-08-11 22:49:36 -07:00
Cameron Gutman
5f5f835b2e
Display a warning when running under Wayland
2018-08-11 22:42:25 -07:00
Cameron Gutman
d3c2f50b20
Remove custom VAAPI logging functions
2018-08-11 20:32:28 -07:00
Cameron Gutman
f1ee1eeb63
Avoid using window systems that SDL wasn't compiled to support
2018-08-11 20:19:20 -07:00
Cameron Gutman
bb18519e44
WIP Wayland rendering code for VAAPI
2018-08-11 19:43:36 -07:00
Cameron Gutman
5e82e8413f
Use create-dmg to get a much nicer looking DMG that's also code-signed
2018-08-11 14:52:44 -07:00
Cameron Gutman
917f6e5ee9
Only capture the mouse by default for full screen streaming
2018-08-11 14:19:42 -07:00
Cameron Gutman
91145cde0f
Bump minimum macOS version to 10.11 in line with Qt 5.11
2018-08-10 00:08:56 -07:00
Cameron Gutman
8ae01fae3f
Place logs in /tmp on macOS
2018-08-09 23:54:44 -07:00
Cameron Gutman
4e60ccb2ff
Add tooltips for toolbar buttons
2018-08-09 23:20:20 -07:00
Cameron Gutman
186052f21d
Fix update button color
2018-08-09 23:18:07 -07:00
Cameron Gutman
0fb3bb0727
Add automatic update checking. Fixes #8
2018-08-09 22:51:27 -07:00
Cameron Gutman
8f61a11452
Remove improper cast to unsigned value
2018-08-09 20:21:18 -07:00
Cameron Gutman
4b1d3b0125
Warn users when their configuration is impossible to satisfy. Fixes #26
2018-08-09 19:37:49 -07:00
Cameron Gutman
3f81d055af
Return to the PC grid if the selected PC goes offline or becomes unpaired
2018-08-09 18:48:40 -07:00
Cameron Gutman
c61182bcb2
Allow FFmpeg decoder to self-heal in cases of UAC dialogs and other unexpected loss of hardware state
2018-08-09 18:39:38 -07:00
Cameron Gutman
2fdfb3e998
Fix a few incorrectly mapped keys. Fixes #28
2018-08-06 20:30:09 -07:00
Cameron Gutman
9beb51ecac
Version 0.1.0
2018-08-05 19:36:30 -07:00
Cameron Gutman
7be167856e
Only enable game optimizations when streaming at officially supported resolutions
2018-08-05 18:09:35 -07:00
Cameron Gutman
e1d68ef097
Fix Y values wrapping at -32768
2018-08-05 18:01:50 -07:00
Cameron Gutman
5ec256a734
Fix QML warning
2018-08-05 17:09:29 -07:00
Cameron Gutman
e4d7d190e2
Suppress logging for applist queries
2018-08-05 17:03:05 -07:00
Cameron Gutman
b6763bb9f0
Fix VDPAU rendering at 4K
2018-08-05 16:33:08 -07:00
Cameron Gutman
6d9c0c96c9
Fix streaming with non-aligned resolutions with DXVA2 on my Quadro P400
2018-08-05 15:25:40 -07:00
Cameron Gutman
73dd5630df
Fix FPS setting restore logic
2018-08-05 15:09:36 -07:00
Cameron Gutman
b76645e26b
Fix resolution comparision issue with portrait displays
2018-08-05 15:03:24 -07:00
Cameron Gutman
9cc20c27ab
Add support for native resolution streaming
2018-08-05 14:55:26 -07:00
Cameron Gutman
36b42f6e50
Suppress log spam from serverinfo queries
2018-08-05 14:06:42 -07:00
Cameron Gutman
45ebf2ca7d
Add log messages for server GPU, bitrate, and slices
2018-08-05 13:32:04 -07:00
Cameron Gutman
2140c94cd1
Fix status icon centering on PC view. Fixes #10
2018-08-05 12:47:08 -07:00
Cameron Gutman
470769e910
Replace running status text with app icon overlay
2018-08-05 12:19:54 -07:00
Cameron Gutman
493165f57f
Add a busy indicator while waiting for initial contact with a PC
2018-08-05 12:13:08 -07:00
Cameron Gutman
1dcf55515b
Initial replacement of status text with status icons on the PC view
2018-08-05 11:47:14 -07:00
Cameron Gutman
b04bc5117d
Fix scaling logic in the Linux renderers using the new helper function
2018-08-04 22:31:14 -07:00
Cameron Gutman
5cbb38091b
Create new utility function for scaling with aspect ratio and use it for DXVA2
2018-08-04 22:22:15 -07:00
Cameron Gutman
b076744f00
Support HEVC software decoding and forcing HEVC without GPU support
2018-08-04 16:45:31 -07:00
Cameron Gutman
723e815546
Add warning for forcing software decoding
2018-08-04 16:15:13 -07:00
Cameron Gutman
ca72cbb135
Implement displaying launch warnings. Fixes #12
2018-08-04 16:05:37 -07:00
Cameron Gutman
1e8c2b179a
Only fill the screen in windowed mode if the stream is larger than usable display area
2018-08-04 15:34:56 -07:00
Cameron Gutman
f2ed3a8502
Make stream window resizable
2018-08-04 15:34:56 -07:00
Cameron Gutman
3117e360f4
Retry surface creation to work around transient VDP_STATUS_RESOURCES errors
2018-08-03 18:26:55 -07:00
Cameron Gutman
48a770edec
Enable HEVC support on NVIDIA GPUs with VDPAU
2018-08-03 02:49:43 -07:00
Cameron Gutman
fca402138f
Add VDPAU renderer
2018-08-03 02:11:44 -07:00
Cameron Gutman
2853e498b0
Minor debugging improvements
2018-08-02 23:24:44 -07:00
Cameron Gutman
509dba2264
Enable ffmpeg logging during codec initialization
2018-08-02 22:48:40 -07:00
Cameron Gutman
b8dd131af8
Allow gamepad input when the app doesn't have focus. Fixes #23
2018-08-02 22:36:44 -07:00
Cameron Gutman
0c18bcdd5e
Fix DXVA 2 regression on Windows
2018-08-02 22:28:59 -07:00
Cameron Gutman
624578f286
Fix decoder reinitialization after test frame
2018-08-02 21:57:16 -07:00
Cameron Gutman
c18e99c9ec
Validate that the codec is functional before using it. Fixes streaming failure with VAAPI if hardware lacks codec support
2018-08-02 21:37:46 -07:00
Cameron Gutman
979ba2dab7
Version 0.0.5
2018-08-01 23:00:55 -07:00
Cameron Gutman
56277af5d1
Fix quit error message when another PC started the streaming session
2018-08-01 22:43:20 -07:00
Cameron Gutman
608db6a3e5
Implement support for quitting apps
2018-08-01 22:32:21 -07:00
Cameron Gutman
be52272e5c
Fix state corruption caused by having 2 separate ComputerModels. Fixes #6
2018-08-01 21:29:03 -07:00
Cameron Gutman
18dd6b09bb
Remove 10 ms sleep hidden inside SDL_WaitEvent(). This fixes mouse polling rate being capped at 100 Hz (1 second / 10 ms) and the rendering FPS being capped at 90 FPS.
2018-08-01 18:26:50 -07:00
Cameron Gutman
3ed5f9edf7
Implement C++ functions for quitting apps and querying running apps
2018-07-31 22:21:39 -07:00
Cameron Gutman
017362a5d1
Only allow waking PCs that are not online and paired
2018-07-31 22:10:38 -07:00
Cameron Gutman
e250e08242
Fix AMD vendor ID
2018-07-31 18:22:10 -07:00
Cameron Gutman
141ee11e2f
Avoid HEVC on GPUs using hybrid decoding. Fixes #14
2018-07-31 18:09:09 -07:00
Cameron Gutman
4e82ea298e
Update AppStream metadata for 0.0.4a
2018-07-30 23:42:18 -07:00
Cameron Gutman
22be912788
Fix accent prompt appearing when keys are held down on macOS
2018-07-30 22:44:19 -07:00
Cameron Gutman
02242b9b34
Replace Opus submodule with prebuilt libopus 1.2.1 binaries for Windows and Mac
2018-07-30 22:10:08 -07:00
Cameron Gutman
e9c1f883da
Use full-screen desktop mode for Mac to allow Spaces to work
2018-07-30 00:03:17 -07:00
Cameron Gutman
141f6669e8
Version 0.0.4
2018-07-29 21:44:10 -07:00
Cameron Gutman
6300d242cc
Update AppStream metadata
2018-07-29 21:40:34 -07:00
Cameron Gutman
186579266c
Fix Online -> Offline computer transition
2018-07-29 19:08:29 -07:00
R. Aidan Campbell
23a9c2cd9e
context menu opened by default for offline hosts
2018-07-29 16:13:42 -07:00
R. Aidan Campbell
88631e4a63
Merge branch 'master' of github.com:cgutman/moonlight-qt
2018-07-29 16:04:53 -07:00
R. Aidan Campbell
9e744ce169
Now with WoL and PC deletion from QML. Deletion needs bugfix, possibly not committed to storage?
2018-07-29 16:04:45 -07:00
Cameron Gutman
87db4e88a5
Replace autogenerate app bundle strings with real ones and relocate the icon for Mac
2018-07-29 13:05:18 -07:00
R. Aidan Campbell
277594139b
Updated macos .app icon to use proper logo
2018-07-29 10:21:53 -07:00
Cameron Gutman
79d5e35306
Mac deployment
...
- Use the SDL2 framework wholesale instead of manually extracting dylib and headers
- Run install_name_tool on the remaining dylibs so they use the correct load path
- Add generate-dmg.sh for creating packaged Mac builds
2018-07-29 03:38:59 -07:00
Cameron Gutman
ab4b024df4
Travis CI support
2018-07-28 22:49:36 -07:00
Cameron Gutman
df26f731eb
Improve debugging messages
2018-07-28 16:06:26 -07:00
Cameron Gutman
42ed39a67f
Version 0.0.3
2018-07-28 03:13:39 -07:00
Cameron Gutman
3ad5f1478c
Comment out HDR option since it's non-working and tweak the remaining option text
2018-07-28 03:06:11 -07:00
Cameron Gutman
a81b501d7d
Hide the gamepad mapping button since it's unimplemented
2018-07-28 01:27:42 -07:00
Cameron Gutman
871988b2cb
Add 1440p and up to 90 FPS streaming options for > 60 Hz monitors
2018-07-28 01:22:31 -07:00
Cameron Gutman
59d087adf5
Add function for querying maximum supported streaming frame rate
2018-07-28 00:25:52 -07:00
Cameron Gutman
d9ed3f9694
Fix incorrect key mappings with non-QWERTY keyboards on both host and client
2018-07-27 02:08:54 -07:00
Cameron Gutman
e652dbcc79
Version 0.0.2
2018-07-27 00:14:29 -07:00
Cameron Gutman
717c3903d1
Fix top padding for grid views
2018-07-26 22:47:48 -07:00
Cameron Gutman
5854ce2000
Fix handling of long app names
2018-07-26 22:39:45 -07:00
Cameron Gutman
eb1316ce32
Avoid asserting if we get a box art load completion callback for an app that's gone
2018-07-26 22:16:27 -07:00
Cameron Gutman
c31e7262b2
Fix decoding of non-ASCII characters
2018-07-26 22:15:52 -07:00
Cameron Gutman
9e6aadffa1
Populate the DXVA2_VideoDesc with format details from the AVFrame
2018-07-26 21:04:05 -07:00
Cameron Gutman
0bde932550
Prevent HEVC streaming with the software decoder for performance reasons
2018-07-26 19:26:22 -07:00
Cameron Gutman
f5499be215
Warn when no hardware decoding is available
2018-07-26 12:13:38 -07:00
Cameron Gutman
42988e0dbf
Limit log file sizes to 10k lines
2018-07-26 00:21:26 -07:00
Cameron Gutman
b16aac0c06
Fix priority and formatting on many debug messages
2018-07-25 23:47:32 -07:00
Cameron Gutman
7c74cdc50b
Add enhanced logging support, including log to file for release builds
2018-07-25 23:25:17 -07:00
Cameron Gutman
34494e4c89
Add initial WiX installer for Windows
2018-07-25 02:53:51 -07:00
Cameron Gutman
03dc563b32
Create Moonlight png for WiX bootstrapper
2018-07-24 21:11:48 -07:00
Cameron Gutman
5e4182f0a0
Add Moonlight.ico for Windows and script to generate it
2018-07-24 20:07:10 -07:00
Cameron Gutman
010475e8a2
Use per-display undefined window positions
2018-07-22 18:40:15 -07:00
Cameron Gutman
bd170c4bd6
Always use the current display mode and just let the renderers scale the output
2018-07-22 18:28:17 -07:00
Cameron Gutman
386e463942
Also use the SDL icon for Linux
2018-07-22 17:42:31 -07:00
Cameron Gutman
9d840afdfb
Add an SDL window icon for Windows
2018-07-22 17:07:45 -07:00
Cameron Gutman
83b81aad4b
Don't capture the mouse initially on debug builds
2018-07-22 16:21:15 -07:00
Cameron Gutman
cf3cbd627d
Use full-screen windowed mode to avoid having to enable V-Sync on DXVA2
2018-07-22 15:42:17 -07:00
Cameron Gutman
3bb62a82e1
Avoid doing a display mode change on Linux when entering full-screen
2018-07-22 14:03:47 -07:00
Cameron Gutman
a06a625d48
Rework the logo SVG to look better as an app icon, by Jorys Paulin
2018-07-22 03:21:19 -07:00
Cameron Gutman
13d686b6f8
Rename output binary to moonlight
2018-07-22 03:16:53 -07:00
Cameron Gutman
18c5e19ac9
Add files for Flatpak deployment
2018-07-22 01:51:05 -07:00
Cameron Gutman
ad57a55d12
Add (untested) Steam Link video decoding/rendering
2018-07-21 20:29:05 -07:00
Cameron Gutman
dc723a8da1
Fix strict aliasing violation
2018-07-21 19:16:08 -07:00
Cameron Gutman
b073c90f0f
Fix build on OpenSSL 1.0.1
2018-07-21 19:02:12 -07:00
Cameron Gutman
519626a6d5
Fix compilation with Qt 5.9
2018-07-21 18:47:41 -07:00
Cameron Gutman
b7b452875d
Add a missing HAVE_FFMPEG guard
2018-07-21 17:32:00 -07:00
Cameron Gutman
eb536c2273
Overhaul platform and decoder/renderer detection
2018-07-21 17:00:09 -07:00
R. Aidan Campbell
c816a6198c
fix macos build: for macos, Q_OS_UNIX is also defined
2018-07-21 14:31:37 -07:00
Cameron Gutman
399154f5f5
Implement VAAPI rendering for X11
2018-07-21 00:16:03 -07:00
Cameron Gutman
64a839c2f9
Create the window after starting streaming to avoid a mouse capture bug in SDL on Windows
2018-07-20 19:55:07 -07:00
Cameron Gutman
20288210be
Fix VT video centering after transition from windowed to full screen
2018-07-20 19:37:54 -07:00
Cameron Gutman
7b235743cb
Count the window chrome size in our placement decision and fix sizing after full-screen toggle
2018-07-20 19:18:55 -07:00
Cameron Gutman
4c507f1179
Move SDL subsystem init into appropriate components to fix gamepad detection issue
2018-07-20 18:15:46 -07:00
Cameron Gutman
e516861366
Set window dimensions properly when toggling full-screen
2018-07-20 16:01:22 -07:00
R. Aidan Campbell
48c2a8c5b0
Merge branch 'master' of github.com:cgutman/moonlight-qt
2018-07-20 15:47:57 -07:00
R. Aidan Campbell
b41e8c07d2
Switched settings page to two-pane layout
2018-07-20 15:47:50 -07:00
Cameron Gutman
10b5245919
Reset the decoder when D3D state is lost
2018-07-20 15:31:57 -07:00
R. Aidan Campbell
86874a2e1c
minor wording change in settings
2018-07-20 14:36:39 -07:00
R. Aidan Campbell
f951a01a68
changed audio configuration to a dropdown, allowing auto/stereo/surround
2018-07-20 14:35:47 -07:00
R. Aidan Campbell
d12fed3e7f
remove unused settings
2018-07-20 14:24:27 -07:00
R. Aidan Campbell
4566139c75
now with video codec selection
2018-07-20 14:22:22 -07:00
R. Aidan Campbell
38df63b962
now with video decoder selection
2018-07-20 14:14:38 -07:00
Cameron Gutman
faaf9dfa07
Fix crashes when restarting streaming with DXVA2 renderer due to leaked surface references
2018-07-20 13:10:54 -07:00
Cameron Gutman
9c2befc386
Only require OpenSSL 1.1 on Apple platforms where SecureTransport requires keys from PEM_write_bio_PrivateKey_traditional()
2018-07-19 23:19:00 -07:00
Cameron Gutman
e85ca2a6c9
Reduce VideoToolbox renderer video latency
2018-07-18 22:25:46 -07:00
Cameron Gutman
e32aace443
Draw a black background behind the rendering
2018-07-18 22:07:43 -07:00
Cameron Gutman
bd8e4a4bce
Fix DXVA video centering
2018-07-18 21:48:46 -07:00
Cameron Gutman
5ee1358712
Implement a proper destructor for ComputerManager to prevent polling threads from living beyond QGuiApplication
2018-07-18 21:27:43 -07:00
Cameron Gutman
06501bd4b7
Fix video scaling on DXVA2
2018-07-18 19:10:14 -07:00
Cameron Gutman
a4ad58d9ec
Fix some Clang static analysis warnings
2018-07-18 18:39:33 -07:00
Cameron Gutman
76d99cd60e
Raise combo keys for all special combos, not just quit
2018-07-18 00:14:12 -07:00
Cameron Gutman
1b85dcc829
Improve frame pacing on VideoToolbox renderer
2018-07-18 00:11:17 -07:00
Cameron Gutman
c97e298b80
Use the queueFrame() helper
2018-07-17 20:05:59 -07:00
Cameron Gutman
a89cadc520
Separate FFmpeg decoder from the Session class ( #4 )
2018-07-17 20:00:16 -07:00
R. Aidan Campbell
ec68f2ae89
logo tweaks: border sizing and shadow
2018-07-17 19:40:08 -07:00
R. Aidan Campbell
2be5040c24
Now with surround-sound checkbox support
2018-07-17 19:39:23 -07:00
R. Aidan Campbell
c23b1a31be
Now with default bitrate suggestions per resolution and framerate
2018-07-17 18:52:06 -07:00
Cameron Gutman
d3f7204cff
Set the main thread to high priority since it's used for rendering
2018-07-16 21:25:59 -07:00
Cameron Gutman
ca20d28a24
Fix SDL renderer scaling at non-native resolution
2018-07-16 02:07:32 -07:00
Cameron Gutman
998d837ff4
Optimize resolution and window size selection
2018-07-16 01:55:36 -07:00
Cameron Gutman
641b50b7ee
Use larger packets when streaming to local PCs
2018-07-16 01:12:53 -07:00
Cameron Gutman
68bbeafab3
Adapt the audio latency mitigation to WASAPI quirks and add a "stop the world" mode for quick resync
2018-07-15 21:43:43 -07:00
Cameron Gutman
7f8d4c88c1
Implement audio latency mitigations
2018-07-15 20:17:08 -07:00
R. Aidan Campbell
8c65ee8bc5
Now with using, saving, and loading of the resolution and FPS settings
2018-07-15 18:27:41 -07:00
Cameron Gutman
a6ac893e1e
Implement VideoToolbox rendering
2018-07-15 18:11:57 -07:00
R. Aidan Campbell
3a4da50bbb
now with a swanky svg icon replacing a 128px png
2018-07-15 14:59:26 -07:00
Cameron Gutman
9f605230e5
Allow building on XCode 8
2018-07-15 14:03:41 -07:00
R. Aidan Campbell
565b61c470
Merge branch 'master' of github.com:cgutman/moonlight-qt
2018-07-15 13:09:22 -07:00
R. Aidan Campbell
d1d40421eb
replaced png icons with svgs
2018-07-15 13:09:16 -07:00
Cameron Gutman
5787deeee1
Basic VT decoding without rendering
2018-07-15 12:48:17 -07:00
Cameron Gutman
babbae87d3
Stub out VideoToolbox renderer
2018-07-15 11:53:55 -07:00
Cameron Gutman
cb154ad3d4
Fix tearing with DXVA2 in full screen mode
2018-07-15 00:43:10 -07:00
Cameron Gutman
af503a9147
Fix spurious "Failed to connect to PC" dialogs for mDNS-discovered hosts
2018-07-13 22:38:58 -07:00
Cameron Gutman
611b504bf9
Minor DXVA2 logging fixes
2018-07-13 20:49:51 -07:00
Cameron Gutman
08bc4770cd
Fix key repeating
2018-07-13 20:30:07 -07:00
Cameron Gutman
f9ef0a99d6
Fix DX threading violation by setting D3DCREATE_MULTITHREADED
2018-07-13 20:20:30 -07:00
Cameron Gutman
89e332048e
Ensure the DXVA2 device is actually hardware with YUV2RGB conversion ability before using it
2018-07-13 20:19:32 -07:00
Cameron Gutman
c62fff8fc4
Fix uninitialized variables found by Valgrind
2018-07-13 02:50:02 -07:00
Cameron Gutman
1cae5f83e5
DXVA2 Hardware Decoding ( #3 )
2018-07-13 02:31:21 -07:00
Cameron Gutman
86f843464c
Hide the toolbar when the StreamSegue page is visible
2018-07-09 00:12:27 -07:00
Cameron Gutman
e8e9e17e63
Improve UI responsiveness when stopping a stream
2018-07-09 00:09:06 -07:00
Cameron Gutman
908850cc5d
Add the smooth grid scaling for PCs too
2018-07-08 23:37:00 -07:00
Cameron Gutman
644c3c0c24
Cache app grid items to smooth out jank during scrolling and resizing
2018-07-08 23:34:30 -07:00
Cameron Gutman
a56d27e3f2
Move the PC SVGs back where they belong
2018-07-08 23:27:20 -07:00
Cameron Gutman
98b76d3203
Fix Material theme
2018-07-08 23:24:26 -07:00
Cameron Gutman
c35d07c961
Add scroll bars to the computer grid and app grid
2018-07-08 23:05:36 -07:00
Cameron Gutman
c4a1f74b02
Hook up a few of the preferences
2018-07-08 22:56:38 -07:00
Cameron Gutman
62cf95d55e
Prevent multiple instances of the same page on the StackView and stub out GamepadMapper
2018-07-08 22:37:29 -07:00
Cameron Gutman
a47f59d1a4
Properly manage the lifetime of polling in the AppView and PcView
2018-07-08 22:07:20 -07:00
Cameron Gutman
83ca211d75
Add a segue to the streaming window
2018-07-08 22:06:52 -07:00
Cameron Gutman
5a04a256e0
Add additional serverinfo attributes and check for 4K compatibility
2018-07-08 20:53:24 -07:00
Cameron Gutman
d0375a458a
Bound thread count at 4 (same as max slices) and don't use HEVC with the software decoder due to lack of slicing support in common-c
2018-07-08 17:50:42 -07:00
Cameron Gutman
7023bcf504
Make StreamingPreferences accessible from QML for Settings integration
2018-07-08 17:33:47 -07:00
R. Aidan Campbell
67eb09d753
Merge branch 'master' of github.com:cgutman/moonlight-qt
2018-07-08 11:38:07 -07:00
R. Aidan Campbell
c2966a5c66
Now with an application icon for MacOS
2018-07-08 11:38:01 -07:00
MINICOM\mrb11
640f47300c
Make settings page scrollable and match the app color scheme
2018-07-08 11:20:56 -07:00
MINICOM\mrb11
33a0188fea
Fill out remainder of dummy settings
2018-07-08 11:12:22 -07:00
Michelle Bergeron
8ebb594089
Beginnings of settings page ( #2 )
...
* Make Moonlight icon the window icon for all windows
* Add dummy settings
* Add slider
* FIx comments
2018-07-08 10:19:08 -07:00
R. Aidan Campbell
7bc139c50d
Now with identification of the currently running app
2018-07-08 08:44:09 -07:00
R. Aidan Campbell
c27711582a
now with smooth window scaling for app listing
2018-07-08 08:28:28 -07:00
Cameron Gutman
d7f09382e0
Use a less recent version of QtQuick.Layouts to support Fedora 28
2018-07-07 22:59:05 -07:00
Cameron Gutman
d9301fc06d
Fix build on Linux
2018-07-07 22:41:32 -07:00
Cameron Gutman
272aa6896e
Fix unused member warning on Clang
2018-07-07 22:26:12 -07:00
Michelle Bergeron
b630c07653
Add navigation toolbar ( #1 )
...
* Add preferences view skeleton
* Add toolbar & help button
* Add working back button
* Title of page in toolbar
* Remove unused imports
* Make comments better!
* Remove unused drawer element
* Remove superfluous > 1 check
* Use point size font instead of pixel size
* Add AppView page title
2018-07-07 22:15:02 -07:00
Cameron Gutman
826fe4cd03
Implemented software video decoding and special key combos
2018-07-07 21:52:20 -07:00
Cameron Gutman
02f4f193a9
Add ffmpeg libraries for Windows x64
2018-07-07 20:45:54 -07:00
Cameron Gutman
bf671752df
UI polish
2018-07-07 16:49:13 -07:00
Cameron Gutman
997fdc1ef6
Fix linking on Windows
2018-07-07 16:37:11 -07:00
Cameron Gutman
60ad95bb7b
Start work on launching a stream from QML and rip out remaining QtWidgets
2018-07-07 16:30:26 -07:00
Cameron Gutman
d5cc07f107
Remove unused enum value to fix GCC warnings
2018-07-07 15:26:20 -07:00
Cameron Gutman
78746824e2
Fix inconsistent ComputerModel view of the ComputerManager's state after new PC is added
2018-07-06 00:42:07 -07:00
Cameron Gutman
ecebf75b88
Implement manually adding PCs
2018-07-06 00:34:16 -07:00
Cameron Gutman
6687936e2f
Implement pairing via GUI
2018-07-05 23:12:55 -07:00
Cameron Gutman
1b1ad86271
Keep a singleton ComputerManager outside of the Models
2018-07-05 22:08:55 -07:00
R. Aidan Campbell
0d26ef7e5c
Now with pin generation for pairing
2018-07-05 21:16:32 -07:00
Cameron Gutman
bd986bfb21
Sort the app list in alphabetical order
2018-07-05 20:54:31 -07:00
R. Aidan Campbell
79435b60ff
Now with notification dialog for attempts to pair while busy
2018-07-05 20:49:10 -07:00
Cameron Gutman
f120197c21
Fix ComputerModel.paired
2018-07-05 20:41:17 -07:00
Cameron Gutman
ebf27cdcaf
More UI work including hooking up PcView -> AppView transition
2018-07-05 20:37:51 -07:00
Cameron Gutman
f83c13ad85
Cleanup ComputerModel and remove root Frame from PcView
2018-07-05 20:11:35 -07:00
Cameron Gutman
b0151da455
Add AppModel and AppView for loading apps and modify BoxArtManager to return QUrls for QML
2018-07-05 20:07:05 -07:00
R. Aidan Campbell
95eebdbe66
now with pairing and add-host dialogs
2018-07-04 18:48:09 -07:00
Cameron Gutman
485c014490
Fix crash on the placeholder icon and fix display of multiple PCs
2018-07-04 16:52:16 -07:00
Cameron Gutman
3a7d3c807e
WIP Quick GUI work
2018-07-04 16:40:21 -07:00
Cameron Gutman
6a3b95a4b1
Start GUI rewrite in QML
2018-07-04 14:16:25 -07:00
Cameron Gutman
04c9a3a2eb
Implement Wake-on-LAN
2018-07-03 22:11:21 -07:00
Cameron Gutman
a02931f5fc
Cleanup some unused parameter warnings
2018-07-01 11:54:12 -07:00
Cameron Gutman
5729f65138
Implement mDNS PC discovery
2018-06-30 23:07:31 -07:00
Cameron Gutman
7186f20e05
Integrate forked QMdnsEngine with some required fixes for GameStream (submitted upstream)
2018-06-30 21:41:00 -07:00
Cameron Gutman
4c75456aee
Fix improper handling of polling thread termination
2018-06-28 03:52:42 -07:00
Cameron Gutman
3d7c8d4bfb
Fix some warnings on GCC
2018-06-28 03:13:38 -07:00
Cameron Gutman
e5ef1bcfc5
Stub out the error handling when launch/resume fails
2018-06-28 02:10:31 -07:00
Cameron Gutman
d1a512538c
Fix input bugs from the C++ transistion and implement special key combo stubs
2018-06-28 02:04:51 -07:00
Cameron Gutman
0821c66d8c
Rewrite streaming code to C++ and forklift most of the setup out of the GUI code
2018-06-28 01:44:43 -07:00
Cameron Gutman
cad95f12f6
More PoC streaming code (closer to final)
2018-06-27 23:54:24 -07:00
Cameron Gutman
94ecc4a1c8
Always return 1 gamepad in single controller mode
2018-06-27 23:53:12 -07:00
Cameron Gutman
7d14b2a2be
Fix endianness issue with the RI key IV
2018-06-27 23:52:29 -07:00
Cameron Gutman
6e4104ac15
Add StreamingPreferences class
2018-06-27 23:15:13 -07:00
Cameron Gutman
6fa4faa285
Rename http folder to backend to better align with the classes inside
2018-06-27 22:30:33 -07:00
Cameron Gutman
1b36071e02
Additional work in MainWindow for integration with new classes
2018-06-27 22:16:57 -07:00
Cameron Gutman
d7d11635a0
Add BoxArtManager for loading box art with caching
2018-06-27 22:02:29 -07:00
Cameron Gutman
135568b5ee
Minor class improvements
2018-06-27 19:55:44 -07:00
Cameron Gutman
36c8b6ce53
Persist host changes after update
2018-06-27 02:08:56 -07:00
Cameron Gutman
ce4e469b7b
We can't change audio config after sending the launch or resume request, so autodetection will need to happen earlier
2018-06-27 01:39:48 -07:00
Cameron Gutman
0bd2274462
Simplify IdentityManager by using QSettings instead of files
2018-06-27 01:36:56 -07:00
Cameron Gutman
a5d1099e26
Add code to serialize and deserialize hosts and applists for persistence
2018-06-27 01:21:55 -07:00
Cameron Gutman
d6b820d707
Implement fetching box art
2018-06-26 23:49:44 -07:00
Cameron Gutman
76d39c08da
Implement app list parsing
2018-06-26 23:39:28 -07:00
Cameron Gutman
16d7dca784
Fix analog sticks and triggers
2018-06-26 22:58:32 -07:00
Cameron Gutman
c6b19826d3
Fix typo causing pairing to break
2018-06-26 22:58:15 -07:00
Cameron Gutman
35c28116f5
Cleanup use of static NvHTTP members
2018-06-26 21:49:33 -07:00
Cameron Gutman
fca059522c
Implement more of ComputerManager
2018-06-26 21:47:01 -07:00
Cameron Gutman
8ce2b410d2
Ensure the PC that responded is the one we're querying
2018-06-26 19:15:28 -07:00
Cameron Gutman
bb95c4db78
Make IdentityManager a singleton
2018-06-26 19:03:55 -07:00
Cameron Gutman
6c8349787a
Only emit state changed once per iteration
2018-06-26 18:44:30 -07:00
Cameron Gutman
6a37a9d77a
Move resources back to root
2018-06-26 18:43:53 -07:00
Cameron Gutman
5ee52f15c8
Work on Computer Manager
2018-06-24 15:13:37 -07:00
Cameron Gutman
cded01187d
More streaming code
2018-06-24 00:14:23 -07:00
Cameron Gutman
4fe6c24702
Fix subsequent SSL failures on Windows
2018-06-23 23:46:16 -07:00
Cameron Gutman
416724f843
More SDL work
2018-06-23 22:16:59 -07:00
Cameron Gutman
e1192d61e1
Windows bringup
2018-06-23 20:08:17 -07:00
Cameron Gutman
ce64966843
Reorganize and prepare for SDL integration
2018-06-23 18:46:59 -07:00
Cameron Gutman
ea459a0319
Start integration with moonlight-common-c
2018-05-06 02:16:05 -07:00
Cameron Gutman
f80450176a
Fix SSL on macOS
2018-05-05 21:59:30 -07:00
Cameron Gutman
0357e6865d
Upgrade macOS OpenSSL library to 1.1
2018-05-05 21:42:46 -07:00
Cameron Gutman
63b6da601a
Reorganize source and add libraries
2018-05-05 18:33:59 -07:00