Commit graph

1215 commits

Author SHA1 Message Date
Cameron Gutman
5f25e0d4e2 Add limited support for frame pacing to EGLRenderer 2020-05-16 15:59:10 -07:00
Cameron Gutman
4bbe571f5f Fix build without FFmpeg and with older EGL 1.5 headers 2020-05-16 13:25:10 -07:00
Cameron Gutman
c58d21375c EGL 1.4 doesn't have EGLAttrib either 2020-05-16 12:20:52 -07:00
Cameron Gutman
ed128c558f Add support for EGLRenderer on EGL 1.4 2020-05-16 12:13:00 -07:00
Cameron Gutman
828932d95c Fix EGL detection on RPi 2020-05-16 11:10:45 -07:00
Cameron Gutman
42ced309d3 Restore the original GL attributes after EGLRenderer is destroyed 2020-05-15 20:22:11 -07:00
Cameron Gutman
1fcd306879 Fix EGLRenderer when SDL isn't built with X11 or Wayland backends 2020-05-15 20:01:22 -07:00
Cameron Gutman
26c9ad7f06 Use eglGetProcAddress() for all GLES 2.0 extensions 2020-05-15 19:39:41 -07:00
Cameron Gutman
4b7b01ce0a Fix EGL build 2020-05-15 17:54:45 -07:00
Cameron Gutman
6632154906 Remove some unnecessary headers and definitions 2020-05-15 16:59:29 -07:00
Cameron Gutman
ca67c7ef43 Provide a main function for the compile test 2020-05-15 16:57:09 -07:00
Cameron Gutman
c4039a929c Use a compile test for EGL support 2020-05-15 16:46:03 -07:00
Cameron Gutman
a1b74e1220 Fix vaExportSurfaceHandle() detection with i965 VAAPI driver 2020-05-14 20:56:24 -07:00
Cameron Gutman
01f6188824 Add VAAPI_FORCE_DIRECT and VAAPI_FORCE_INDIRECT env vars to control rendering technique 2020-05-13 19:45:30 -07:00
Cameron Gutman
283f31a734 Test if vaExportSurfaceHandle() works before claiming EGL export is supported 2020-05-13 19:39:45 -07:00
Cameron Gutman
b800ce9ebe Allow use of VA drivers without VAEntrypointVideoProc 2020-05-13 19:31:25 -07:00
Cameron Gutman
eb9d54465c Don't use EGLRenderer if not built with SDL 2.0.10+ 2020-05-13 19:19:11 -07:00
Cameron Gutman
eb9e1f81d4 Enable the EGLRenderer to use the render thread 2020-05-13 19:09:20 -07:00
Cameron Gutman
ddfbd70b55 Remove Wayland performance warning message 2020-05-13 18:56:18 -07:00
Cameron Gutman
51e9ab83ad Send a null AVFrame to indicate end of stream to allow renderers to do render thread cleanup 2020-05-13 18:55:21 -07:00
Cameron Gutman
5ed7e03b2e
Merge pull request #365 from xdbob/wayland_for_upstream
Introduce a new FFMPEG frontend renderer: EGLRenderer
2020-05-13 18:39:18 -07:00
Cameron Gutman
0cb8d5b12f Add the older dList DLLs for the 390 drivers to the blacklist
Fixes #386
2020-05-13 04:25:53 -07:00
Cameron Gutman
b4548c1af2 Flush all window events after SDL_CreateRenderer() 2020-05-12 18:41:36 -07:00
Antoine Damhet
0a396f3112 Introduce a new FFMPEG frontend renderer: EGLRenderer
Right now this renderer works on X11 & Wayland with VAAPI as a backend.

Some rendering latency benchmarks on my `i7-10510U` (with
`intel-media-driver` 20.1.1 which cause a *huge* regression with the
SDL_Renderer):
|             | X11    | Wayland |
| Before      | 6.78ms | 22.50ms |
| EGLRenderer | 0.76ms | 00.77ms |

Signed-off-by: Antoine Damhet <antoine.damhet@lse.epita.fr>
2020-05-12 11:11:35 +02:00
Cameron Gutman
2aa18dc88f Add a bit of extra padding on the right for the scrollbar 2020-05-10 13:02:10 -07:00
Cameron Gutman
8d89983eeb Parent ScrollBars to their Flingables, not the StackView
This ensures they disappear when navigating to a new page
2020-05-10 12:53:27 -07:00
Cameron Gutman
573c470965 Ensure the title label doesn't get drawn over when the window is small 2020-05-10 12:38:56 -07:00
Cameron Gutman
daa0c751e2 Fix settings layout spacing and centering 2020-05-10 12:30:15 -07:00
Cameron Gutman
e1babefc80 Center toolbar text 2020-05-10 11:48:24 -07:00
Cameron Gutman
ce99b0e162 Improve settings page behavior when the window is too small 2020-05-10 11:12:37 -07:00
Cameron Gutman
4c3a23b1bd Resize toolbar text 2020-05-09 23:02:09 -07:00
Cameron Gutman
12016af326 Display version number in toolbar on the settings page
Fixes #341
2020-05-09 22:20:39 -07:00
Cameron Gutman
fc9871b075 Delay mouse capture until after SDL_RecreateWindow() has been called 2020-05-09 19:48:13 -07:00
Cameron Gutman
3cb3c1c6d8 Revert "Use the physical desktop size in pixels rather than the native resolution on macOS"
Let's wait until functionality is confirmed on a 5K iMac before doing this.

This reverts commit 8fe3474589.
2020-05-09 16:52:18 -07:00
Cameron Gutman
8fe3474589 Use the physical desktop size in pixels rather than the native resolution on macOS
It seems like some Macs (5K iMacs at least) don't have kDisplayModeNativeFlag set
2020-05-09 16:34:48 -07:00
Cameron Gutman
dc3c565ec0 Move serialization and deserialization into NvApp class 2020-05-07 19:54:36 -07:00
Cameron Gutman
350c7d7081 Persist the IsAppCollectorGame attribute 2020-05-07 19:37:10 -07:00
Cameron Gutman
0428bc8fe3 Generate synthetic mouse button up if the mouse has left the window and the button is raised 2020-05-07 19:26:02 -07:00
Cameron Gutman
514a8575a2 Use the viewport size for computing the overlay position 2020-05-07 18:56:53 -07:00
Cameron Gutman
fc11377552 Fix build on Qt 5.11 and earlier 2020-05-07 17:13:16 -07:00
Cameron Gutman
fbaa70a2ae Enable the right stick to scroll the settings page. Fixes #220 2020-05-06 22:38:52 -07:00
Cameron Gutman
f30c11ddf4 Properly fix SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH on macOS VTRenderer 2020-05-06 22:20:21 -07:00
Cameron Gutman
51c4ecc879 Revert "Partially unrevert 05e82c24 for macOS which still needs it"
This reverts commit 080421f2fb.
2020-05-06 21:41:57 -07:00
Cameron Gutman
080421f2fb Partially unrevert 05e82c24 for macOS which still needs it 2020-05-06 21:18:23 -07:00
Cameron Gutman
8cc61ca8b8 Use SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH to get click events on focus gain 2020-05-06 20:43:41 -07:00
Cameron Gutman
400754c5b3 Revert "Pass through focus-gain clicks to the host in absolute mouse mode"
This reverts commit 05e82c24f8.
2020-05-06 20:04:07 -07:00
Cameron Gutman
05e82c24f8 Pass through focus-gain clicks to the host in absolute mouse mode 2020-05-06 18:58:43 -07:00
Cameron Gutman
97c15c7876 Ensure the Info.plist is included for builds in the IDE
It is required for SDL_WINDOW_ALLOW_HIGHDPI to work
2020-05-04 20:25:19 -07:00
Cameron Gutman
36e7cc8e89 Use a smaller MaximumUncompressedMediaSize for unofficial builds to speed up compression a bit 2020-05-04 18:32:38 -07:00
Cameron Gutman
ad2ce4de53 Update moonlight-common-c 2020-05-04 18:29:55 -07:00